Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1172)

Unified Diff: printing/print_settings_conversion.cc

Issue 2795453002: Use DPI from Print Preview on Windows, handle non square (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: printing/print_settings_conversion.cc
diff --git a/printing/print_settings_conversion.cc b/printing/print_settings_conversion.cc
index 096cb900e03f0fcb3da5e9e02e757a0d7054b20e..b9bf5c4f99b39399d34aaa0b851929a921ad084a 100644
--- a/printing/print_settings_conversion.cc
+++ b/printing/print_settings_conversion.cc
@@ -178,6 +178,8 @@ bool PrintSettingsFromJobSettings(const base::DictionaryValue& job_settings,
int copies = 1;
int scale_factor = 100;
bool rasterize_pdf = false;
+ int dpi_horizontal = 0;
+ int dpi_vertical = 0;
if (!job_settings.GetBoolean(kSettingCollate, &collate) ||
!job_settings.GetInteger(kSettingCopies, &copies) ||
@@ -186,7 +188,9 @@ bool PrintSettingsFromJobSettings(const base::DictionaryValue& job_settings,
!job_settings.GetBoolean(kSettingLandscape, &landscape) ||
!job_settings.GetString(kSettingDeviceName, &device_name) ||
!job_settings.GetInteger(kSettingScaleFactor, &scale_factor) ||
- !job_settings.GetBoolean(kSettingRasterizePdf, &rasterize_pdf)) {
+ !job_settings.GetBoolean(kSettingRasterizePdf, &rasterize_pdf) ||
+ !job_settings.GetInteger(kSettingDpiHorizontal, &dpi_horizontal) ||
+ !job_settings.GetInteger(kSettingDpiVertical, &dpi_vertical)) {
return false;
}
@@ -198,6 +202,7 @@ bool PrintSettingsFromJobSettings(const base::DictionaryValue& job_settings,
settings->set_color(static_cast<ColorModel>(color));
settings->set_scale_factor(static_cast<double>(scale_factor) / 100.0);
settings->set_rasterize_pdf(rasterize_pdf);
+ settings->set_desired_dpi(dpi_horizontal, dpi_vertical);
#if defined(OS_WIN)
// Modifiable implies HTML and not other formats like PDF.
bool can_modify = false;
@@ -241,7 +246,6 @@ void PrintSettingsToJobSettingsDebug(const PrintSettings& settings,
// common public constants. So just serialize in "debug" section.
base::DictionaryValue* debug = new base::DictionaryValue;
job_settings->Set("debug", debug);
- debug->SetInteger("desiredDpi", settings.desired_dpi());
debug->SetInteger("dpi", settings.dpi());
debug->SetInteger("deviceUnitsPerInch", settings.device_units_per_inch());
debug->SetBoolean("support_alpha_blend", settings.should_print_backgrounds());

Powered by Google App Engine
This is Rietveld 408576698