.. wxPython Phoenix documentation This file was generated by Phoenix's sphinx generator and associated tools, do not edit by hand. Copyright: (c) 2011-2020 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
Inheritance diagram for class pypdfProcessor:
| |method_summary| Methods Summary ================================ ================================================================================ ================================================================================ :meth:`~wx.lib.pdfviewer.viewer.pypdfProcessor.__init__` Initialize self. See help(type(self)) for accurate signature. :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.GetPageSize` :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) Initialize self. See help(type(self)) for accurate signature. .. 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:: GetPageSize(self, pageNum) .. 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.