summaryrefslogtreecommitdiffstats
path: root/printing
diff options
context:
space:
mode:
authorhalcanary <halcanary@google.com>2016-03-18 07:32:39 -0700
committerCommit bot <commit-bot@chromium.org>2016-03-18 14:33:46 +0000
commit0aeeb333aba5c8cc43fe0b9b8a8469f81d9cde7a (patch)
treeb44b64a74297f839428ff96e0bacc7dbccb54071 /printing
parentb25b27f6254eba94ef2e7dcb39b8180fe3834a46 (diff)
downloadchromium_src-0aeeb333aba5c8cc43fe0b9b8a8469f81d9cde7a.zip
chromium_src-0aeeb333aba5c8cc43fe0b9b8a8469f81d9cde7a.tar.gz
chromium_src-0aeeb333aba5c8cc43fe0b9b8a8469f81d9cde7a.tar.bz2
pdf_metafile_skia: set metadata before drawing to pdf
Motivation: while experimenting with serializing images immediately, we would like to keep serializing metadata first. Review URL: https://codereview.chromium.org/1778133005 Cr-Commit-Position: refs/heads/master@{#381959}
Diffstat (limited to 'printing')
-rw-r--r--printing/pdf_metafile_skia.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/printing/pdf_metafile_skia.cc b/printing/pdf_metafile_skia.cc
index 0fade56..6ba04c7 100644
--- a/printing/pdf_metafile_skia.cc
+++ b/printing/pdf_metafile_skia.cc
@@ -159,14 +159,6 @@ bool PdfMetafileSkia::FinishDocument() {
SkDynamicMemoryWStream pdf_stream;
skia::RefPtr<SkDocument> pdf_doc =
skia::AdoptRef(SkDocument::CreatePDF(&pdf_stream));
- for (const auto& page : data_->pages_) {
- SkCanvas* canvas = pdf_doc->beginPage(
- page.page_size_.width(), page.page_size_.height(), &page.content_area_);
- // No need to save/restore, since this canvas is not reused after endPage()
- canvas->scale(page.scale_factor_, page.scale_factor_);
- canvas->drawPicture(page.content_.get());
- pdf_doc->endPage();
- }
const std::string& user_agent = GetAgent();
SkDocument::Attribute info[] = {
SkDocument::Attribute(SkString("Creator"),
@@ -176,6 +168,14 @@ bool PdfMetafileSkia::FinishDocument() {
};
SkTime::DateTime now = TimeToSkTime(base::Time::Now());
pdf_doc->setMetadata(info, SK_ARRAY_COUNT(info), &now, &now);
+ for (const auto& page : data_->pages_) {
+ SkCanvas* canvas = pdf_doc->beginPage(
+ page.page_size_.width(), page.page_size_.height(), &page.content_area_);
+ // No need to save/restore, since this canvas is not reused after endPage()
+ canvas->scale(page.scale_factor_, page.scale_factor_);
+ canvas->drawPicture(page.content_.get());
+ pdf_doc->endPage();
+ }
if (!pdf_doc->close())
return false;