Commit ab5a01c64ec3c8cb4f13b6846ca4ecdc7b888e14
1 parent
cd1e4661
notes
git-svn-id: svn+q:///qpdf/trunk@986 71b93d88-0707-0410-a8cf-f5a4172ac649
Showing
1 changed file
with
13 additions
and
0 deletions
TODO
| @@ -12,6 +12,19 @@ Next | @@ -12,6 +12,19 @@ Next | ||
| 12 | Stefan Heinsen <stefan.heinsen@gmx.de> in August, 2009. He seems | 12 | Stefan Heinsen <stefan.heinsen@gmx.de> in August, 2009. He seems |
| 13 | to like to send encrypted mail. (key 01FCC336) | 13 | to like to send encrypted mail. (key 01FCC336) |
| 14 | 14 | ||
| 15 | + It appears that the only thing in the code that actually has to | ||
| 16 | + change is the QPDF_Stream object. When replacing stream data, we | ||
| 17 | + have to mutate the stream's dictionary to adjust /Filter, | ||
| 18 | + /DecodeParms, and /Length. We should probably just provide a | ||
| 19 | + method to replace the stream data, /Filter, and /DecodeParms all at | ||
| 20 | + once. If new values are provided, then pipeStreamData can use the | ||
| 21 | + new values, and we essentially then lose the original values. The | ||
| 22 | + code for replacing stream data would be to use getStreamData to get | ||
| 23 | + the old data and then to replace it all before any calls that would | ||
| 24 | + cause QPDFWriter to write new stream data. Will have to go through | ||
| 25 | + QPDF_Stream.cc carefully line by line to make sure everything is | ||
| 26 | + adjusted properly. | ||
| 27 | + | ||
| 15 | * Add helper routines for manipulating page content streams. | 28 | * Add helper routines for manipulating page content streams. |
| 16 | Operations should include ability to convert page contents from a | 29 | Operations should include ability to convert page contents from a |
| 17 | stream to an array of streams and to append or prepend to the page | 30 | stream to an array of streams and to append or prepend to the page |