def printing(self, printout, media=''): appdata = printout.app.appdata path = os.path.join(appdata.app_temp_dir, 'printout.pdf') fileptr = open(path, 'wb') pages = printout.get_print_pages() renderer = pdfgen.PDFGenerator(fileptr, printout.get_cms(), pdfconst.PDF_VERSION_DEFAULT) creator = '%s %s' % (appdata.app_name, appdata.version) producer = '%s %s' % ('UniConvertor', appdata.version) renderer.set_creator(creator) renderer.set_producer(producer) title = '%s - [%s]' % (creator, printout.doc.doc_name) renderer.set_compression(True) renderer.set_colorspace(self.colorspace) renderer.set_spot_usage(False) renderer.set_progress_message(_('Printing in progress...')) renderer.set_num_pages(len(pages)) w, h = self.get_page_size() for page in pages: renderer.start_page(w, h, self.shifts[0], self.shifts[1]) for group in page.childs: renderer.render(group.childs, True) renderer.end_page() renderer.save() fileptr.close() options = self.get_printing_options() if media: options['media'] = media self.connection.printFile(self.cups_name, path, title, options)
def printing(self, printout): pages = printout.get_print_pages() renderer = pdfgen.PDFGenerator(self.filepath, printout.get_cms(), self.pdf_version) self.set_meta(renderer, printout.app) renderer.set_compression(self.compressed) renderer.set_colorspace(self.colorspace) renderer.set_spot_usage(self.use_spot) renderer.set_progress_message(_('Printing in progress...')) renderer.set_num_pages(len(pages)) w, h = self.get_page_size() for page in pages: renderer.start_page(w, h) for group in page.childs: renderer.render(group.childs, True) renderer.end_page() renderer.save()