[email protected] | da00dc1 | 2011-10-06 21:39:26 | [diff] [blame] | 1 | // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 | // Use of this source code is governed by a BSD-style license that can be |
| 3 | // found in the LICENSE file. |
| 4 | |
| 5 | #ifndef PRINTING_PDF_RENDER_SETTINGS_H_ |
| 6 | #define PRINTING_PDF_RENDER_SETTINGS_H_ |
| 7 | |
tfarina | 4772a46 | 2017-03-25 02:26:18 | [diff] [blame] | 8 | #include "build/build_config.h" |
rbpotter | 58bc882e | 2017-02-01 03:44:24 | [diff] [blame] | 9 | #include "ui/gfx/geometry/point.h" |
tfarina | 3b0452d | 2014-12-31 15:20:09 | [diff] [blame] | 10 | #include "ui/gfx/geometry/rect.h" |
rbpotter | e33e8e62 | 2018-01-25 01:10:33 | [diff] [blame] | 11 | #include "ui/gfx/geometry/size.h" |
[email protected] | da00dc1 | 2011-10-06 21:39:26 | [diff] [blame] | 12 | |
| 13 | namespace printing { |
| 14 | |
tzik | 904f1945 | 2015-11-18 20:34:55 | [diff] [blame] | 15 | // Defining PDF rendering settings. |
thestig | 65bd2bc | 2016-11-16 22:38:48 | [diff] [blame] | 16 | struct PdfRenderSettings { |
rbpotter | c9251407 | 2017-01-26 23:06:36 | [diff] [blame] | 17 | enum Mode { |
| 18 | NORMAL = 0, |
| 19 | #if defined(OS_WIN) |
rbpotter | 0437a171 | 2017-07-14 21:23:24 | [diff] [blame] | 20 | TEXTONLY, |
rbpotter | c9251407 | 2017-01-26 23:06:36 | [diff] [blame] | 21 | GDI_TEXT, |
rbpotter | 58bc882e | 2017-02-01 03:44:24 | [diff] [blame] | 22 | POSTSCRIPT_LEVEL2, |
| 23 | POSTSCRIPT_LEVEL3, |
Lei Zhang | 92eadbb | 2020-05-13 22:32:36 | [diff] [blame] | 24 | EMF_WITH_REDUCED_RASTERIZATION, |
| 25 | EMF_WITH_REDUCED_RASTERIZATION_AND_GDI_TEXT, |
| 26 | LAST = EMF_WITH_REDUCED_RASTERIZATION_AND_GDI_TEXT |
rbpotter | c9251407 | 2017-01-26 23:06:36 | [diff] [blame] | 27 | #else |
Lei Zhang | 92eadbb | 2020-05-13 22:32:36 | [diff] [blame] | 28 | LAST = NORMAL |
rbpotter | c9251407 | 2017-01-26 23:06:36 | [diff] [blame] | 29 | #endif |
| 30 | }; |
| 31 | |
Lei Zhang | 5c50048 | 2018-04-12 07:34:16 | [diff] [blame] | 32 | PdfRenderSettings() |
| 33 | : autorotate(false), use_color(true), mode(Mode::NORMAL) {} |
thestig | c8800cb | 2017-03-30 23:20:10 | [diff] [blame] | 34 | PdfRenderSettings(const gfx::Rect& area, |
| 35 | const gfx::Point& offsets, |
rbpotter | e33e8e62 | 2018-01-25 01:10:33 | [diff] [blame] | 36 | const gfx::Size& dpi, |
rbpotter | 58bc882e | 2017-02-01 03:44:24 | [diff] [blame] | 37 | bool autorotate, |
Lei Zhang | 5c50048 | 2018-04-12 07:34:16 | [diff] [blame] | 38 | bool use_color, |
rbpotter | 58bc882e | 2017-02-01 03:44:24 | [diff] [blame] | 39 | Mode mode) |
| 40 | : area(area), |
| 41 | offsets(offsets), |
| 42 | dpi(dpi), |
| 43 | autorotate(autorotate), |
Lei Zhang | 5c50048 | 2018-04-12 07:34:16 | [diff] [blame] | 44 | use_color(use_color), |
rbpotter | 58bc882e | 2017-02-01 03:44:24 | [diff] [blame] | 45 | mode(mode) {} |
[email protected] | da00dc1 | 2011-10-06 21:39:26 | [diff] [blame] | 46 | ~PdfRenderSettings() {} |
| 47 | |
thestig | 65bd2bc | 2016-11-16 22:38:48 | [diff] [blame] | 48 | gfx::Rect area; |
rbpotter | 58bc882e | 2017-02-01 03:44:24 | [diff] [blame] | 49 | gfx::Point offsets; |
rbpotter | e33e8e62 | 2018-01-25 01:10:33 | [diff] [blame] | 50 | gfx::Size dpi; |
thestig | 65bd2bc | 2016-11-16 22:38:48 | [diff] [blame] | 51 | bool autorotate; |
Lei Zhang | 5c50048 | 2018-04-12 07:34:16 | [diff] [blame] | 52 | bool use_color; |
rbpotter | c9251407 | 2017-01-26 23:06:36 | [diff] [blame] | 53 | Mode mode; |
[email protected] | da00dc1 | 2011-10-06 21:39:26 | [diff] [blame] | 54 | }; |
| 55 | |
| 56 | } // namespace printing |
| 57 | |
[email protected] | da00dc1 | 2011-10-06 21:39:26 | [diff] [blame] | 58 | #endif // PRINTING_PDF_RENDER_SETTINGS_H_ |