aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFWriter.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libqpdf/QPDFWriter.cc')
-rw-r--r--libqpdf/QPDFWriter.cc20
1 files changed, 6 insertions, 14 deletions
diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc
index 23beee32..e7fb9ad6 100644
--- a/libqpdf/QPDFWriter.cc
+++ b/libqpdf/QPDFWriter.cc
@@ -1241,9 +1241,7 @@ QPDFWriter::enqueueObject(QPDFObjectHandle object)
" another file.");
}
- if (this->m->qdf_mode &&
- object.isStream() && object.getDict().getKey("/Type").isName() &&
- (object.getDict().getKey("/Type").getName() == "/XRef"))
+ if (this->m->qdf_mode && object.isStreamOfType("/XRef"))
{
// As a special case, do not output any extraneous XRef
// streams in QDF mode. Doing so will confuse fix-qdf,
@@ -1474,8 +1472,7 @@ QPDFWriter::willFilterStream(QPDFObjectHandle stream,
QPDFObjGen old_og = stream.getObjGen();
QPDFObjectHandle stream_dict = stream.getDict();
- if (stream_dict.getKey("/Type").isName() &&
- (stream_dict.getKey("/Type").getName() == "/Metadata"))
+ if (stream_dict.isDictionaryOfType("/Metadata"))
{
is_metadata = true;
}
@@ -1691,11 +1688,8 @@ QPDFWriter::unparseObject(QPDFObjectHandle object, int level,
QTC::TC("qpdf", "QPDFWriter preserve Extensions");
QPDFObjectHandle adbe = extensions.getKey("/ADBE");
if (adbe.isDictionary() &&
- adbe.hasKey("/BaseVersion") &&
- adbe.getKey("/BaseVersion").isName() &&
- (adbe.getKey("/BaseVersion").getName() ==
- "/" + this->m->final_pdf_version) &&
- adbe.hasKey("/ExtensionLevel") &&
+ adbe.getKey("/BaseVersion").isNameAndEquals(
+ "/" + this->m->final_pdf_version) &&
adbe.getKey("/ExtensionLevel").isInteger() &&
(adbe.getKey("/ExtensionLevel").getIntValue() ==
this->m->final_extension_level))
@@ -1764,7 +1758,7 @@ QPDFWriter::unparseObject(QPDFObjectHandle object, int level,
for (int i = 0; i < filter.getArrayNItems(); ++i)
{
QPDFObjectHandle item = filter.getArrayItem(i);
- if (item.isName() && item.getName() == "/Crypt")
+ if (item.isNameAndEquals("/Crypt"))
{
idx = i;
break;
@@ -1802,9 +1796,7 @@ QPDFWriter::unparseObject(QPDFObjectHandle object, int level,
writeString(QPDF_Name::normalizeName(key));
writeString(" ");
if (key == "/Contents" &&
- object.hasKey("/Type") &&
- object.getKey("/Type").isName() &&
- object.getKey("/Type").getName() == "/Sig" &&
+ object.isDictionaryOfType("/Sig") &&
object.hasKey("/ByteRange"))
{
QTC::TC("qpdf", "QPDFWriter no encryption sig contents");