Commit 9f60a864a0bade2c1aaab54906c290614609fded

Authored by Jay Berkenbilt
1 parent f08ce00e

Combine PCLm header into writeHeader

include/qpdf/QPDFWriter.hh
@@ -431,7 +431,6 @@ class QPDFWriter @@ -431,7 +431,6 @@ class QPDFWriter
431 void enqueuePart(std::vector<QPDFObjectHandle>& part); 431 void enqueuePart(std::vector<QPDFObjectHandle>& part);
432 void writeEncryptionDictionary(); 432 void writeEncryptionDictionary();
433 void writeHeader(); 433 void writeHeader();
434 - void writePCLmHeader();  
435 void writeHintStream(int hint_id); 434 void writeHintStream(int hint_id);
436 qpdf_offset_t writeXRefTable( 435 qpdf_offset_t writeXRefTable(
437 trailer_e which, int first, int last, int size); 436 trailer_e which, int first, int last, int size);
libqpdf/QPDFWriter.cc
@@ -2514,9 +2514,17 @@ QPDFWriter::writeHeader() @@ -2514,9 +2514,17 @@ QPDFWriter::writeHeader()
2514 2514
2515 writeString("%PDF-"); 2515 writeString("%PDF-");
2516 writeString(this->final_pdf_version); 2516 writeString(this->final_pdf_version);
2517 - // This string of binary characters would not be valid UTF-8, so  
2518 - // it really should be treated as binary.  
2519 - writeString("\n%\xbf\xf7\xa2\xfe\n"); 2517 + if (this->pclm)
  2518 + {
  2519 + // PCLm version
  2520 + writeString("\n%PCLm 1.0\n");
  2521 + }
  2522 + else
  2523 + {
  2524 + // This string of binary characters would not be valid UTF-8, so
  2525 + // it really should be treated as binary.
  2526 + writeString("\n%\xbf\xf7\xa2\xfe\n");
  2527 + }
2520 writeStringQDF("%QDF-1.0\n\n"); 2528 writeStringQDF("%QDF-1.0\n\n");
2521 2529
2522 // Note: do not write extra header text here. Linearized PDFs 2530 // Note: do not write extra header text here. Linearized PDFs
@@ -2527,25 +2535,6 @@ QPDFWriter::writeHeader() @@ -2527,25 +2535,6 @@ QPDFWriter::writeHeader()
2527 } 2535 }
2528 2536
2529 void 2537 void
2530 -QPDFWriter::writePCLmHeader()  
2531 -{  
2532 - setMinimumPDFVersion(pdf.getPDFVersion(), pdf.getExtensionLevel());  
2533 - this->final_pdf_version = this->min_pdf_version;  
2534 - this->final_extension_level = this->min_extension_level;  
2535 - if (! this->forced_pdf_version.empty())  
2536 - {  
2537 - this->final_pdf_version = this->forced_pdf_version;  
2538 - this->final_extension_level = this->forced_extension_level;  
2539 - }  
2540 -  
2541 - writeString("%PDF-");  
2542 - writeString(this->final_pdf_version);  
2543 - // PCLm version  
2544 - writeString("\n%PCLm 1.0\n");  
2545 - writeStringQDF("%QDF-1.0\n\n");  
2546 -}  
2547 -  
2548 -void  
2549 QPDFWriter::writeHintStream(int hint_id) 2538 QPDFWriter::writeHintStream(int hint_id)
2550 { 2539 {
2551 PointerHolder<Buffer> hint_buffer; 2540 PointerHolder<Buffer> hint_buffer;
@@ -3260,7 +3249,7 @@ QPDFWriter::writePCLm() @@ -3260,7 +3249,7 @@ QPDFWriter::writePCLm()
3260 3249
3261 // Start writing 3250 // Start writing
3262 3251
3263 - writePCLmHeader(); 3252 + writeHeader();
3264 writeString(this->extra_header_text); 3253 writeString(this->extra_header_text);
3265 3254
3266 // Image transform stream content for page strip images. 3255 // Image transform stream content for page strip images.