Commit 9d7eef7cc601104cf99fe48fd6789ae94f526cda
1 parent
2e8a3e16
Update TODO
Remove form flattening Clarify splitting/merging with document level constructs
Showing
1 changed file
with
36 additions
and
8 deletions
TODO
| ... | ... | @@ -54,6 +54,16 @@ Lexical |
| 54 | 54 | manner that takes advantage of the other lexical features. This |
| 55 | 55 | sanitizer should also clear metadata and replace images. |
| 56 | 56 | |
| 57 | +Page splitting/merging | |
| 58 | +====================== | |
| 59 | + | |
| 60 | + * Update page splitting and merging to handle document-level | |
| 61 | + constructs with page impact such as interactive forms and article | |
| 62 | + threading. Check keys in the document catalog for others, such as | |
| 63 | + outlines, page labels, thumbnails, and zones. For threads, | |
| 64 | + Subramanyam provided a test file; see ../misc/article-threads.pdf. | |
| 65 | + Email Q-Count: 431864 from 2009-11-03. | |
| 66 | + | |
| 57 | 67 | General |
| 58 | 68 | ======= |
| 59 | 69 | |
| ... | ... | @@ -77,8 +87,32 @@ I find it useful to make reference to them in this list |
| 77 | 87 | filtering doesn't ever try to do this. QPDFWriter should be checked |
| 78 | 88 | carefully too. See also bugs/private/from-email-663916/ |
| 79 | 89 | |
| 80 | - * Form flattening: ~/tmp/qtmp/form-flattening-email/. Distill this | |
| 81 | - into notes along with stuff in qpdf email box. | |
| 90 | + * Interactive form modification: | |
| 91 | + https://github.com/qpdf/qpdf/issues/213 contains a good discussion | |
| 92 | + of some ideas for adding methods to modify annotations and form | |
| 93 | + fields if we want to make it easier to support modifications to | |
| 94 | + interactive forms. Some of the ideas have been implemented, and | |
| 95 | + some of the probably never will be implemented, but it's worth a | |
| 96 | + read if there is an intention to work on this. In the issue, search | |
| 97 | + for "Regarding write functionality", and read that comment and the | |
| 98 | + responses to it. | |
| 99 | + | |
| 100 | + * Form flattening: there is on-going work on this topic. The primary | |
| 101 | + tracking issue is https://github.com/qpdf/qpdf/issues/72, and there | |
| 102 | + has also been discussion in private email threads. My notes are | |
| 103 | + summarized in ../misc/form-flattening/README (not publicly | |
| 104 | + accessible), but all important information is in issues in github. | |
| 105 | + The non-public items in my notes are transcripts of discussions | |
| 106 | + with a google summer of code student who was working on the issue. | |
| 107 | + These notes likely have low value at this point, but I have saved | |
| 108 | + them to review in case form flattening ever moves into the qpdf | |
| 109 | + library from external tools where it is currently being | |
| 110 | + implemented. Note that flattening forms with appearance streams is | |
| 111 | + relatively straightforward, but many PDF files don't have | |
| 112 | + appearance streams and leave rendering of the form fields to the | |
| 113 | + viewer. Handling this in the general case is probably out of scope | |
| 114 | + for what will be in qpdf in the foreseeable future, particularly in | |
| 115 | + the area of embedding and subsetting fonts. | |
| 82 | 116 | |
| 83 | 117 | * Look at ~/Q/pdf-collection/forms-from-appian/ |
| 84 | 118 | |
| ... | ... | @@ -160,12 +194,6 @@ I find it useful to make reference to them in this list |
| 160 | 194 | Consider implementing full Unicode password algorithms from newer |
| 161 | 195 | encryption formats. |
| 162 | 196 | |
| 163 | - * Consider impact of article threads on page splitting/merging. | |
| 164 | - Subramanyam provided a test file; see ../misc/article-threads.pdf. | |
| 165 | - Email Q-Count: 431864 from 2009-11-03. Other things to consider: | |
| 166 | - outlines, page labels, thumbnails, zones. There are probably | |
| 167 | - others. | |
| 168 | - | |
| 169 | 197 | * See if we can avoid preserving unreferenced objects in object |
| 170 | 198 | streams even when preserving the object streams. |
| 171 | 199 | ... | ... |