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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
pikepdf API
***********
Main objects
============
.. autoclass:: pikepdf.Pdf
:members:
.. autofunction:: pikepdf.open
.. autoclass:: pikepdf.ObjectStreamMode
Options for saving object streams within PDFs, which are more a compact
way of saving certains types of data that was added in PDF 1.5. All
modern PDF viewers support object streams, but some third party tools
and libraries cannot read them.
.. attribute:: disable
Disable the use of object streams. If any object streams exist in the
file, remove them when the file is saved.
.. attribute:: preserve
Preserve any existing object streams in the original file. This is
the default behavior.
.. attribute:: generate
Generate object streams.
.. autoclass:: pikepdf.StreamDecodeLevel
.. attribute:: none
Do not attempt to apply any filters. Streams
remain as they appear in the original file. Note that
uncompressed streams may still be compressed on output. You can
disable that by calling setCompressStreams(false).
.. attribute:: generalized
This is the default. libqpdf will apply
LZWDecode, ASCII85Decode, ASCIIHexDecode, and FlateDecode
filters on the input. When combined with
setCompressStreams(true), which the default, the effect of this
is that streams filtered with these older and less efficient
filters will be recompressed with the Flate filter. As a
special case, if a stream is already compressed with
FlateDecode and setCompressStreams is enabled, the original
compressed data will be preserved.
.. attribute:: specialized
In addition to uncompressing the
generalized compression formats, supported non-lossy
compression will also be be decoded. At present, this includes
the RunLengthDecode filter.
.. attribute:: all
In addition to generalized and non-lossy
specialized filters, supported lossy compression filters will
be applied. At present, this includes DCTDecode (JPEG)
compression. Note that compressing the resulting data with
DCTDecode again will accumulate loss, so avoid multiple
compression and decompression cycles. This is mostly useful for
retrieving image data.
.. autoexception:: pikepdf.PdfError
.. autoexception:: pikepdf.PasswordError
Object construction
===================
.. autoclass:: pikepdf.Object
:members:
.. autoclass:: pikepdf.Name
:members: __new__
.. autoclass:: pikepdf.String
:members: __new__
.. autoclass:: pikepdf.Array
:members: __new__
.. autoclass:: pikepdf.Dictionary
:members: __new__
.. autoclass:: pikepdf.Stream
:members: __new__
.. autoclass:: pikepdf.Operator
:members:
Support models
==============
.. autofunction:: pikepdf.parse_content_stream
.. autoclass:: pikepdf.PdfMatrix
:members:
.. attribute:: a
.. attribute:: b
.. attribute:: c
.. attribute:: d
.. attribute:: e
.. attribute:: f
Return one of the six "active values" of the matrix.
.. autoclass:: pikepdf.PdfImage
:members:
.. autoclass:: pikepdf.PdfInlineImage
:members:
.. autoclass:: pikepdf.models.PdfMetadata
:members:
Internal objects
================
These objects are returned by other pikepdf objects. They are part of the API,
but not intended to be created explicitly.
.. autoclass:: pikepdf._qpdf.PageList
:members:
A ``list``-like object enumerating all pages in a :class:`pikepdf.Pdf`.
|