diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc index e80b75f..bfb5781 100644 --- a/libqpdf/QPDFWriter.cc +++ b/libqpdf/QPDFWriter.cc @@ -268,18 +268,16 @@ class QPDF::Writer } protected: - static void + void optimize( - QPDF& qpdf, QPDFWriter::ObjTable const& obj, std::function skip_stream_parameters) { - qpdf.optimize(obj, skip_stream_parameters); + pdf.optimize(obj, skip_stream_parameters); } - static void + void getLinearizedParts( - QPDF& qpdf, QPDFWriter::ObjTable const& obj, std::vector& part4, std::vector& part6, @@ -287,12 +285,11 @@ class QPDF::Writer std::vector& part8, std::vector& part9) { - qpdf.getLinearizedParts(obj, part4, part6, part7, part8, part9); + pdf.getLinearizedParts(obj, part4, part6, part7, part8, part9); } - static void + void generateHintStream( - QPDF& qpdf, QPDFWriter::NewObjTable const& new_obj, QPDFWriter::ObjTable const& obj, std::string& hint_stream, @@ -300,31 +297,31 @@ class QPDF::Writer int& O, bool compressed) { - qpdf.generateHintStream(new_obj, obj, hint_stream, S, O, compressed); + pdf.generateHintStream(new_obj, obj, hint_stream, S, O, compressed); } - static std::vector - getCompressibleObjGens(QPDF& qpdf) + std::vector + getCompressibleObjGens() { - return qpdf.getCompressibleObjVector(); + return pdf.getCompressibleObjVector(); } - static std::vector - getCompressibleObjSet(QPDF& qpdf) + std::vector + getCompressibleObjSet() { - return qpdf.getCompressibleObjSet(); + return pdf.getCompressibleObjSet(); } - static std::map const& - getXRefTable(QPDF& qpdf) + std::map const& + getXRefTable() { - return qpdf.getXRefTableInternal(); + return pdf.getXRefTableInternal(); } - static size_t - tableSize(QPDF& qpdf) + size_t + tableSize() { - return qpdf.tableSize(); + return pdf.tableSize(); } QPDF& pdf; @@ -2160,7 +2157,7 @@ QPDFWriter::Members::initializeSpecialStreams() void QPDFWriter::Members::preserveObjectStreams() { - auto const& xref = QPDF::Writer::getXRefTable(pdf); + auto const& xref = getXRefTable(); // Our object_to_object_stream map has to map ObjGen -> ObjGen since we may be generating object // streams out of old objects that have generation numbers greater than zero. However in an // existing PDF, all object stream objects and all objects in them must have generation 0 @@ -2185,7 +2182,7 @@ QPDFWriter::Members::preserveObjectStreams() if (iter->second.getType() == 2) { // Pdf contains object streams. obj.streams_empty = false; - auto eligible = QPDF::Writer::getCompressibleObjSet(pdf); + auto eligible = getCompressibleObjSet(); // The object pointed to by iter may be a previous generation, in which case it is // removed by getCompressibleObjSet. We need to restart the loop (while the object // table may contain multiple generations of an object). @@ -2216,7 +2213,7 @@ QPDFWriter::Members::generateObjectStreams() // This code doesn't do anything with /Extends. - std::vector eligible = QPDF::Writer::getCompressibleObjGens(pdf); + std::vector eligible = getCompressibleObjGens(); size_t n_object_streams = (eligible.size() + 99U) / 100U; initializeTables(2U * n_object_streams); @@ -2297,7 +2294,7 @@ QPDFWriter::Members::prepareFileForWrite() void QPDFWriter::Members::initializeTables(size_t extra) { - auto size = QIntC::to_size(QPDF::Writer::tableSize(pdf) + 100) + extra; + auto size = QIntC::to_size(tableSize() + 100) + extra; obj.resize(size); new_obj.resize(size); } @@ -2577,7 +2574,7 @@ QPDFWriter::Members::writeHintStream(int hint_id) int S = 0; int O = 0; bool compressed = compress_streams && !qdf_mode; - QPDF::Writer::generateHintStream(pdf, new_obj, obj, hint_buffer, S, O, compressed); + generateHintStream(new_obj, obj, hint_buffer, S, O, compressed); openObject(hint_id); setDataKey(hint_id); @@ -2786,14 +2783,14 @@ QPDFWriter::Members::writeLinearized() return result; }; - QPDF::Writer::optimize(pdf, obj, skip_stream_parameters); + optimize(obj, skip_stream_parameters); std::vector part4; std::vector part6; std::vector part7; std::vector part8; std::vector part9; - QPDF::Writer::getLinearizedParts(pdf, obj, part4, part6, part7, part8, part9); + getLinearizedParts(obj, part4, part6, part7, part8, part9); // Object number sequence: //