File: pdfwriter.xml

package info (click to toggle)
pdfedit 0.4.1-2
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 15,032 kB
  • ctags: 21,708
  • sloc: cpp: 185,471; xml: 8,824; yacc: 1,178; ansic: 666; perl: 664; makefile: 636; sh: 371; lisp: 51
file content (34 lines) | stat: -rw-r--r-- 1,440 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<!-- vim:tabstop=4:shiftwidth=4:noexpandtab:textwidth=80 
-->
<sect1 id="kernel_part_pdfwriter">
	<title>IPdfwriter</title>
	<para>
		IPdfWriter abstract class provides interface for pdf content writing.
	</para>
    <para>
        IPdfWriter writes pdf content in two phases:
		<itemizedlist>
        <listitem>Real data writing and information collecting. This is done 
			during <classname>writeContent</classname> method. Implementator is responsible to 
            collect all data needed for cross reference section generation.
        </listitem>
        <listitem>Cross reference section writing. This is done in
			<classname>writeTrailer</classname> method, which gets all 
			collected data and writes cross reference table (or stream - 
			depends on implementation), writes trailer dictionary and finally 
			information about last xref position.
        </listitem>
       </itemizedlist>
        Different implementator of IPdfWriter interface can be set by 
		<classname>XRefWriter::setPdfWriter</classname> method.
    </para>
    <para>
        Each sequence of <classname>writeContent, [writeContent, ]*
			writeTrailer</classname> forms new
        revision of document in incremental update sense. In this moment 
		<classname>OldStylePdfWriter</classname> implementation is used which forms old style cross 
        reference table (see pdf specification 2.4.3 Cross reference table
		chapter).
    </para>
</sect1>