Skip to content

Commit

Permalink
pdf_metafile_skia: set metadata before drawing to pdf
Browse files Browse the repository at this point in the history
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}
  • Loading branch information
HalCanary authored and Commit bot committed Mar 18, 2016
1 parent b25b27f commit 0aeeb33
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions printing/pdf_metafile_skia.cc
Original file line number Diff line number Diff line change
Expand Up @@ -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"),
Expand All @@ -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;

Expand Down

0 comments on commit 0aeeb33

Please sign in to comment.