0

我正在尝试将 DataGrid 的内容导出为 PDF

var bytes:ByteArray = myPDF.save(Method.LOCAL);
var f:FileReference = new FileReference();
f.save(bytes,"TestAttachment.pdf"); 
/* Call to a possibly undefined method save through a reference with static type flash.net:FileReference. */

我正在使用 AlivePDF 版本 0.1.4.9 和 flex builder 3 来构建一个简单的 Flex 应用程序

4

3 回答 3

1

FileReference 只是对文件的引用,您正在寻找 FileStream。假设 ByteArray 已经是 PDF 内容:

var bytes:ByteArray = myPDF.save(Method.LOCAL);
var file:File = File.desktopDirectory.resolvePath("myPDF.pdf");
var fileStream:FileStream = new FileStream();

fileStream.open(file, FileMode.WRITE);
fileStream.writeBytes(bytes);
fileStream.close();

对于不同设备上的目录位置, 请查看

于 2015-06-08T13:18:35.393 回答
1

将 flex SDK 更新为 3.6A,将 Flex 编译器版本更新为 10.1.0,感谢 @(Yasuyuki Uno) 和 FileReference.Save 工作

var f:FileReference = new FileReference();
f.save(bytes,"TestAttachment.pdf");
于 2015-06-22T05:53:36.070 回答
0

我认为这个问题是由构建设置引起的。

在 Flex Builder > 项目 > 属性 > Flex 编译器中,将最低 Flash Player 版本设置为 10.0.0 以上。
之后,您可以使用 FileReference.save() 方法。

也许你的设置是 9.xx

于 2015-06-19T08:54:30.340 回答