Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7793)

Unified Diff: chrome/renderer/print_web_view_helper_mac.mm

Issue 6879098: Fix print preview clipping issues due to scaling. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Fix mac build. Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/renderer/print_web_view_helper_linux.cc ('k') | chrome/renderer/print_web_view_helper_win.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/renderer/print_web_view_helper_mac.mm
===================================================================
--- chrome/renderer/print_web_view_helper_mac.mm (revision 83537)
+++ chrome/renderer/print_web_view_helper_mac.mm (working copy)
@@ -27,9 +27,9 @@
int page_number = params.page_number;
// Render page for printing.
- gfx::Point origin(0.0f, 0.0f);
- RenderPage(params.params.printable_size, origin, scale_factor, page_number,
- frame, &metafile);
+ gfx::Rect content_size(params.params.printable_size);
+ RenderPage(params.params.printable_size, content_size, scale_factor,
+ page_number, frame, &metafile);
metafile.FinishDocument();
PrintHostMsg_DidPrintPage_Params page_params;
@@ -70,17 +70,19 @@
return false;
float scale_factor = frame->getPrintPageShrink(0);
- gfx::Point origin(printParams.margin_left, printParams.margin_top);
+ gfx::Rect content_size(printParams.margin_left, printParams.margin_top,
+ printParams.printable_size.width(),
+ printParams.printable_size.height());
if (params.pages.empty()) {
for (int i = 0; i < page_count; ++i) {
- RenderPage(printParams.page_size, origin, scale_factor, i, frame,
+ RenderPage(printParams.page_size, content_size, scale_factor, i, frame,
&metafile);
}
} else {
for (size_t i = 0; i < params.pages.size(); ++i) {
if (params.pages[i] >= page_count)
break;
- RenderPage(printParams.page_size, origin, scale_factor,
+ RenderPage(printParams.page_size, content_size, scale_factor,
static_cast<int>(params.pages[i]), frame, &metafile);
}
}
@@ -101,10 +103,10 @@
}
void PrintWebViewHelper::RenderPage(
- const gfx::Size& page_size, const gfx::Point& content_origin,
+ const gfx::Size& page_size, const gfx::Rect& content_size,
const float& scale_factor, int page_number, WebFrame* frame,
printing::Metafile* metafile) {
- bool success = metafile->StartPage(page_size, content_origin, scale_factor);
+ bool success = metafile->StartPage(page_size, content_size, scale_factor);
DCHECK(success);
// printPage can create autoreleased references to |context|. PDF contexts
« no previous file with comments | « chrome/renderer/print_web_view_helper_linux.cc ('k') | chrome/renderer/print_web_view_helper_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698