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

Unified Diff: chrome/utility/utility_thread.cc

Issue 6695013: Cleanup NativeMetafile (win) interface and EMF class. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 9 years, 9 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/service/service_utility_process_host.cc ('k') | content/plugin/webplugin_delegate_stub.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/utility/utility_thread.cc
diff --git a/chrome/utility/utility_thread.cc b/chrome/utility/utility_thread.cc
index cca4b34e696590e980f51f5acb2b2bc913f97018..bf312f7cdcc0211d42c64d9f09ecfcf70acfddac 100644
--- a/chrome/utility/utility_thread.cc
+++ b/chrome/utility/utility_thread.cc
@@ -32,8 +32,7 @@
#include "app/win/iat_patch_function.h"
#include "base/scoped_ptr.h"
#include "base/win/scoped_handle.h"
-#include "printing/native_metafile_factory.h"
-#include "printing/native_metafile.h"
+#include "printing/emf_win.h"
#endif
namespace {
@@ -259,18 +258,17 @@ bool UtilityThread::RenderPDFToWinMetafile(
if (!get_info_proc(&buffer.front(), buffer.size(), &total_page_count, NULL))
return false;
- scoped_ptr<printing::NativeMetafile> metafile(
- printing::NativeMetafileFactory::Create());
- metafile->CreateFileBackedDc(NULL, NULL, metafile_path);
+ printing::Emf metafile;
+ metafile.InitToFile(metafile_path);
// Since we created the metafile using the screen DPI (but we actually want
// the PDF DLL to print using the passed in render_dpi, we apply the following
// transformation.
- SetGraphicsMode(metafile->context(), GM_ADVANCED);
+ SetGraphicsMode(metafile.context(), GM_ADVANCED);
XFORM xform = {0};
int screen_dpi = GetDeviceCaps(GetDC(NULL), LOGPIXELSX);
xform.eM11 = xform.eM22 =
static_cast<float>(screen_dpi) / static_cast<float>(render_dpi);
- ModifyWorldTransform(metafile->context(), &xform, MWT_LEFTMULTIPLY);
+ ModifyWorldTransform(metafile.context(), &xform, MWT_LEFTMULTIPLY);
bool ret = false;
std::vector<printing::PageRange>::const_iterator iter;
@@ -280,18 +278,18 @@ bool UtilityThread::RenderPDFToWinMetafile(
break;
// The underlying metafile is of type Emf and ignores the arguments passed
// to StartPage.
- metafile->StartPage(gfx::Size(), gfx::Point(), 1);
+ metafile.StartPage(gfx::Size(), gfx::Point(), 1);
if (render_proc(&buffer.front(), buffer.size(), page_number,
- metafile->context(), render_dpi, render_dpi,
+ metafile.context(), render_dpi, render_dpi,
render_area.x(), render_area.y(), render_area.width(),
render_area.height(), true, false, true, true))
if (*highest_rendered_page_number < page_number)
*highest_rendered_page_number = page_number;
ret = true;
- metafile->FinishPage();
+ metafile.FinishPage();
}
}
- metafile->FinishDocument();
+ metafile.FinishDocument();
return ret;
}
#endif // defined(OS_WIN)
« no previous file with comments | « chrome/service/service_utility_process_host.cc ('k') | content/plugin/webplugin_delegate_stub.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698