def convert_pdf2swf(pdf_doc): if not isinstance(pdf_doc, basestring): try: pdf_doc = pdf_doc.read() except AttributeError: return None pdf_temp_file = tempfile.NamedTemporaryFile(delete=False) swf_temp_file = tempfile.NamedTemporaryFile(delete=False) pdf_temp_filename = pdf_temp_file.name swf_temp_filename = swf_temp_file.name pdf_temp_file.write(pdf_doc) pdf_temp_file.close() swf_temp_file.close() gfx.setparameter('poly2bitmap', '1') doc = gfx.open("pdf", pdf_temp_filename) swf = gfx.SWF() swf.setparameter('flashversion', '9') buf = StringIO.StringIO() for pagenr in range(1,doc.pages+1): page = doc.getPage(pagenr) swf.startpage(page.width, page.height) page.render(swf) swf.endpage() swf.save(swf_temp_filename) os.unlink(pdf_temp_filename) return open(swf_temp_filename, 'r')
def convert_pdf2swf(pdf_doc): if not isinstance(pdf_doc, basestring): try: pdf_doc = pdf_doc.read() except AttributeError: return None pdf_temp_file = tempfile.NamedTemporaryFile(delete=False) swf_temp_file = tempfile.NamedTemporaryFile(delete=False) pdf_temp_filename = pdf_temp_file.name swf_temp_filename = swf_temp_file.name pdf_temp_file.write(pdf_doc) pdf_temp_file.close() swf_temp_file.close() gfx.setparameter('poly2bitmap', '1') doc = gfx.open("pdf", pdf_temp_filename) swf = gfx.SWF() swf.setparameter('flashversion', '9') buf = StringIO.StringIO() for pagenr in range(1, doc.pages + 1): page = doc.getPage(pagenr) swf.startpage(page.width, page.height) page.render(swf) swf.endpage() swf.save(swf_temp_filename) os.unlink(pdf_temp_filename) return open(swf_temp_filename, 'r')
def tryOcr(self, pdfFn): doc = gfx.open('pdf', pdfFn) gfx.setparameter('zoom', '160') method = gfx.OCR() txt = self.txtFromDoc(doc, method) return self.getDoiFromTxt(txt)
def updateOptions(self): global options,gfx_options a = [] # FIXME: we clear *our* options- but gfx will still have # stored the old ones. Critical for options in the "imageradio" section. gfx_options.clear() i = 0 print "----- options ------" for option in options: for k,v in option.getSettings().items(): gfx_options[k] = v gfx.setparameter(k,v) print k,v i = i + 1
def Load(self, filename): self.__lastsavefile = self.__SwapExtension(filename, "swf") filename = filename.encode(sys.getfilesystemencoding()) self.__pdffilename = filename #print 'Load',self.__preview_parameters for parameter, value in self.__preview_parameters: gfx.setparameter(parameter, value) try: self.__pdf = gfx.open("pdf", filename) except: Publisher.sendMessage("FILE_NOT_LOADED", {'filename': filename}) else: Publisher.sendMessage("FILE_LOADED", {'pages': self.__pdf.pages})