From 0df672049bb726385bca36aa9ccf35565c8f0201 Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Tue, 9 Jan 2024 13:35:23 -0500 Subject: [PATCH] Remove completed work from TODO-pages --- TODO-pages.md | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) diff --git a/TODO-pages.md b/TODO-pages.md index fa556800..1d428f13 100644 --- a/TODO-pages.md +++ b/TODO-pages.md @@ -194,10 +194,9 @@ Other notes: ## Flexible Assembly This section discusses modifications to the command-line syntax to make it easier to add flexibility -going forward without breaking backward compatibility. The main thrust will be to create -non-positional alternatives to some things that currently use positional arguments (`--pages`, -`--overlay`, `--underlay`), as was done for `--encrypt` in 11.7.0, to make it possible to add -additional flags. +going forward without breaking backward compatibility. In qpdf 11.9.0, we added non-positional +options to `--pages`, `--overlay`, `--underlay` and modifid configuration to make it easier to add +new options. In several cases, we allow specification of transformations or placements. In this context: * The origin is always lower-left corner. @@ -222,21 +221,6 @@ In several cases, we allow specification of transformations or placements. In th * A rectangle may also be just one of `M|C|B|T|A` to refer to a page's media, crop, bleed, trim, or art box. -Tweak `--pages` similarly to `--encrypt`. As an alternative to `--pages file [--password=p] range ---`, support `--pages --file=x --password=y --range=z --`. This allows for a more flexible syntax. -If `--file` appears, positional arguments are disallowed. The same applies to `--overlay` and -`--underlay`. - -``` -OLD: qpdf 2.pdf --pages 1.pdf --password=x . 3.pdf 1-z -- out.pdf -NEW: qpdf 2.pdf --pages --file=1.pdf --password=x --file=. --file 3.pdf --range=1-z -- out.pdf -``` - -This makes it possible to add additional flags to do things like control how document-level features -are handled, specify placement options, etc. Given the above framework, it would be possible to add -additional features incrementally, without breaking compatibility, such as selecting or splitting -pages based on tags, article threads, or outlines. - It's tempting to allow assemblies to be nested, but this gets very complicated. From the C++ API, there is no problem using the output of one `QPDFAssembler` as the input to another, but supporting this from the CLI is hard because of the way JSON/arg parsing is set up. If people need to do that,