Пример #1
0
    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)
Пример #2
0
    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()