Index: pdf/out_of_process_instance.cc |
diff --git a/pdf/out_of_process_instance.cc b/pdf/out_of_process_instance.cc |
index 6a3a5181974977defb78713bc667e9171dd491f1..7078091b8515fd35548c626e02cc2ce4a74a0624 100644 |
--- a/pdf/out_of_process_instance.cc |
+++ b/pdf/out_of_process_instance.cc |
@@ -976,6 +976,14 @@ void OutOfProcessInstance::OnPrint(int32_t) { |
pp::PDF::Print(this); |
} |
+void OutOfProcessInstance::SetPrintPresetOptionsFromDocument() { |
+ PP_PrintPresetOptions_Dev print_options; |
+ print_options.is_scaling_disabled = PP_FromBool(IsPrintScalingDisabled()); |
+ print_options.copies = engine_->GetCopiesToPrint(); |
+ |
+ pp::Printing_Dev::SetPrintPresetOptionsFromDocument(print_options); |
+} |
+ |
void OutOfProcessInstance::SubmitForm(const std::string& url, |
const void* data, |
int length) { |
@@ -1069,6 +1077,8 @@ void OutOfProcessInstance::DocumentLoadComplete(int page_count) { |
if (IsPrintPreview()) { |
AppendBlankPrintPreviewPages(); |
OnGeometryChanged(0, 0); |
+ // Set print preset options from pdf document. |
+ SetPrintPresetOptionsFromDocument(); |
} |
pp::VarDictionary message; |