Details
-
Type: New Feature
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 3.1
-
Fix Version/s: 4.0 - Beta, 4.0
-
Component/s: Core/Parsing
-
Labels:None
-
Environment:All
Description
If anything new is added to a PDF file, or something is modified, we'll have to support appending an incremental update.
Relevant issues:
1. Linearised file becomming unlinearised. We don't support linearisation, and we'd probably want to avoid re-writing the entire file.
2. If existing file uses cross reference streams, should appended section use cross reference stream or xref table? There are also hybrid files that use both.
3. If existing file uses object streams, should new objects go into an object stream (which allows for encryption), or simply write objects directly?
4. When new objects are created, they have to be assigned object numbers, which is something you take from the existing xref table, since it tells you what the next number to use is.
5. Are we only adding objects, or will we be editing and deleting them? This affects the xref writing.
6. If the original document was encrypted, the updated document must also be encrypted.
7. Will save feature be standard or pro feature
A. Know how to write a trailer
B. Know how to write a xref table, and possibly cross reference stream
C. Possibly know how to write an object stream
D. Know how to write whichever object is being added or modified
E. Know how to write a Page object
Relevant issues:
1. Linearised file becomming unlinearised. We don't support linearisation, and we'd probably want to avoid re-writing the entire file.
2. If existing file uses cross reference streams, should appended section use cross reference stream or xref table? There are also hybrid files that use both.
3. If existing file uses object streams, should new objects go into an object stream (which allows for encryption), or simply write objects directly?
4. When new objects are created, they have to be assigned object numbers, which is something you take from the existing xref table, since it tells you what the next number to use is.
5. Are we only adding objects, or will we be editing and deleting them? This affects the xref writing.
6. If the original document was encrypted, the updated document must also be encrypted.
7. Will save feature be standard or pro feature
A. Know how to write a trailer
B. Know how to write a xref table, and possibly cross reference stream
C. Possibly know how to write an object stream
D. Know how to write whichever object is being added or modified
E. Know how to write a Page object
Have to have something edited, to have something to save.