summaryrefslogtreecommitdiffstats
path: root/printing/emf_win.cc
Commit message (Collapse)AuthorAgeFilesLines
* PrintPreview: Remove |page_number| from StartPageForVectorCanvas function ↵kmadhusu@chromium.org2011-08-021-2/+1
| | | | | | | | | | | | | and |page_slot| from PrintMsg_PrintPage_Params. We will not add preview pages to the complete metafile in out of order fashion. BUG=none TEST=print preview works after code changes. Review URL: http://codereview.chromium.org/7549001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95092 0039d316-1c4b-4281-b951-d872f2087c98
* Make Metafile::StartPageForVectorCanvas take the page number as an argument.vandebo@chromium.org2011-07-231-1/+2
| | | | | | | | | | | | | This will let us add pages to a metafile out of order for print preview. Also, make PdfMetafileSkia::GetMetafileForCurrentPage use draft mode, now that it's available. BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/7481019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93763 0039d316-1c4b-4281-b951-d872f2087c98
* Stop using deprecated factory API for SkDevicereed@google.com2011-07-051-3/+3
| | | | | | | Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=91504 Review URL: http://codereview.chromium.org/7273013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91508 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 91504 - Stop using deprecated factory API for SkDevicereed@google.com2011-07-051-3/+3
| | | | | | | | | Review URL: http://codereview.chromium.org/7273013 TBR=reed@google.com Review URL: http://codereview.chromium.org/7193040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91505 0039d316-1c4b-4281-b951-d872f2087c98
* Stop using deprecated factory API for SkDevicereed@google.com2011-07-051-3/+3
| | | | | | Review URL: http://codereview.chromium.org/7273013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91504 0039d316-1c4b-4281-b951-d872f2087c98
* This change implements a first pass in the effort to remove the dependency ↵twiz@chromium.org2011-05-261-1/+1
| | | | | | | | | | | | | | of PlatformDevice within Chrome. The Skia library now provides multiple back-ends for the SkDevice class, so PlatformDevice's inheritance of SkDevice, and the assumption of instances of PlatformDevice limits the use of these new back-ends. A new set of helper functions is provided for the PlatformDevice entry points. Upon construction of a PlatformDevice, a pointer to the interface is cached in the parent SkDevice's SkMetaData. The new helper functions forward calls to the interface cached in the metadata. BUG=NONE TEST=NONE Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=86625 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=86625 Review URL: http://codereview.chromium.org/7019013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86823 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 86625 - This change implements a first pass in the effort to remove ↵vandebo@chromium.org2011-05-251-1/+1
| | | | | | | | | | | | | | | the dependency of PlatformDevice within Chrome. The Skia library now provides multiple back-ends for the SkDevice class, so PlatformDevice's inheritance of SkDevice, and the assumption of instances of PlatformDevice limits the use of these new back-ends. A new set of helper functions is provided for the PlatformDevice entry points. Upon construction of a PlatformDevice, a pointer to the interface is cached in the parent SkDevice's SkMetaData. The new helper functions forward calls to the interface cached in the metadata. BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/7019013 TBR=twiz@chromium.org Review URL: http://codereview.chromium.org/6987019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86629 0039d316-1c4b-4281-b951-d872f2087c98
* This change implements a first pass in the effort to remove the dependency ↵twiz@chromium.org2011-05-251-1/+1
| | | | | | | | | | | | of PlatformDevice within Chrome. The Skia library now provides multiple back-ends for the SkDevice class, so PlatformDevice's inheritance of SkDevice, and the assumption of instances of PlatformDevice limits the use of these new back-ends. A new set of helper functions is provided for the PlatformDevice entry points. Upon construction of a PlatformDevice, a pointer to the interface is cached in the parent SkDevice's SkMetaData. The new helper functions forward calls to the interface cached in the metadata. BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/7019013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86625 0039d316-1c4b-4281-b951-d872f2087c98
* Fix print preview clipping issues due to scaling.ctguil@chromium.org2011-04-301-3/+3
| | | | | | | | BUG=79941 TEST=none Review URL: http://codereview.chromium.org/6879098 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83657 0039d316-1c4b-4281-b951-d872f2087c98
* Fix scaling issue in windows print preview.ctguil@chromium.org2011-04-201-2/+1
| | | | | | | | | | | * Use the full page size for pdf print preview. * Scale device by the webkit page shrink for pdf preview. BUG=79518 TEST=none Review URL: http://codereview.chromium.org/6871038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82259 0039d316-1c4b-4281-b951-d872f2087c98
* Rename some printing classes and minor cleanups.vandebo@chromium.org2011-04-041-4/+4
| | | | | | | | | | | | | | | | Rename: PdfPsMetafile -> PdfMetafileCairo PdfMetafile -> PdfMetafileCg (Mac) VectorPlatformDevice -> VectorPlatformDeviceEmf/Cairo (Windows/Linux varients) This is in preparation for VectorPlatformDeviceSkia. BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6783036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80390 0039d316-1c4b-4281-b951-d872f2087c98
* Added a DCHECK to validate the metafile page count while handling alpha ↵kmadhusu@chromium.org2011-04-011-1/+2
| | | | | | | | | | | | | blend transparency. Added a member variable |page_count_| in emf_win.h to track the pages count. BUG=none TEST=windows printing works after code changes. Review URL: http://codereview.chromium.org/6790002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80167 0039d316-1c4b-4281-b951-d872f2087c98
* Move some files from base to base/memory.levin@chromium.org2011-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | raw_scoped_refptr_mismatch_checker.h ref_counted.cc ref_counted.h ref_counted_memory.cc ref_counted_memory.h ref_counted_unittest.cc scoped_callback_factory.h scoped_comptr_win.h scoped_handle.h scoped_native_library.cc scoped_native_library.h scoped_native_library_unittest.cc scoped_nsobject.h scoped_open_process.h scoped_ptr.h scoped_ptr_unittest.cc scoped_temp_dir.cc scoped_temp_dir.h scoped_temp_dir_unittest.cc scoped_vector.h singleton.h singleton_objc.h singleton_unittest.cc linked_ptr.h linked_ptr_unittest.cc weak_ptr.cc weak_ptr.h weak_ptr_unittest.cc BUG=None TEST=Compile Review URL: http://codereview.chromium.org/6714032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79524 0039d316-1c4b-4281-b951-d872f2087c98
* Removing GetData helper from NativeMetafile interface and also renaming it ↵dpapad@chromium.org2011-03-241-2/+2
| | | | | | | | | | | | | to GetDataAsVector to avoid overloading. Also making it private since it is only used internally. BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6713081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79343 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup NativeMetafile (win) interface and EMF class.vandebo@chromium.org2011-03-221-26/+16
| | | | | | | | | | | | | | | | | - Rename CreateDc to Init() and remove unused argument (all non-test calls were CreateDc(NULL, NULL). [This matches cross platform interface.] - Remove CreateFileBackedDc from the NativeMetafile interface and make InitToFile() in the EMF class. - Remove CreateFromFile from the NativeMetafile interface and make it InitFromFile() in the EMF class. - Move the CloseEmf method into the destructor, making the Emf class a use once class (matches actual use). BUG=NONE TEST=NONE Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78666 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78669 Review URL: http://codereview.chromium.org/6695013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78969 0039d316-1c4b-4281-b951-d872f2087c98
* Unfork VectorPlatformCanvas.vandebo@chromium.org2011-03-211-1/+13
| | | | | | | | | | | | | | | | | | | | Unfork VectorPlatformCanvas by making NativeMetafile know how to create an appropriate VectorPlatformDevice. This will also be useful when we have multiple NativeMetafile implemenations (each requiring a different VectorPlatformDevices). BUG=NONE TEST=NONE Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78662 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=78663 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78812 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=78815 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78859 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=78860 Review URL: http://codereview.chromium.org/6665046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78935 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 78859 - Unfork VectorPlatformCanvas.vandebo@chromium.org2011-03-211-13/+1
| | | | | | | | | | | | | | | | | | | | Unfork VectorPlatformCanvas by making NativeMetafile know how to create an appropriate VectorPlatformDevice. This will also be useful when we have multiple NativeMetafile implemenations (each requiring a different VectorPlatformDevices). BUG=NONE TEST=NONE Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78662 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=78663 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78812 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=78815 Review URL: http://codereview.chromium.org/6665046 TBR=vandebo@chromium.org Review URL: http://codereview.chromium.org/6711067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78860 0039d316-1c4b-4281-b951-d872f2087c98
* Unfork VectorPlatformCanvas.vandebo@chromium.org2011-03-211-1/+13
| | | | | | | | | | | | | | | | | Unfork VectorPlatformCanvas by making NativeMetafile know how to create an appropriate VectorPlatformDevice. This will also be useful when we have multiple NativeMetafile implemenations (each requiring a different VectorPlatformDevices). BUG=NONE TEST=NONE Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78662 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=78663 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78812 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=78815 Review URL: http://codereview.chromium.org/6665046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78859 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 78812 - Unfork VectorPlatformCanvas.vandebo@chromium.org2011-03-191-13/+1
| | | | | | | | | | | | | | | | | Unfork VectorPlatformCanvas by making NativeMetafile know how to create an appropriate VectorPlatformDevice. This will also be useful when we have multiple NativeMetafile implemenations (each requiring a different VectorPlatformDevices). BUG=NONE TEST=NONE Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78662 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=78663 Review URL: http://codereview.chromium.org/6665046 TBR=vandebo@chromium.org Review URL: http://codereview.chromium.org/6708046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78815 0039d316-1c4b-4281-b951-d872f2087c98
* Unfork VectorPlatformCanvas.vandebo@chromium.org2011-03-191-1/+13
| | | | | | | | | | | | | | Unfork VectorPlatformCanvas by making NativeMetafile know how to create an appropriate VectorPlatformDevice. This will also be useful when we have multiple NativeMetafile implemenations (each requiring a different VectorPlatformDevices). BUG=NONE TEST=NONE Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78662 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=78663 Review URL: http://codereview.chromium.org/6665046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78812 0039d316-1c4b-4281-b951-d872f2087c98
* Renaming NativeMetafile related methods to more appropriate names.dpapad@chromium.org2011-03-191-1/+1
| | | | | | | | | | | | 1) Renaming Close() to FinishDocument() 2) Renaming NativeMetafileFactory::CreateMetafile() to Create(), since the name of the class already implies what is being created BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6674037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78788 0039d316-1c4b-4281-b951-d872f2087c98
* Unifying StartPage across all platformsdpapad@chromium.org2011-03-181-1/+6
| | | | | | | | | | | Since there is already a getter method for retrieving the context, there is no reason for StartPage to return it. Also the parameter list can be uniform across all platforms. Some arguments are unused in order to achieve this. BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6667069 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78717 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 78666 - Cleanup NativeMetafile (win) interface and EMF class.vandebo@chromium.org2011-03-181-16/+26
| | | | | | | | | | | | | | | | | - Rename CreateDc to Init() and remove unused argument (all non-test calls were CreateDc(NULL, NULL). [This matches cross platform interface.] - Remove CreateFileBackedDc from the NativeMetafile interface and make InitToFile() in the EMF class. - Remove CreateFromFile from the NativeMetafile interface and make it InitFromFile() in the EMF class. - Move the CloseEmf method into the destructor, making the Emf class a use once class (matches actual use). BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6695013 TBR=vandebo@chromium.org Review URL: http://codereview.chromium.org/6712030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78669 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup NativeMetafile (win) interface and EMF class.vandebo@chromium.org2011-03-181-26/+16
| | | | | | | | | | | | | | - Rename CreateDc to Init() and remove unused argument (all non-test calls were CreateDc(NULL, NULL). [This matches cross platform interface.] - Remove CreateFileBackedDc from the NativeMetafile interface and make InitToFile() in the EMF class. - Remove CreateFromFile from the NativeMetafile interface and make it InitFromFile() in the EMF class. - Move the CloseEmf method into the destructor, making the Emf class a use once class (matches actual use). BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6695013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78666 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 78662 - Unfork VectorPlatformCanvas.vandebo@chromium.org2011-03-181-13/+0
| | | | | | | | | | | | | | Unfork VectorPlatformCanvas by making NativeMetafile know how to create an appropriate VectorPlatformDevice. This will also be useful when we have multiple NativeMetafile implemenations (each requiring a different VectorPlatformDevices). BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6665046 TBR=vandebo@chromium.org Review URL: http://codereview.chromium.org/6713029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78663 0039d316-1c4b-4281-b951-d872f2087c98
* Unfork VectorPlatformCanvas.vandebo@chromium.org2011-03-181-0/+13
| | | | | | | | | | | Unfork VectorPlatformCanvas by making NativeMetafile know how to create an appropriate VectorPlatformDevice. This will also be useful when we have multiple NativeMetafile implemenations (each requiring a different VectorPlatformDevices). BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6665046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78662 0039d316-1c4b-4281-b951-d872f2087c98
* Stop overloading Init() in NativeMetafile.vandebo@chromium.org2011-03-171-2/+2
| | | | | | | | | BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6709009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78625 0039d316-1c4b-4281-b951-d872f2087c98
* Unifying NativeMetafile class interface (as much as possible) for Linux, ↵dpapad@chromium.org2011-03-161-8/+8
| | | | | | | | | | | Mac, Win BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6611032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78320 0039d316-1c4b-4281-b951-d872f2087c98
* Change includes of gfx/* to ui/gfx/*sail@chromium.org2011-02-051-4/+4
| | | | | | | | | BUG=71063 TEST=compiled Review URL: http://codereview.chromium.org/6312156 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73890 0039d316-1c4b-4281-b951-d872f2087c98
* When printing a page containing alpha blending on a printer which doesn't ↵senorblanco@chromium.org2011-01-121-0/+2
| | | | | | | | | | | | | support alpha blending, post-process the metafile to replace the AlphaBlend calls with BitBlts from a software-composited rendering of the page so far. BUG=7434 TEST=see bug Review URL: http://codereview.chromium.org/5362002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71177 0039d316-1c4b-4281-b951-d872f2087c98
* Reset AssertHandler in IPCMessageTest.Metafile.sanjeevr@chromium.org2010-11-121-1/+0
| | | | | | | | | BUG=55177 TEST=Unit tests Review URL: http://codereview.chromium.org/4660011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65972 0039d316-1c4b-4281-b951-d872f2087c98
* Move Stats, histograms, and field trial into a metrics subdirectory of base andbrettw@chromium.org2010-10-141-1/+1
| | | | | | | | | put them in the base namespace. TEST=it compiles BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62510 0039d316-1c4b-4281-b951-d872f2087c98
* Printing: Standardize on Metafile::Init, removing Emf::CreateFromData in thejhawkins@chromium.org2010-10-071-8/+8
| | | | | | | | | | | process and any ifdefs needed for this. BUG=none TEST=none Review URL: http://codereview.chromium.org/3595016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61834 0039d316-1c4b-4281-b951-d872f2087c98
* Added methods to create and read from file-backed metafiles to the Windows ↵sanjeevr@chromium.org2010-09-291-0/+19
| | | | | | | | | | | Emf class. BUG=None TEST=Unittests Review URL: http://codereview.chromium.org/3538003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60994 0039d316-1c4b-4281-b951-d872f2087c98
* Removing emf record constructor that is not used.finnur@chromium.org2010-08-311-4/+1
| | | | | | | | | | BUG=None TEST=None CID=5008 Review URL: http://codereview.chromium.org/3106005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57997 0039d316-1c4b-4281-b951-d872f2087c98
* Added StartPage and EndPage methods to the Emf class because the GDI ↵sanjeevr@chromium.org2010-07-121-0/+60
| | | | | | | | | | | StartPage and EndPage APIs do not work in a metafile DC. We write custom GDICOMMENT records to designate a StartPage and EndPage. BUG=None TEST=Unit-tests provided. Review URL: http://codereview.chromium.org/2947006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52084 0039d316-1c4b-4281-b951-d872f2087c98
* Move more files to toplevel gfx.ben@chromium.org2010-03-191-1/+1
| | | | | | | | | TBR=darin BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42071 0039d316-1c4b-4281-b951-d872f2087c98
* Move image codec stuff to toplevel gfx.ben@chromium.org2010-03-181-2/+2
| | | | | | | | | TBR=darin BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41911 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/gfx contents to gfx/ben@chromium.org2010-03-141-1/+1
| | | | | | | | | TBR=darin BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41559 0039d316-1c4b-4281-b951-d872f2087c98
* Changes made to the printing logic to allow plugins to participate in the ↵sanjeevr@chromium.org2010-03-121-1/+84
| | | | | | | | | | | | | browser's print workflow. These changes mainly involve allowing the plugin to specify whether it wants the browser to use overlays and also changes to the EMF code on Windows to decompress JPEGs/PNGs in the metafile. The related webkit change is https://bugs.webkit.org/show_bug.cgi?id=35550 BUG=None TEST=Test printing with new Pepper plugins that support custom printing. Review URL: http://codereview.chromium.org/745001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41400 0039d316-1c4b-4281-b951-d872f2087c98
* Make SharedMemory use uint32 instead of size_t. This removes the remaining ↵jam@chromium.org2010-02-161-8/+7
| | | | | | | | size_t's from the IPC code. Review URL: http://codereview.chromium.org/581001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39164 0039d316-1c4b-4281-b951-d872f2087c98
* Move Emf class to the printing library. Also creates a platform agnostic ↵sverrir@google.com2009-07-061-0/+317
NativeMetafile definition to ease platform porting. BUG=none TEST=none (No functional change) Review URL: http://codereview.chromium.org/149181 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19943 0039d316-1c4b-4281-b951-d872f2087c98