def OnPrint( self, event ): try: bitmap = wx.Bitmap( self.thumbFileName, wx.BITMAP_TYPE_JPEG ) except: Utils.MessageOK( self, _('No Photo Available.'), _('Print Failed'), iconMask = wx.ICON_ERROR ) return if Utils.mainWin: pdd = wx.PrintDialogData(Utils.mainWin.printData) else: printData = wx.PrintData() printData.SetPaperId(wx.PAPER_LETTER) printData.SetPrintMode(wx.PRINT_MODE_PRINTER) printData.SetOrientation(wx.LANDSCAPE) pdd = wx.PrintDialogData(printData) pdd.SetAllPages( 1 ) pdd.EnablePageNumbers( 0 ) pdd.EnableHelp( 0 ) printer = wx.Printer(pdd) printout = PhotoPrintout( getRiderNameFromFName(self.thumbFileName), self.thumbFileName ) if not printer.Print(self, printout, True): if printer.GetLastError() == wx.PRINTER_ERROR: Utils.MessageOK(self, u'\n\n'.join( [_("There was a printer problem."), _('Check your printer setup.')] ), _("Printer Error"), iconMask=wx.ICON_ERROR) else: self.printData = wx.PrintData( printer.GetPrintDialogData().GetPrintData() ) printout.Destroy()
def test_cmndataClassConstructors(self): psdd1 = wx.PageSetupDialogData() pd1 = wx.PrintData() pdd1 = wx.PrintDialogData() psdd2 = wx.PageSetupDialogData(pd1) psdd3 = wx.PageSetupDialogData(psdd2) pd2 = wx.PrintData(pd1) pdd2 = wx.PrintDialogData(pdd1) pdd3 = wx.PrintDialogData(pd1)
def Print(self, prompt=True, printer_name=None, orientation=None): """ Print the pdf. :param boolean `prompt`: show the print dialog to the user (True/False). If False, the print dialog will not be shown and the pdf will be printed immediately. Default: True. :param string `printer_name`: the name of the printer that is to receive the printout. Default: as set by the O/S. :param `orientation`: select the orientation (wx.PORTRAIT or wx.LANDSCAPE) for the printout. Default: as set by the O/S. """ pdd = wx.PrintDialogData() pdd.SetMinPage(1) pdd.SetFromPage(1) pdd.SetMaxPage(self.numpages) pdd.SetToPage(self.numpages) pdata = pdd.GetPrintData() if printer_name: pdata.SetPrinterName(printer_name) if orientation: pdata.SetOrientation(orientation) printer = wx.Printer(pdd) printout = pdfPrintout('', self) if (not printer.Print(self, printout, prompt=prompt) and printer.GetLastError() == wx.PRINTER_ERROR): dlg = wx.MessageDialog(self, 'Unable to perform printing', 'Printer' , wx.OK | wx.ICON_INFORMATION) dlg.ShowModal() dlg.Destroy() printout.Destroy()
def OnBtnPrint(self, event): """ Print the document. """ text = self.tc.GetValue() #------------ pd = wx.PrintData() pd.SetPrinterName("") pd.SetOrientation(wx.PORTRAIT) pd.SetPaperId(wx.PAPER_A4) pd.SetQuality(wx.PRINT_QUALITY_DRAFT) # Black and white printing if False. pd.SetColour(True) pd.SetNoCopies(1) pd.SetCollate(True) #------------ pdd = wx.PrintDialogData() pdd.SetPrintData(pd) pdd.SetMinPage(1) pdd.SetMaxPage(1) pdd.SetFromPage(1) pdd.SetToPage(1) pdd.SetPrintToFile(False) # pdd.SetSetupDialog(False) # pdd.EnableSelection(True) # pdd.EnablePrintToFile(True) # pdd.EnablePageNumbers(True) # pdd.SetAllPages(True) #------------ dlg = wx.PrintDialog(self, pdd) if dlg.ShowModal() == wx.ID_OK: dc = dlg.GetPrintDC() dc.StartDoc("My document title") dc.StartPage() # (wx.MM_METRIC) ---> Each logical unit is 1 mm. # (wx.MM_POINTS) ---> Each logical unit is a "printer point" i.e. dc.SetMapMode(wx.MM_POINTS) dc.SetTextForeground("red") dc.SetFont(wx.Font(20, wx.SWISS, wx.NORMAL, wx.BOLD)) dc.DrawText(text, 50, 100) dc.EndPage() dc.EndDoc() del dc else: dlg.Destroy()
def ShowPrintDialog(): '''Displays the System print dialog.''' data = wx.PrintDialogData() data.EnableSelection(True) data.EnablePrintToFile(True) data.EnablePageNumbers(True) data.SetMinPage(1) data.SetMaxPage(10) text_to_print = VALUES['-BODY-'] # lines_to_print = text_to_print.split('\n') dialog = wx.PrintDialog(None, data) if dialog.ShowModal() == wx.ID_OK: data = dialog.GetPrintDialogData() data.GetPrintData().SetPaperId(wx.PAPER_A3) dc = dialog.GetPrintDC() dc.StartDoc("MyDoc") dc.StartPage() dc.SetMapMode(wx.MM_POINTS) dc.SetTextForeground("black") dc.DrawText(text_to_print, margins[0][0], margins[1][0]) dc.EndPage() dc.EndDoc() del dc # printer = wx.Printer(data) dialog.Destroy()
def PrintCategories(): mainWin = Utils.getMainWin() race = Model.race if not mainWin or not race: return pdd = wx.PrintDialogData(mainWin.printData) pdd.EnableSelection(False) pdd.EnablePageNumbers(False) pdd.EnableHelp(False) pdd.EnablePrintToFile(False) printer = wx.Printer(pdd) printout = CategoriesPrintout() if not printer.Print(mainWin, printout, True): if printer.GetLastError() == wx.PRINTER_ERROR: Utils.MessageOK(mainWin, u'\n\n'.join([ _("There was a printer problem."), _("Check your printer setup.") ]), _("Printer Error"), iconMask=wx.ICON_ERROR) else: mainWin.printData = wx.PrintData( printer.GetPrintDialogData().GetPrintData()) printout.Destroy()
def printout(self, print_area, print_data): """Print out print area See: http://aspn.activestate.com/ASPN/Mail/Message/wxpython-users/3471083 """ print_info = \ self.main_window.interfaces.get_cairo_export_info("Print") if print_info is None: # Dialog has been canceled return pdd = wx.PrintDialogData(print_data) printer = wx.Printer(pdd) printout = Printout(self.grid, print_data, print_info) if printer.Print(self.main_window, printout, True): self.print_data = \ wx.PrintData(printer.GetPrintDialogData().GetPrintData()) printout.Destroy()
def PrintPreview(self, event): parent = self.print_canvas.GetTopLevelParent() ### copy in order to not change the size of original canvas when we rescal with zoom c = copy.copy(self.print_canvas ) if wx.VERSION_STRING < '4.0' else self.print_canvas data = wx.PrintDialogData(self.printData) printout = Printout(c) printout2 = Printout(c) self.preview = wx.PrintPreview(printout, printout2, data) if self.preview.IsOk(): pfrm = wx.PreviewFrame(self.preview, parent, _("Print preview"), style=wx.DEFAULT_FRAME_STYLE | wx.CLIP_CHILDREN) pfrm.SetIcon(parent.GetIcon()) pfrm.Initialize() pfrm.SetPosition((300, 200)) pfrm.SetSize((550, 700)) pfrm.Show(True) return True else: sys.stderr.write(_("Problem on print preview...\n")) return False
def OnPrintPreview(self, evt): data = wx.PrintDialogData(self.pdata) text = self.tc.GetValue() printout1 = TextDocPrintout(text, "title", self.margins) printout2 = None #TextDocPrintout(text, "title", self.margins) preview = wx.PrintPreview(printout1, printout2, data) if not preview.Ok(): wx.MessageBox("Unable to create PrintPreview!", "Error") else: # create the preview frame such that it overlays the app frame frame = wx.PreviewFrame(preview, self, "Print Preview", pos=self.GetPosition(), size=self.GetSize()) frame.Initialize() frame.Show() def OnPrint(self, evt): data = wx.PrintDialogData(self.pdata) printer = wx.Printer(data) text = self.tc.GetValue() printout = TextDocPrintout(text, "title", self.margins) useSetupDialog = True if not printer.Print(self, printout, useSetupDialog) and printer.GetLastError() == wx.PRINTER_ERROR: wx.MessageBox( "There was a problem printing.\n" "Perhaps your current printer is not set correctly?","Printing Error", wx.OK) else: data = printer.GetPrintDialogData() self.pdata = wx.PrintData(data.GetPrintData()) # force a copy printout.Destroy()
def OnPreview(self, event): xml = self.GetXML() printout1 = wx.richtext.RichTextPrintout() printout1.SetRichTextBuffer(self.ctrl_editeur.GetBuffer()) printout2 = wx.richtext.RichTextPrintout() printout2.SetRichTextBuffer(self.ctrl_editeur.GetBuffer()) data = wx.PrintDialogData() data.SetAllPages(True) data.SetCollate(True) # Pour assembler les pages # définit les paramètres de l'impression datapr = wx.PrintData() data.SetPrintData(datapr) # Impression preview = wx.PrintPreview(printout1, printout2, data) if not preview.Ok(): print "Probleme dans le preview du richTextCtrl." return from Utils import UTILS_Printer pfrm = UTILS_Printer.FramePreview(self, _(u"Aperçu avant impression"), preview) pfrm.SetPosition(self.GetPosition()) pfrm.SetSize(self.GetSize()) pfrm.Show(True) # Pour éviter le bug des marges qui se rajoutent après l'aperçu self.SetXML(xml)
def PrintButton(self, event): parent = self.print_canvas.GetTopLevelParent() pdd = wx.PrintDialogData(self.printData) pdd.SetToPage(1) printer = wx.Printer(pdd) ### copy in order to not change the size of original canvas when we rescal with zoom c = copy.copy(self.print_canvas) ### scale with A4 paper dim c.scalex = min( float(c.getWidth()) / 1654.0, float(c.getHeight()) / 2339.0) c.scaley = min( float(c.getWidth()) / 1654.0, float(c.getHeight()) / 2339.0) printout = Printout.Printout(c) if printer.Print(parent, printout, True): self.printData = wx.PrintData( printer.GetPrintDialogData().GetPrintData()) printout.Destroy()
def PrintPhoto(parent, image): printData = wx.PrintData() printData.SetPaperId(wx.PAPER_LETTER) printData.SetPrintMode(wx.PRINT_MODE_PRINTER) printData.SetOrientation(wx.LANDSCAPE) pdd = wx.PrintDialogData(printData) pdd.EnableSelection(False) pdd.EnablePageNumbers(False) pdd.EnableHelp(False) pdd.EnablePrintToFile(False) printer = wx.Printer(pdd) printout = PhotoPrintout(image) if not printer.Print(parent, printout, True): if printer.GetLastError() == wx.PRINTER_ERROR: wx.MessageBox( u'\n\n'.join([ _("There was a printer problem."), _("Check your printer setup.") ]), _("Printer Error")) else: printData = wx.PrintData(printer.GetPrintDialogData().GetPrintData()) printout.Destroy()
def onPrint(self, event): race = Model.race if not race: return self.commit() mainWin = Utils.getMainWin() pd = mainWin.printData if mainWin else wx.PrintData() orientationSave = pd.GetOrientation() pd.SetOrientation(wx.PORTRAIT) pdd = wx.PrintDialogData(pd) pdd.SetAllPages(True) pdd.EnableSelection(False) pdd.EnablePageNumbers(False) pdd.EnableHelp(False) pdd.EnablePrintToFile(False) printer = wx.Printer(pdd) printout = FtpQRCodePrintout() if not printer.Print(self, printout, True): if printer.GetLastError() == wx.PRINTER_ERROR: Utils.MessageOK(self, u'\n\n'.join([ _("There was a printer problem."), _("Check your printer setup.") ]), _("Printer Error"), iconMask=wx.ICON_ERROR) pd.SetOrientation(orientationSave) printout.Destroy()
def menuPrint(self, event): self.commit() title = self.getTitle() page = self.pages[self.notebook.GetSelection()] try: grid = page.getGrid() printout = SeriesMgrPrintout(title, grid) except AttributeError: if page == self.graphDraw: printout = GraphDrawPrintout(title, page) else: return pdd = wx.PrintDialogData(self.printData) pdd.EnablePageNumbers(0) pdd.EnableHelp(0) printer = wx.Printer(pdd) if not printer.Print(self, printout, True): if printer.GetLastError() == wx.PRINTER_ERROR: Utils.MessageOK( self, "There was a printer problem.\nCheck your printer setup.", "Printer Error", iconMask=wx.ICON_ERROR) else: self.printData = wx.PrintData( printer.GetPrintDialogData().GetPrintData()) printout.Destroy()
def doPreview(self, printer, wikiDocument, wordList, printType, addopt): """ Part of "Prints" plugin API. A Printing.Printer object calls this to show a print preview for a list of wiki words. printer -- Printer object wikiDocument -- WikiDataManager aka WikiDocument object wordList -- list of wiki words to print printType -- bytestring as returned as <print type> by getPrintTypes() (only interesting if class provides more than one print type) addOpt -- additional options as returned by getAddOpt() """ self.setContext(printer, wikiDocument, wordList, printType, addopt) text = self._buildText() pddata = wx.PrintDialogData(self.printer.getPrintData()) printout = PlainTextPrintout(text, self.printer, addopt) printout2 = PlainTextPrintout(text, self.printer, addopt) preview = wx.PrintPreview(printout, printout2, pddata) frame = wx.PreviewFrame(preview, self.mainControl, _(u"Print Preview"), style=wx.DEFAULT_FRAME_STYLE | wx.FRAME_FLOAT_ON_PARENT) frame.Initialize() frame.SetPosition(self.mainControl.GetPosition()) frame.SetSize(self.mainControl.GetSize()) frame.Show(True)
def print_setup(self, evt): '''Print''' foo = cgi.escape(self.tab_list[self.current_tab].GetText()) testo = replace(foo, "\n", "<br>") testo = replace(testo, "\r\n", "<br>") testo = replace(testo, " ", " ") testo = replace(testo, "\t", " ") self.printData = wx.PrintData() self.printData.SetPaperId(wx.PAPER_A4) pdd = wx.PrintDialogData() pdd.SetPrintData(self.printData) pdd.EnablePrintToFile(0) pdd.SetMinPage(1) pdd.SetMaxPage(5) pdd.SetAllPages(True) dlg = wx.PrintDialog(self, pdd) if dlg.ShowModal() == wx.ID_OK: pdd = dlg.GetPrintDialogData() else: dlg.Destroy() return dlg.Destroy() printer = wx.Printer(pdd) printout = wx.HtmlPrintout( title=str(self.tab_list[self.current_tab].dir_to_file)) printout.SetMargins(top=15, bottom=15, left=13, right=13) printout.SetHtmlText(testo) printer.Print(self, printout, prompt=FALSE) printout.Destroy()
def menuPrintPreview( self, event ): self.commit() title = self.getTitle() page = self.pages[self.notebook.GetSelection()] try: grid = page.getGrid() printout = SprintMgrPrintout( title, grid ) printout2 = SprintMgrPrintout( title, grid ) except AttributeError: if page == self.graphDraw: printout = GraphDrawPrintout( title, page ) printout2 = GraphDrawPrintout( title, page ) else: return data = wx.PrintDialogData(self.printData) self.preview = wx.PrintPreview(printout, printout2, data) self.preview.SetZoom( 110 ) if not self.preview.IsOk(): return pfrm = wx.PreviewFrame(self.preview, self, "Print preview") pfrm.Initialize() pfrm.SetPosition(self.GetPosition()) pfrm.SetSize(self.GetSize()) pfrm.Show(True)
def Print(self): '''Print(self) --> None Prints the values to the printer ''' pd = wx.PrintData() pd.SetPrinterName('') pd.SetOrientation(wx.LANDSCAPE) pd.SetPaperId(wx.PAPER_A4) pd.SetQuality(wx.PRINT_QUALITY_DRAFT) pd.SetColour(True) pd.SetNoCopies(1) pd.SetCollate(True) pdd = wx.PrintDialogData() pdd.SetPrintData(pd) pdd.SetMinPage(1) pdd.SetMaxPage(1) pdd.SetFromPage(1) pdd.SetToPage(2) pdd.SetPrintToFile(True) printer = wx.Printer(pdd) self._update_printer() self.prt.Print()
def OnPrintSetup(self): data = wx.PrintDialogData(self.printData) printerDialog = wx.PrintDialog(self, data) printerDialog.GetPrintDialogData().SetSetupDialog(True) printerDialog.ShowModal() self.printData = wx.PrintData( printerDialog.GetPrintDialogData().GetPrintData()) printerDialog.Destroy()
def printSetup(self): data = wx.PrintDialogData(self.pdata) dlg = wx.PrintDialog(self.parent, data) dlg.GetPrintDialogData() result = dlg.ShowModal() data = dlg.GetPrintDialogData() self.pdata = wx.PrintData(data.GetPrintData()) dlg.Destroy()
def _getPrintDialogData(self, printdata): """ Получить настройки диалога печати по умолчанию """ pdd = wx.PrintDialogData(printdata) pdd.SetAllPages(True) pdd.EnableSelection(False) return pdd
def print_plot(self, evt): printout = backend_wx.PrintoutWx(self.canvas) dialog_data = wx.PrintDialogData() compat_wx.configure_print_dialog_data(dialog_data) printer = wx.Printer(dialog_data) if not printer.Print(self, printout, True): if printer.GetLastError() == wx.PRINTER_ERROR: gui_util.message("A printing error occurred.")
def Preview(self): print "Print Preview!---------->" data = wx.PrintDialogData(self.printData) printout = SetPrintout(self) self.preview = wx.PrintPreview(printout, None, data) if not self.preview.Ok(): wx.MessageBox("There was a problem printing!", "Printing", wx.OK) return
def OnPrintSetup(self, evt): data = wx.PrintDialogData(self.pdata) dlg = wx.PrintDialog(self, data) dlg.GetPrintDialogData().SetSetupDialog(True) dlg.ShowModal(); data = dlg.GetPrintDialogData() self.pdata = wx.PrintData(data.GetPrintData()) # force a copy dlg.Destroy()
def Print(self): pdd = wx.PrintDialogData(self.printData) printer = wx.Printer(pdd) printout = SetPrintout(self) if not printer.Print(self.parentFrame, printout): wx.MessageBox("There was a problem printing.\nPerhaps your current printer is not set correctly?", "Printing", wx.OK) else: self.printData = wx.PrintData( printer.GetPrintDialogData().GetPrintData() ) printout.Destroy()
def Preview(self, args, parent = None): self.body.Retrieve(*args) printData = wx.PrintDialogData(self.printData) preview = wx.PrintPreview(self.printout, self.printoutForPrinting, printData) frame = wx.PreviewFrame(preview, parent, self.title, size = self.defaultSize) frame.Initialize() frame.Show(True)
def Menu109(self, evt): p = self.nb.GetSelection() # self.docs[p]. print "printing" pdd = wx.PrintDialogData(self.pd) printer = wx.Printer(pdd) ToBePrinted = self.docs[p] self.pd = wx.PrintData( printer.GetPrintDialogData().GetPrintData() ) ToBePrinted.Destroy()
def PrintText(self, htmltext, basepath="", scale=1.0): pdd=wx.PrintDialogData() if self.printData.Ok(): pdd.SetPrintData(self.printData.copy()) if not pdd.GetPrintData().Orientation: pdd.GetPrintData().SetOrientation(wx.PORTRAIT) printer=wx.Printer(pdd) with guihelper.WXDialogWrapper(self._getprintout(htmltext, basepath, scale)) \ as printout: printer.Print(self.parent, printout)
def print_plot(self, evt): printout = backend_wx.PrintoutWx(self.canvas) dialog_data = wx.PrintDialogData() if wx.VERSION < (2, 5): dialog_data.EnableHelp(False) dialog_data.EnablePageNumbers(False) dialog_data.EnableSelection(False) printer = wx.Printer(dialog_data) if not printer.Print(self, printout, True): if printer.GetLastError() == wx.PRINTER_ERROR: gui_util.message("A printing error occurred.")
def OnDoPrint(self, event): pdd = wx.PrintDialogData(self.printData) pdd.SetToPage(2) printer = wx.Printer(pdd) printout = MyPrintout(self.canvas, self.log) if not printer.Print(self.frame, printout, True): wx.MessageBox("There was a problem printing.\nPerhaps your current printer is not set correctly?", "Printing", wx.OK) else: self.printData = wx.PrintData( printer.GetPrintDialogData().GetPrintData() ) printout.Destroy()