aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2020-12-31 19:23:49 +0100
committerJay Berkenbilt <ejb@ql.org>2021-01-02 17:33:36 +0100
commit63ea46193d4ce4cbd1dc37becad4645b0e75769b (patch)
tree6064f07e10e5c16dd3195637a37ea1036f77cd1a
parente7a85545639d6d09923abb8fb300dda5889b110b (diff)
downloadqpdf-63ea46193d4ce4cbd1dc37becad4645b0e75769b.tar.zst
QPDFPageObjectHelper: getPageImages -> getImages
-rw-r--r--ChangeLog5
-rw-r--r--examples/pdf-create.cc2
-rw-r--r--examples/pdf-invert-images.cc2
-rw-r--r--fuzz/qpdf_fuzzer.cc2
-rw-r--r--include/qpdf/QPDFPageObjectHelper.hh4
-rw-r--r--libqpdf/QPDFObjectHandle.cc2
-rw-r--r--libqpdf/QPDFPageObjectHelper.cc6
-rw-r--r--qpdf/qpdf.cc9
-rw-r--r--qpdf/test_driver.cc5
9 files changed, 24 insertions, 13 deletions
diff --git a/ChangeLog b/ChangeLog
index 79ed223a..c598b104 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2020-12-31 Jay Berkenbilt <ejb@ql.org>
+ * Rename QPDFPageObjectHelper::getPageImages to
+ QPDFPageObjectHelper::getImages and make it support form XObjects
+ as well as pages. The old name will be preserved for
+ compatibility.
+
* Add QPDFObjectHandle::isFormXObject to test whether an object is
a form XObject.
diff --git a/examples/pdf-create.cc b/examples/pdf-create.cc
index b27d4e17..44405d38 100644
--- a/examples/pdf-create.cc
+++ b/examples/pdf-create.cc
@@ -268,7 +268,7 @@ static void check(char const* filename,
page_iter != pages.end(); ++page_iter)
{
QPDFPageObjectHelper& page(*page_iter);
- std::map<std::string, QPDFObjectHandle> images = page.getPageImages();
+ std::map<std::string, QPDFObjectHandle> images = page.getImages();
if (images.size() != 1)
{
throw std::logic_error("incorrect number of images on page");
diff --git a/examples/pdf-invert-images.cc b/examples/pdf-invert-images.cc
index 3a0afca4..72a15f2c 100644
--- a/examples/pdf-invert-images.cc
+++ b/examples/pdf-invert-images.cc
@@ -159,7 +159,7 @@ int main(int argc, char* argv[])
QPDFPageObjectHelper& page(*iter);
// Get all images on the page.
std::map<std::string, QPDFObjectHandle> images =
- page.getPageImages();
+ page.getImages();
for (auto& iter2: images)
{
QPDFObjectHandle& image = iter2.second;
diff --git a/fuzz/qpdf_fuzzer.cc b/fuzz/qpdf_fuzzer.cc
index eb6791a4..195cf5bb 100644
--- a/fuzz/qpdf_fuzzer.cc
+++ b/fuzz/qpdf_fuzzer.cc
@@ -143,7 +143,7 @@ FuzzHelper::testPages()
{
page.coalesceContentStreams();
page.parsePageContents(&discard_contents);
- page.getPageImages();
+ page.getImages();
pldh.getLabelForPage(pageno);
QPDFObjectHandle page_obj(page.getObjectHandle());
page_obj.getJSON(true).unparse();
diff --git a/include/qpdf/QPDFPageObjectHelper.hh b/include/qpdf/QPDFPageObjectHelper.hh
index e6f9f76d..5b63a70d 100644
--- a/include/qpdf/QPDFPageObjectHelper.hh
+++ b/include/qpdf/QPDFPageObjectHelper.hh
@@ -78,6 +78,10 @@ class QPDFPageObjectHelper: public QPDFObjectHelper
// name to the image object, which is always a stream. Works with
// form XObjects as well as pages.
QPDF_DLL
+ std::map<std::string, QPDFObjectHandle> getImages();
+
+ // Old name -- calls getImages()
+ QPDF_DLL
std::map<std::string, QPDFObjectHandle> getPageImages();
// Convert each inline image to an external (normal) image if the
diff --git a/libqpdf/QPDFObjectHandle.cc b/libqpdf/QPDFObjectHandle.cc
index d5d199d9..180ccfa3 100644
--- a/libqpdf/QPDFObjectHandle.cc
+++ b/libqpdf/QPDFObjectHandle.cc
@@ -1320,7 +1320,7 @@ QPDFObjectHandle::getGeneration() const
std::map<std::string, QPDFObjectHandle>
QPDFObjectHandle::getPageImages()
{
- return QPDFPageObjectHelper(*this).getPageImages();
+ return QPDFPageObjectHelper(*this).getImages();
}
std::vector<QPDFObjectHandle>
diff --git a/libqpdf/QPDFPageObjectHelper.cc b/libqpdf/QPDFPageObjectHelper.cc
index 0e9792a6..c26744ac 100644
--- a/libqpdf/QPDFPageObjectHelper.cc
+++ b/libqpdf/QPDFPageObjectHelper.cc
@@ -389,6 +389,12 @@ QPDFPageObjectHelper::getMediaBox(bool copy_if_shared)
std::map<std::string, QPDFObjectHandle>
QPDFPageObjectHelper::getPageImages()
{
+ return getImages();
+}
+
+std::map<std::string, QPDFObjectHandle>
+QPDFPageObjectHelper::getImages()
+{
std::map<std::string, QPDFObjectHandle> result;
QPDFObjectHandle resources = getAttribute("/Resources", false);
if (resources.isDictionary())
diff --git a/qpdf/qpdf.cc b/qpdf/qpdf.cc
index 19d7b0c4..70a5746a 100644
--- a/qpdf/qpdf.cc
+++ b/qpdf/qpdf.cc
@@ -3639,8 +3639,7 @@ static void do_show_pages(QPDF& pdf, Options& o)
<< page.getGeneration() << " R" << std::endl;
if (o.show_page_images)
{
- std::map<std::string, QPDFObjectHandle> images =
- ph.getPageImages();
+ std::map<std::string, QPDFObjectHandle> images = ph.getImages();
if (! images.empty())
{
std::cout << " images:" << std::endl;
@@ -3765,8 +3764,7 @@ static void do_json_pages(QPDF& pdf, Options& o, JSON& j)
j_page.addDictionaryMember("object", page.getJSON());
JSON j_images = j_page.addDictionaryMember(
"images", JSON::makeArray());
- std::map<std::string, QPDFObjectHandle> images =
- ph.getPageImages();
+ std::map<std::string, QPDFObjectHandle> images = ph.getImages();
for (auto const& iter2: images)
{
JSON j_image = j_images.addArrayElement(JSON::makeDictionary());
@@ -4785,8 +4783,7 @@ static void handle_transformations(QPDF& pdf, Options& o)
++pageno;
QPDFPageObjectHelper& ph(*iter);
QPDFObjectHandle page = ph.getObjectHandle();
- std::map<std::string, QPDFObjectHandle> images =
- ph.getPageImages();
+ std::map<std::string, QPDFObjectHandle> images = ph.getImages();
for (auto& iter2: images)
{
std::string name = iter2.first;
diff --git a/qpdf/test_driver.cc b/qpdf/test_driver.cc
index b373e5bc..d8b40a0f 100644
--- a/qpdf/test_driver.cc
+++ b/qpdf/test_driver.cc
@@ -516,8 +516,7 @@ void runtest(int n, char const* filename1, char const* arg2)
std::cout << "page " << pageno << ":" << std::endl;
std::cout << " images:" << std::endl;
- std::map<std::string, QPDFObjectHandle> images =
- page.getPageImages();
+ std::map<std::string, QPDFObjectHandle> images = page.getImages();
for (auto const& iter2: images)
{
std::string const& name = iter2.first;
@@ -1488,7 +1487,7 @@ void runtest(int n, char const* filename1, char const* arg2)
{
std::cout << "page " << ++pageno << std::endl;
std::map<std::string, QPDFObjectHandle> images =
- (*p_iter).getPageImages();
+ (*p_iter).getImages();
for (std::map<std::string, QPDFObjectHandle>::iterator i_iter =
images.begin(); i_iter != images.end(); ++i_iter)
{