aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2018-12-22 17:29:31 +0100
committerJay Berkenbilt <ejb@ql.org>2018-12-22 17:42:38 +0100
commit86f9b4c43be182abe46d035a859f22b82cd844aa (patch)
treecf5e3a9774f82f9d1a4d651f111a37c57c38d3a9
parent62ea3b9197a9158d9c29261b9436da56e563c0b3 (diff)
downloadqpdf-86f9b4c43be182abe46d035a859f22b82cd844aa.tar.zst
Add colorspace and depth information in json for images
-rw-r--r--qpdf/qpdf.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/qpdf/qpdf.cc b/qpdf/qpdf.cc
index 9c895fc4..ec75aee4 100644
--- a/qpdf/qpdf.cc
+++ b/qpdf/qpdf.cc
@@ -294,6 +294,9 @@ static JSON json_schema(std::set<std::string>* keys = 0)
JSON image = page.addDictionaryMember("images", JSON::makeArray()).
addArrayElement(JSON::makeDictionary());
image.addDictionaryMember(
+ "name",
+ JSON::makeString("name of image in XObject table"));
+ image.addDictionaryMember(
"object",
JSON::makeString("reference to image stream"));
image.addDictionaryMember(
@@ -302,6 +305,12 @@ static JSON json_schema(std::set<std::string>* keys = 0)
image.addDictionaryMember(
"height",
JSON::makeString("image height"));
+ image.addDictionaryMember(
+ "colorspace",
+ JSON::makeString("color space"));
+ image.addDictionaryMember(
+ "bitspercomponent",
+ JSON::makeString("bits per component"));
image.addDictionaryMember("filter", JSON::makeArray()).
addArrayElement(
JSON::makeString("filters applied to image data"));
@@ -2695,6 +2704,10 @@ static void do_json_pages(QPDF& pdf, Options& o, JSON& j)
"width", dict.getKey("/Width").getJSON());
j_image.addDictionaryMember(
"height", dict.getKey("/Height").getJSON());
+ j_image.addDictionaryMember(
+ "colorspace", dict.getKey("/ColorSpace").getJSON());
+ j_image.addDictionaryMember(
+ "bitspercomponent", dict.getKey("/BitsPerComponent").getJSON());
QPDFObjectHandle filters = dict.getKey("/Filter").wrapInArray();
j_image.addDictionaryMember(
"filter", filters.getJSON());