Jay Berkenbilt
caa00556cf
Change filename or path to file in json and QPDFJob
...
Use "file" consistently for specifying a file path. We use "filename"
when adding attachments for a completely different purpose.
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
1a3ed1ee85
job json: move deterministic-id into output options
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
81b6314cb5
QPDFJob: fix logic errors in handling arrays
...
The code was assuming everything was happening inside dictionaries.
Instead, make the dictionary key handler creatino explicit only when
iterating through dictionary keys.
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
cd30f626fe
QPDFJob: remove from json a few things that only make sense from CLI
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
fa9676557e
QDPFJob: incorporate change to JSONHandler for array start function
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
3b60224bae
JSONHandler: pass JSON object to array start function
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
b74e7989c3
QPDFJob_json: implement handlers except pages
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
e01bbccb40
QPDFJob: incorporate change to JSONHandler for dict start function
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
ce3406e93f
JSONHandler: pass JSON object to dict start function
...
If some keys depend on others, we have to check up front since there
is no control of what order key handlers will be called. Anyway, keys
are unordered in json, so we don't want to depend on ordering.
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
11a86e444d
QPDFJob: autogenerate json init and declarations
...
Now still have to go through and implement the handlers.
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
28278e27ea
Keep JSONHandler and QPDFArgParser private
...
Since the functionality of argument parsing has moved into QPDFJob,
these classes no longer need to be public. Their methods still have to
be in the library's binary interface so they can be tested in libtests.
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
0f05cae66a
QPDFJob: generate json decl and init file skeletons
2022-01-31 15:57:45 -05:00
Jay Berkenbilt
7eeaf58bb7
More doc tweaks
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
7097f29019
More editorial changes from m-holger + spell check
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
0e909bab8e
Improve top-level help information
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
f3d68aa5a0
Incorporate editorial changes from m-holger
2022-01-30 13:11:03 -05:00
m-holger
7dd5f31230
Fix typos in manual
...
Fix typos in cli.rst
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
1258054543
QPDFJob: eliminate most access to QPDFJob members from ArgParser
...
All that's left now is input and output handling.
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
700dfa40d3
QPDFJob: convert encryption handlers
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
b5d41b16b8
QPDFJob: convert under/overlay and rotate
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
95d127641c
QPDFJob: move more top-level trivial handlers into config
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
0a354af02c
QPDFJob: convert AddAttachment handlers
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
bf255ccc89
QPDFJob: convert password in two tables
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
21c897aad0
QPDFJob: convert a flag in other than the main table
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
f60526aff9
QPDFJob: start changing generation for trivial config handlers
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
1d099ab743
QPDFJob: placeholder for initializeFromJson
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
1c8d53465f
Incorporate job schema generation into generate_auto_job
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
67f9d0b7d5
cli.rst: remove () from end of short help
...
This is used to generate a schema for the job json, which can't
contain `)"` because it breaks the R"(...)" syntax in C++. While C++
accepts R"anything(...)anything" to avoid this, as of this writing,
MSVC 2019 doesn't understand that. For now, just avoid it by removing
parentheses from the end of short help.
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
ec85e56c3f
Add missing help topic for inspection
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
acf8d18b6e
Editorial changes to cli.rst
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
a6df6fdaf7
CLI doc: use tables where helpful
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
c8729398dd
Generate help content from manual
...
This is a massive rewrite of the help text and cli.rst section of the
manual. All command-line flags now have their own help and are
specifically index. qpdf --help is completely redone.
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
b4bd124be4
QPDFArgParser: support adding/printing help information
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
53ba65eb59
QPDFArgParser: handle optional choices including help
...
Handle optional choices in addition to required choices. Refactor the
way help options are added to completion to make it work with optional
help choices.
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
4577df4b5d
QPDFJob increment: generate option table initialization
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
c3e9b64e7f
QPDFJob increment: generate handler declarations
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
6e70d99b58
QPDFJob increment: generate choices variables in init
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
cb684ec4d3
QPDFJob increment: generate table names
2022-01-30 13:11:03 -05:00
Jay Berkenbilt
c216854607
Add basic framework for QPDFJob code generation
2022-01-30 13:11:03 -05:00
m-holger
0f9086e509
Fix doc typos
2022-01-30 12:09:54 -06:00
Jay Berkenbilt
3794f8e2ad
Support OpenSSL 3 ( fixes #568 )
2021-11-04 18:24:54 -04:00
Jay Berkenbilt
36c7c20819
Fix timezone portability issue ( fixes #515 )
2021-04-17 18:12:55 -04:00
Jay Berkenbilt
258675fc99
Move ABI comment to the right place
2021-04-03 11:43:08 -04:00
Jay Berkenbilt
f68e25c7f2
Don't use handleWarning, which is being reverted
2021-03-04 15:59:45 -05:00
Jay Berkenbilt
e17585c2d2
Remove unreferenced: ignore names that are not Fonts or XObjects
...
Converted ResourceFinder to ParserCallbacks so we can better detect
the name that precedes various operators and use the operators to sort
the names into resource types. This enables us to be smarter about
detecting unreferenced resources in pages and also sets the stage for
reconciling differences in /DR across documents.
2021-03-03 17:05:49 -05:00
Jay Berkenbilt
37fcc5ff71
Create ResourceFinder from NameWatcher in QPDFPageObjectHelper
2021-03-03 17:05:49 -05:00
Jay Berkenbilt
e2593e2efe
Move QPDFMatrix into the public API
2021-02-13 02:30:00 -05:00
Jay Berkenbilt
07f40bd254
QUtil::double_to_string: trim trailing zeroes with option to disable
2021-02-13 02:30:00 -05:00
Jay Berkenbilt
df067c9ab6
Add autoconf test for localtime_r
2021-02-11 14:26:55 -05:00
Jay Berkenbilt
1b3f84f967
Require C++14 instead of C++11
2021-02-10 16:27:58 -05:00