CoreGraphics提供了渲染PDF文檔的可能性,這非常棒。但它似乎也可以支持其他類型,如Word文檔,HTML,RTF等。使用Cocoa CoreGraphics渲染多種文檔格式
就讓我們來看看在doc2pdf.py例如在Mac OS X開發的DVD讓我這樣想:
pageRect = CGRectMake(0, 0, 612, 792) c = CGPDFContextCreateWithFilename(output_file, pageRect) c.beginPage(pageRect) if fnmatch(ext,".txt") or fnmatch(ext,".?") or fnmatch(ext,".??"): tr = c.drawPlainTextInRect(text, pageRect, font_size) elif fnmatch(ext,".rtf"): tr = c.drawRTFTextInRect(text, pageRect, font_size) elif fnmatch(ext,".htm*") or fnmatch(ext,".php"): tr = c.drawHTMLTextInRect(text, pageRect, font_size) elif fnmatch(ext,".doc"): tr = c.drawDocFormatTextInRect(text, pageRect, font_size) elif fnmatch(ext,"*ml"): tr = c.drawWordMLFormatTextInRect(text, pageRect, font_size) else: return "Error: unknown type '%s' for '%s'"%(ext, input_file)
不幸的是,我不明白是如何工作的CoreGraphics在Python綁定(它似乎是綁定本身是二進制和專有的)。在Apple開發人員文檔中找不到這些方法的C/Obj-C等效項。谷歌沒有發現很多關於這些功能的網頁。
任何想法?