aboutsummaryrefslogtreecommitdiffstats
path: root/job.yml
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2022-02-01 00:04:14 +0100
committerJay Berkenbilt <ejb@ql.org>2022-02-01 00:16:09 +0100
commitea96330bb615791de58a4f6beb6203137fe1ba35 (patch)
tree20207d1a708c0c1eb3b2319df91a9c288d89011b /job.yml
parent47f33cec2582101485ed93d041d069118a62b5cf (diff)
downloadqpdf-ea96330bb615791de58a4f6beb6203137fe1ba35.tar.zst
QPDFJob json: flatten json structure
Flatten everything to make it easier to map command-line flags to json. The old structure was an illusion anyway because there was no mechanism to enforce that things were in the right place. This also helps with future flexibility.
Diffstat (limited to 'job.yml')
-rw-r--r--job.yml293
1 files changed, 146 insertions, 147 deletions
diff --git a/job.yml b/job.yml
index 4b1df7cf..4f072ebd 100644
--- a/job.yml
+++ b/job.yml
@@ -243,13 +243,6 @@ options:
required_parameter:
prefix: prefix
password: password
-no-json:
- - preserve-unreferenced-resources
- - job-json-file
- - replace-input
- - warning-exit-0
- - requires-password
- - is-encrypted
json:
# The structure of this section defines what the json input to
# QPDFJob looks like. If a key starts with underscore, it does not
@@ -262,143 +255,149 @@ json:
# converted to camelCase for the schema and must be appear that way
# in the user-supplied json. This makes it more convenient to
# populate JSON objects in some languages.
- _input:
- _file: "input filename"
- main.password:
- password-file:
- empty:
- _output:
- _file: "output filename"
- _replace-input: "set to true to replace input"
- _options:
- qdf:
- preserve-unreferenced:
- newline-before-endstream:
- normalize-content:
- stream-data:
- compress-streams:
- recompress-flate:
- decode-level:
- decrypt:
- deterministic-id:
- static-aes-iv:
- static-id:
- no-original-object-ids:
- copy-encryption:
- encryption-file-password:
- linearize:
- linearize-pass1:
- object-streams:
- min-version:
- force-version:
- progress:
- split-pages:
- encrypt:
- _user-password: "user password"
- _owner-password: "owner password"
- _40bit:
- Enc40.annotate:
- Enc40.extract:
- Enc40.modify:
- Enc40.print:
- _128bit:
- Enc128.accessibility:
- Enc128.annotate:
- Enc128.assemble:
- Enc128.cleartext-metadata:
- Enc128.extract:
- Enc128.form:
- Enc128.modify-other:
- Enc128.modify:
- Enc128.print:
- force-V4:
- use-aes:
- _256bit:
- Enc256.accessibility:
- Enc256.annotate:
- Enc256.assemble:
- Enc256.cleartext-metadata:
- Enc256.extract:
- Enc256.form:
- Enc256.modify-other:
- Enc256.modify:
- Enc256.print:
- allow-insecure:
- force-R5:
- _inspect:
- check:
- check-linearization:
- filtered-stream-data:
- raw-stream-data:
- show-encryption:
- show-encryption-key:
- show-linearization:
- show-npages:
- show-object:
- show-pages:
- show-xref:
- with-images:
- list-attachments:
- show-attachment:
- json:
- json-key:
- - null
- json-object:
- - null
- _options:
- allow-weak-crypto:
- keep-files-open:
- keep-files-open-threshold:
- no-warn:
- verbose:
- ignore-xref-streams:
- password-is-hex-key:
- password-mode:
- suppress-password-recovery:
- suppress-recovery:
- coalesce-contents:
- compression-level:
- externalize-inline-images:
- ii-min-bytes:
- remove-unreferenced-resources:
- add-attachment:
- - _file: "attachment to add"
- creationdate:
- description:
- filename:
- key:
- mimetype:
- moddate:
- replace:
- remove-attachment:
- copy-attachments-from:
- - _file: "attachment source filename"
- CopyAtt.password:
- prefix:
- collate:
- flatten-annotations:
- flatten-rotation:
- generate-appearances:
- keep-inline-images:
- oi-min-area:
- oi-min-height:
- oi-min-width:
- optimize-images:
- pages:
- - _file: "source for for pages"
- Pages.password:
- _range: "page range"
- remove-page-labels:
- rotate:
- overlay:
- _file: "source file for overlay"
- UO.password:
- from:
- repeat:
- to:
- underlay:
- _file: "source file for underlay"
- UO.password:
- from:
- repeat:
- to:
+
+ # input
+ _inputFile: "input filename"
+ main.password:
+ password-file:
+ empty:
+ # output
+ _outputFile: "output filename"
+ replace-input:
+ # output options
+ qdf:
+ preserve-unreferenced:
+ newline-before-endstream:
+ normalize-content:
+ stream-data:
+ compress-streams:
+ recompress-flate:
+ decode-level:
+ decrypt:
+ deterministic-id:
+ static-aes-iv:
+ static-id:
+ no-original-object-ids:
+ copy-encryption:
+ encryption-file-password:
+ linearize:
+ linearize-pass1:
+ object-streams:
+ min-version:
+ force-version:
+ progress:
+ split-pages:
+ encrypt:
+ _user-password: "user password"
+ _owner-password: "owner password"
+ _40bit:
+ Enc40.annotate:
+ Enc40.extract:
+ Enc40.modify:
+ Enc40.print:
+ _128bit:
+ Enc128.accessibility:
+ Enc128.annotate:
+ Enc128.assemble:
+ Enc128.cleartext-metadata:
+ Enc128.extract:
+ Enc128.form:
+ Enc128.modify-other:
+ Enc128.modify:
+ Enc128.print:
+ force-V4:
+ use-aes:
+ _256bit:
+ Enc256.accessibility:
+ Enc256.annotate:
+ Enc256.assemble:
+ Enc256.cleartext-metadata:
+ Enc256.extract:
+ Enc256.form:
+ Enc256.modify-other:
+ Enc256.modify:
+ Enc256.print:
+ allow-insecure:
+ force-R5:
+ # inspect
+ check:
+ check-linearization:
+ filtered-stream-data:
+ raw-stream-data:
+ show-encryption:
+ show-encryption-key:
+ show-linearization:
+ show-npages:
+ show-object:
+ show-pages:
+ show-xref:
+ with-images:
+ list-attachments:
+ show-attachment:
+ json:
+ json-key:
+ - null
+ json-object:
+ - null
+ # other options
+ allow-weak-crypto:
+ keep-files-open:
+ keep-files-open-threshold:
+ no-warn:
+ verbose:
+ ignore-xref-streams:
+ password-is-hex-key:
+ password-mode:
+ suppress-password-recovery:
+ suppress-recovery:
+ coalesce-contents:
+ compression-level:
+ externalize-inline-images:
+ ii-min-bytes:
+ remove-unreferenced-resources:
+ add-attachment:
+ - _file: "attachment to add"
+ creationdate:
+ description:
+ filename:
+ key:
+ mimetype:
+ moddate:
+ replace:
+ remove-attachment:
+ copy-attachments-from:
+ - _file: "attachment source filename"
+ CopyAtt.password:
+ prefix:
+ collate:
+ flatten-annotations:
+ flatten-rotation:
+ generate-appearances:
+ keep-inline-images:
+ oi-min-area:
+ oi-min-height:
+ oi-min-width:
+ optimize-images:
+ pages:
+ - _file: "source for for pages"
+ Pages.password:
+ _range: "page range"
+ remove-page-labels:
+ rotate:
+ overlay:
+ _file: "source file for overlay"
+ UO.password:
+ from:
+ repeat:
+ to:
+ underlay:
+ _file: "source file for underlay"
+ UO.password:
+ from:
+ repeat:
+ to:
+ warning-exit-0:
+ job-json-file:
+ preserve-unreferenced-resources:
+ requires-password:
+ is-encrypted: