6

是否可以在 Adob​​e AIR 应用程序中生成 PDF 文档,而无需借助往返 Web 服务来生成 PDF?我查看了 GoogleCode 上的初始 Flex 报告,但它需要往返才能生成实际的 PDF。

鉴于 AIR 应该是 RIA 的桌面端,有没有办法做到这一点?我怀疑我忽略了一些东西,但我对文档的搜索并没有透露太多信息,并且考虑到 AIR 的目标,我无法相信这只是他们没有包括的东西。

4

4 回答 4

7

AlivePDF,这是一个适用于 ActionScript 的 PDF 生成库,它应该可以工作,它只是针对您描述的情况而制作的。

于 2008-09-10T10:09:40.823 回答
1

刚刚添加了一个 Adob​​e Air + Javascript + AlivePDF 演示:

这个演示不需要flex 并且非常简单。

http://www.drybydesign.com/2010/02/26/adobe-air-alivepdf-without-flex/

于 2010-02-26T22:32:07.983 回答
0

我工作的其他团队之一正在开发基于 Flex 的绘图应用程序,他们对 AIR / Flex 没有内置 PDF 创作感到非常惊讶。他们最终基于 PDF 规范推出了自己的简单 PDF 创建器。

于 2008-09-10T03:50:42.933 回答
0

是的,使用 AlivePDF 创建 PDF 非常容易,这里是示例代码,第一种方法创建一个 pdf,第二种方法将 pdf 保存在磁盘上并返回路径,请随时提出任何问题。

public function createFlexPdf() : String
{
    pdf = new PDF();
    pdf.setDisplayMode (Display.FULL_WIDTH,Layout.ONE_COLUMN,Mode.FIT_TO_PAGE,0.96);
    pdf.setViewerPreferences(ToolBar.SHOW,MenuBar.HIDE,WindowUI.SHOW,FitWindow.RESIZED,CenterWindow.CENTERED);
    pdf.addPage();
    var myFontStyle:IFont = new CoreFont ( FontFamily.COURIER );
    pdf.setFont(myFontStyle,10);
        pdf.addText('Kamran Aslam',10,20);//String, X-Coord, Y-Coord 
    return savePDF();
}
private function savePDF():String
{
    var fileStream:FileStream = new FileStream();
    var file:File = File.createTempDirectory();
    file = file.resolvePath("temp.pdf");
    fileStream.open(file, FileMode.WRITE);
    var bytes:ByteArray = pdf.save(Method.LOCAL);
    fileStream.writeBytes(bytes);
    fileStream.close();
    return file.url;
}
于 2012-01-07T02:10:31.063 回答