File: wx.lib.pdfviewer.viewer.pypdfProcessor.txt

package info (click to toggle)
wxpython4.0 4.0.4%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 211,112 kB
  • sloc: cpp: 888,355; python: 223,130; makefile: 52,087; ansic: 45,780; sh: 3,012; xml: 1,534; perl: 264
file content (165 lines) | stat: -rw-r--r-- 6,568 bytes parent folder | download
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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2018 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc

.. currentmodule:: wx.lib.pdfviewer.viewer

.. highlight:: python



.. _wx.lib.pdfviewer.viewer.pypdfProcessor:

==========================================================================================================================================
|phoenix_title|  **wx.lib.pdfviewer.viewer.pypdfProcessor**
==========================================================================================================================================

Create an instance of this class to open a PDF file, process the contents of
every page using PyPDF2 then render each one on demand



|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>pypdfProcessor</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.lib.pdfviewer.viewer.pypdfProcessor_inheritance.png" alt="Inheritance diagram of pypdfProcessor" usemap="#dummy" class="inheritance"/></center>
   </div>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.lib.pdfviewer.viewer.pypdfProcessor.html" title="wx.lib.pdfviewer.viewer.pypdfProcessor" alt="" coords="5,5,269,35"/> </map> 
   </p>

|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.__init__`                         
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.AddBitmap`                        Add wx.Bitmap from data, processed by filters.
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.ConvertCMYK`                      Convert CMYK values (0 to 1.0) in operand to nearest RGB.
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.DrawFile`                         Build set of drawing commands from PDF contents. Ideally these could be drawn
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.DrawPath`                         Stroke and/or fill the defined path depending on operator.
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.DrawTextItem`                     Draw a text item.
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.DrawTextString`                   Draw a text string. Word spacing only works for horizontal text.
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.FetchFonts`                       Return the standard fonts in current page or form
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.InlineImage`                      operand contains an image
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.InsertXObject`                    XObject can be an image or a 'form' (an arbitrary PDF sequence).
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.ProcessOperators`                 Interpret each operation in opslist and return in drawlist.
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.Progress`                         This function is called at regular intervals during Drawfile
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.RenderPage`                       Render the set of pagedrawings
:meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.SetFont`                          Returns :class:`wx.Font` instance from supplied pdf font information.
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: pypdfProcessor(object)

   Create an instance of this class to open a PDF file, process the contents of
   every page using PyPDF2 then render each one on demand

   .. method:: __init__(self, parent, fileobj, showloadprogress)


   .. method:: AddBitmap(self, data, width, height, filters)

      Add wx.Bitmap from data, processed by filters.


   .. method:: ConvertCMYK(self, operand)

      Convert CMYK values (0 to 1.0) in operand to nearest RGB.


   .. method:: DrawFile(self, frompage, topage)

      Build set of drawing commands from PDF contents. Ideally these could be drawn
      straight into a PseudoDC and the visible section painted directly into
      scrolled window, but we need to be able to zoom and scale the output quickly
      without having to rebuild the drawing commands (slow). So build our
      own command lists, one per page, into self.pagedrawings.


   .. method:: DrawPath(self, path, action)

      Stroke and/or fill the defined path depending on operator.


   .. method:: DrawTextItem(self, textitem, f)

      Draw a text item.
      
      :param `textitem`: the item to draw
      :param `f`: the font to use for text extent measuring


   .. method:: DrawTextString(self, text)

      Draw a text string. Word spacing only works for horizontal text.
      
      :param string `text`: the text to draw


   .. method:: FetchFonts(self, currentobject)

      Return the standard fonts in current page or form


   .. method:: InlineImage(self, operand)

      operand contains an image


   .. method:: InsertXObject(self, name)

      XObject can be an image or a 'form' (an arbitrary PDF sequence).


   .. method:: ProcessOperators(self, opslist, pdf_fonts)

      Interpret each operation in opslist and return in drawlist.


   .. method:: Progress(self, ptype, value)

      This function is called at regular intervals during Drawfile


   .. method:: RenderPage(self, gc, pageno, scale=None)

      Render the set of pagedrawings
      In a pdf file, bitmaps are treated as being of unit width and height and
      are scaled via a previous ConcatTransform containing the corresponding width
      and height as scale factors. wx.GraphicsContext/Cairo appear not to respond to
      this so scaling is removed from transform and width & height are added
      to the Drawbitmap call.


   .. method:: SetFont(self, pdfont, size)

      Returns :class:`wx.Font` instance from supplied pdf font information.