summaryrefslogtreecommitdiffstats
path: root/printing/pdf_metafile_mac.h
diff options
context:
space:
mode:
Diffstat (limited to 'printing/pdf_metafile_mac.h')
-rw-r--r--printing/pdf_metafile_mac.h45
1 files changed, 19 insertions, 26 deletions
diff --git a/printing/pdf_metafile_mac.h b/printing/pdf_metafile_mac.h
index c5669a8..557b008 100644
--- a/printing/pdf_metafile_mac.h
+++ b/printing/pdf_metafile_mac.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2009 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,9 +9,7 @@
#include <CoreFoundation/CoreFoundation.h>
#include "base/basictypes.h"
-#include "base/gtest_prod_util.h"
#include "base/mac/scoped_cftyperef.h"
-#include "printing/native_metafile_mac.h"
namespace gfx {
class Rect;
@@ -23,31 +21,36 @@ class FilePath;
namespace printing {
// This class creates a graphics context that renders into a PDF data stream.
-class PdfMetafile : public NativeMetafile {
+class PdfMetafile {
public:
+ // To create PDF data, callers should also call Init() to set up the
+ // rendering context.
+ // To create a metafile from existing Data, callers should also call
+ // Init(const void*, uint32).
+ PdfMetafile();
- virtual ~PdfMetafile();
+ ~PdfMetafile();
// Initializes a new metafile, and returns a drawing context for rendering
// into the PDF. Returns NULL on failure.
// Note: The returned context *must not be retained* past Close(). If it is,
// the data returned from GetData will not be valid PDF data.
- virtual CGContextRef Init();
+ CGContextRef Init();
// Initializes a copy of metafile from PDF data. Returns true on success.
- virtual bool Init(const void* src_buffer, uint32 src_buffer_size);
+ bool Init(const void* src_buffer, uint32 src_buffer_size);
// Prepares a new pdf page at specified |content_origin| with the given
// |page_size| and a |scale_factor| to use for the drawing.
- virtual CGContextRef StartPage(const gfx::Size& page_size,
+ CGContextRef StartPage(const gfx::Size& page_size,
const gfx::Point& content_origin,
const float& scale_factor);
// Closes the current page.
- virtual void FinishPage();
+ void FinishPage();
// Closes the PDF file; no further rendering is allowed.
- virtual void Close();
+ void Close();
// Renders the given page into |rect| in the given context.
// Pages use a 1-based index. The rendering uses the following arguments
@@ -64,39 +67,29 @@ class PdfMetafile : public NativeMetafile {
// |center_vertically| specifies whether the final image (after any scaling
// is done) should be centered vertically within the given |rect|.
// Note that all scaling preserves the original aspect ratio of the page.
- virtual bool RenderPage(unsigned int page_number, CGContextRef context,
+ bool RenderPage(unsigned int page_number, CGContextRef context,
const CGRect rect, bool shrink_to_fit, bool stretch_to_fit,
bool center_horizontally, bool center_vertically) const;
- virtual unsigned int GetPageCount() const;
+ unsigned int GetPageCount() const;
// Returns the bounds of the given page.
// Pages use a 1-based index.
- virtual gfx::Rect GetPageBounds(unsigned int page_number) const;
+ gfx::Rect GetPageBounds(unsigned int page_number) const;
// Returns the size of the underlying PDF data. Only valid after Close() has
// been called.
- virtual uint32 GetDataSize() const;
+ uint32 GetDataSize() const;
// Copies the first |dst_buffer_size| bytes of the PDF data into |dst_buffer|.
// Only valid after Close() has been called.
// Returns true if the copy succeeds.
- virtual bool GetData(void* dst_buffer, uint32 dst_buffer_size) const;
+ bool GetData(void* dst_buffer, uint32 dst_buffer_size) const;
// Saves the raw PDF data to the given file. For testing only.
// Returns true if writing succeeded.
- virtual bool SaveTo(const FilePath& file_path) const;
-
- protected:
- // To create PDF data, callers should call Init() to set up the rendering
- // context.
- // To create a metafile from existing data, callers should call
- // Init(const void*, uint32).
- PdfMetafile();
+ bool SaveTo(const FilePath& file_path) const;
private:
- friend class NativeMetafileFactory;
- FRIEND_TEST_ALL_PREFIXES(PdfMetafileTest, Pdf);
-
// Returns a CGPDFDocumentRef version of pdf_data_.
CGPDFDocumentRef GetPDFDocument() const;