使用带有flex的AlivePDF将PDF导出到本地

时间:2010-06-25 07:03:58

标签: flex alivepdf

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

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

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

提前致谢。

3 个答案:

答案 0 :(得分:4)

自FP10起,FileReference类应通过save()函数支持此功能。在Flash Player 10或更高版本中执行此操作的代码如下所示:

var bytes:ByteArray = pdf.save(Method.LOCAL);
var file:FileReference = new FileReference();
file.save(bytes, "myPDF.pdf");

答案 1 :(得分:1)

试试这个

var pdfFile:PDF = new PDF();
var pdfByteArray:ByteArray =  new ByteArray ();
pdfByteArray = pdfFile.save(Method.LOCAL);

答案 2 :(得分: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");