| Index: printing/image_mac.cc
|
| diff --git a/printing/image_mac.cc b/printing/image_mac.cc
|
| index 695cc4534aec2814d0179cc3ab848c518203760c..7edcfd7f0a07d9dbb464a90b2e8c890c6b7fcf03 100644
|
| --- a/printing/image_mac.cc
|
| +++ b/printing/image_mac.cc
|
| @@ -10,17 +10,13 @@
|
| #include <stdint.h>
|
|
|
| #include "base/mac/scoped_cftyperef.h"
|
| +#include "printing/metafile.h"
|
| #include "printing/pdf_metafile_cg_mac.h"
|
| #include "ui/gfx/geometry/rect.h"
|
|
|
| namespace printing {
|
|
|
| -bool Image::LoadMetafile(const void* metafile_src_buffer,
|
| - size_t metafile_src_buffer_size) {
|
| - PdfMetafileCg metafile;
|
| - if (!metafile.InitFromData(metafile_src_buffer, metafile_src_buffer_size)) {
|
| - return false;
|
| - }
|
| +bool Image::LoadMetafile(const Metafile& metafile) {
|
| // The printing system uses single-page metafiles (page indexes are 1-based).
|
| const unsigned int page_number = 1;
|
| gfx::Rect rect(metafile.GetPageBounds(page_number));
|
| @@ -48,7 +44,10 @@
|
| PdfMetafileCg::RenderPageParams params;
|
| params.shrink_to_fit = true;
|
| CGRect cg_rect = CGRectMake(0, 0, size_.width(), size_.height());
|
| - return metafile.OnRenderPage(page_number, bitmap_context, cg_rect, params);
|
| + std::vector<char> buffer;
|
| + return metafile.GetDataAsVector(&buffer) &&
|
| + PdfMetafileCg::RenderPage(buffer, page_number, bitmap_context, cg_rect,
|
| + params);
|
| }
|
|
|
| } // namespace printing
|
|
|