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

Side by Side Diff: chrome/utility/printing_handler.cc

Issue 2970473002: Add generic text printing (Closed)
Patch Set: Address comment Created 3 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/utility/printing_handler.h" 5 #include "chrome/utility/printing_handler.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/files/file_util.h" 10 #include "base/files/file_util.h"
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 return handled; 84 return handled;
85 } 85 }
86 86
87 #if defined(OS_WIN) 87 #if defined(OS_WIN)
88 void PrintingHandler::OnRenderPDFPagesToMetafile( 88 void PrintingHandler::OnRenderPDFPagesToMetafile(
89 IPC::PlatformFileForTransit pdf_transit, 89 IPC::PlatformFileForTransit pdf_transit,
90 const PdfRenderSettings& settings) { 90 const PdfRenderSettings& settings) {
91 pdf_rendering_settings_ = settings; 91 pdf_rendering_settings_ = settings;
92 chrome_pdf::SetPDFUseGDIPrinting(pdf_rendering_settings_.mode == 92 chrome_pdf::SetPDFUseGDIPrinting(pdf_rendering_settings_.mode ==
93 PdfRenderSettings::Mode::GDI_TEXT); 93 PdfRenderSettings::Mode::GDI_TEXT);
94 int postscript_level; 94 int printing_mode;
95 switch (pdf_rendering_settings_.mode) { 95 switch (pdf_rendering_settings_.mode) {
96 case PdfRenderSettings::Mode::TEXTONLY:
97 printing_mode = chrome_pdf::PrintingMode::TEXTONLY;
98 break;
96 case PdfRenderSettings::Mode::POSTSCRIPT_LEVEL2: 99 case PdfRenderSettings::Mode::POSTSCRIPT_LEVEL2:
97 postscript_level = 2; 100 printing_mode = chrome_pdf::PrintingMode::POSTSCRIPT2;
98 break; 101 break;
99 case PdfRenderSettings::Mode::POSTSCRIPT_LEVEL3: 102 case PdfRenderSettings::Mode::POSTSCRIPT_LEVEL3:
100 postscript_level = 3; 103 printing_mode = chrome_pdf::PrintingMode::POSTSCRIPT3;
101 break; 104 break;
102 default: 105 default:
103 postscript_level = 0; // Not using postscript. 106 // Not using postscript or text only.
107 printing_mode = chrome_pdf::PrintingMode::EMF;
104 } 108 }
105 chrome_pdf::SetPDFPostscriptPrintingLevel(postscript_level); 109 chrome_pdf::SetPDFUsePrintMode(printing_mode);
106 110
107 base::File pdf_file = IPC::PlatformFileForTransitToFile(pdf_transit); 111 base::File pdf_file = IPC::PlatformFileForTransitToFile(pdf_transit);
108 int page_count = LoadPDF(std::move(pdf_file)); 112 int page_count = LoadPDF(std::move(pdf_file));
109 Send( 113 Send(
110 new ChromeUtilityHostMsg_RenderPDFPagesToMetafiles_PageCount(page_count)); 114 new ChromeUtilityHostMsg_RenderPDFPagesToMetafiles_PageCount(page_count));
111 } 115 }
112 116
113 void PrintingHandler::OnRenderPDFPagesToMetafileGetPage( 117 void PrintingHandler::OnRenderPDFPagesToMetafileGetPage(
114 int page_number, 118 int page_number,
115 IPC::PlatformFileForTransit output_file) { 119 IPC::PlatformFileForTransit output_file) {
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after
335 printer_name, printer_info)); 339 printer_name, printer_info));
336 } else { 340 } else {
337 Send(new ChromeUtilityHostMsg_GetPrinterSemanticCapsAndDefaults_Failed( 341 Send(new ChromeUtilityHostMsg_GetPrinterSemanticCapsAndDefaults_Failed(
338 printer_name)); 342 printer_name));
339 } 343 }
340 ReleaseProcess(); 344 ReleaseProcess();
341 } 345 }
342 #endif // BUILDFLAG(ENABLE_PRINT_PREVIEW) 346 #endif // BUILDFLAG(ENABLE_PRINT_PREVIEW)
343 347
344 } // namespace printing 348 } // namespace printing
OLDNEW
« no previous file with comments | « chrome/browser/printing/print_view_manager_base.cc ('k') | pdf/pdf.h » ('j') | pdf/pdf.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698