2

我需要在 flex 应用程序中将图表和数据表导出为 pdf 文件。

为此,我们可以使用 AlivePDF,但我需要导出到本地而不是服务器。

我们可以导出到本地系统提示用户选择要导出的位置吗?

提前致谢。

4

3 回答 3

4

由于 FP10,FileReference类应该通过save()函数支持这一点。在 Flash Player 10 或更高版本中执行此操作的代码如下所示:

var bytes:ByteArray = pdf.save(Method.LOCAL);
var file:FileReference = new FileReference();
file.save(bytes, "myPDF.pdf");
于 2010-06-25T10:01:46.470 回答
1

使用最新版本的 AlivePDF (0.1.5 RC),您可以这样做:

var element:IBitmapDrawable; // Chart to export
var pdf:PDF = new UnicodePDF();
pdf.addPage();

var bitmapData:BitmapData = new BitmapData(element.width, element.height, false, 0xffffff);
try{
    bitmapData.draw(element as IBitmapDrawable);
}catch(e:*)
{
    throw new Error("bitmap draw failed");
}

var jpegencoder:JPEGEncoder = new JPEGEncoder(100);
var byteArray:ByteArray     = jpegencoder.encode(bitmapData);

pdf.addImageStream(byteArray);
var file : FileReference = new FileReference()
file.save(pdf.save(Method.LOCAL),"my.pdf");
于 2012-10-18T14:04:51.563 回答
1

尝试这个

var pdfFile:PDF = new PDF();
var pdfByteArray:ByteArray =  new ByteArray ();
pdfByteArray = pdfFile.save(Method.LOCAL);
于 2011-09-21T06:49:54.597 回答