【发布时间】:2010-07-13 19:15:08
【问题描述】:
CoreGraphics 提供了呈现 PDF 文档的可能性,这很棒。但它似乎也可以支持其他类型,如 Word 文档、HTML、RTF 等。
快速浏览一下 Mac OS X Developer DVD 上的 doc2pdf.py 示例让我这么想:
pageRect = CGRectMake(0, 0, 612, 792)
c = CGPDFContextCreateWithFilename(output_file, pageRect)
c.beginPage(pageRect)
如果 fnmatch(ext,".txt") 或 fnmatch(ext,".?") 或 fnmatch(ext,".??"):
tr = c.drawPlainTextInRect(text, pageRect, font_size)
elif fnmatch(ext,".rtf"):
tr = c.drawRTFTextInRect(text, pageRect, font_size)
elif fnmatch(ext,".htm*") 或 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)
别的:
return "Error: unknown type '%s' for '%s'"%(ext, input_file)
不幸的是,我不明白 CoreGraphics 的 Python 绑定是如何工作的(而且绑定本身似乎是二进制和专有的)。我在 Apple 开发人员文档中找不到这些方法的 C/Obj-C 等效项。谷歌搜索到的网页并没有太多谈论这些功能。
有什么想法吗?
【问题讨论】:
标签: html cocoa ms-word core-graphics rtf