aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFObjectHandle.cc
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2020-12-31 17:38:27 +0100
committerJay Berkenbilt <ejb@ql.org>2021-01-02 17:33:36 +0100
commite7a85545639d6d09923abb8fb300dda5889b110b (patch)
treea8c103f6ce911ef53a954c10d1de4c569beb9281 /libqpdf/QPDFObjectHandle.cc
parent1562d34c096424b4916be09e8dcd2f0f3effb17f (diff)
downloadqpdf-e7a85545639d6d09923abb8fb300dda5889b110b.tar.zst
QPDFPageObjectHelper::getPageImages: support form XObjects
Diffstat (limited to 'libqpdf/QPDFObjectHandle.cc')
-rw-r--r--libqpdf/QPDFObjectHandle.cc30
1 files changed, 1 insertions, 29 deletions
diff --git a/libqpdf/QPDFObjectHandle.cc b/libqpdf/QPDFObjectHandle.cc
index 181793f4..d5d199d9 100644
--- a/libqpdf/QPDFObjectHandle.cc
+++ b/libqpdf/QPDFObjectHandle.cc
@@ -1320,35 +1320,7 @@ QPDFObjectHandle::getGeneration() const
std::map<std::string, QPDFObjectHandle>
QPDFObjectHandle::getPageImages()
{
- std::map<std::string, QPDFObjectHandle> result;
- QPDFObjectHandle resources =
- QPDFPageObjectHelper(*this).getAttribute("/Resources", false);
- if (resources.isDictionary())
- {
- if (resources.hasKey("/XObject"))
- {
- QPDFObjectHandle xobject = resources.getKey("/XObject");
- std::set<std::string> keys = xobject.getKeys();
- for (std::set<std::string>::iterator iter = keys.begin();
- iter != keys.end(); ++iter)
- {
- std::string key = (*iter);
- QPDFObjectHandle value = xobject.getKey(key);
- if (value.isStream())
- {
- QPDFObjectHandle dict = value.getDict();
- if (dict.hasKey("/Subtype") &&
- (dict.getKey("/Subtype").getName() == "/Image") &&
- (! dict.hasKey("/ImageMask")))
- {
- result[key] = value;
- }
- }
- }
- }
- }
-
- return result;
+ return QPDFPageObjectHelper(*this).getPageImages();
}
std::vector<QPDFObjectHandle>