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) |