Object stastistics (first part)

This commit is contained in:
Jakub Melka
2021-06-18 19:06:11 +02:00
parent 7264a45e30
commit b8464ed4fa
18 changed files with 530 additions and 26 deletions

View File

@ -519,6 +519,28 @@ qint64 PDFDocumentWriter::getDocumentFileSize(const PDFDocument* document)
return -1;
}
qint64 PDFDocumentWriter::getObjectSize(const PDFDocument* document, PDFObjectReference reference)
{
const PDFObject& object = document->getObjectByReference(reference);
if (object.isNull())
{
return 0;
}
PDFSizeCounterIODevice device(nullptr);
device.open(QIODevice::WriteOnly);
PDFWriteObjectVisitor visitor(&device);
writeObjectHeader(&device, reference);
object.accept(&visitor);
writeObjectFooter(&device);
device.close();
return device.pos();
}
QByteArray PDFDocumentWriter::getSerializedObject(const PDFObject& object)
{
QBuffer buffer;