Flash/Flex 开发中的AS3 PDF库alivepdf
http://www.alivepdf.org/ (国内可能需要代理访问)是一个在Flash/Flex中使用Actionscript3生成PDF的工具库。其代码放在google code上面:http://code.google.com/p/alivepdf/
LivePDF 可以轻松的生成打印用的报表PDF.
由于Actionscript3本身对打印的支持不是非常到位,导致我们一般情况下,在Flash中,如果需要打印,不仅操作打印的步骤比较繁琐,而且,打印出来的内容由于都转换成了位图,也会导致打印过程中产生一些失真的情况。
而如果使用alivepdf库,则可以将文字,图片甚至矢量图绘制到PDF文档中去。使用alivepdf生成的pdf文档,文字不会被转换为图片,图像也不会由于失真而看上去比较乱。
另外,alivepdf的使用非常简单易懂.
他有两种PDF生成模式
1,在服务器远程生成
服务器远程生成的机制是为了兼容Flash Player9,因为Flash player9的用户无法直接保存文件到本地,需要服务器生成后下载文件。如果你的目标是Flash Payer10,则不需要远程服务器生成
2,在本地直接生成
其代码非常简单易懂,下面简单介绍一下代码
var myPDF:PDF = new PDF( Orientation.LANDSCAPE, Unit.MM, Size.A4 );
这行代码创建一个PDF对象,使用A4纸张,单位是毫米,A4纸张横向放置。
如果选择Orientation.PORTRAIT 则是纸张纵向使用
由于在PDF中绘制是矢量,我们需要指明其缩放模式。
myPDF.setDisplayMode ( Display.REAL );
这行代码会按照100%的方式把你绘制的内容缩放到纸张上。
myPDF.addPage();
在PDF中添加一页
myPDF.lineStyle ( new RGBColor ( 0x990000 ) ); myPDF.drawCircle ( 20, 20, 20 );
在PDF中绘制一个圆圈。注意,这里完全在使用Actionscript3的绘图API,意味着你可以直接直接使用一些AS3的绘图类库和工具类
myPDF.setFont(FontFamily.ARIAL, 'B', 12); myPDF.textStyle ( new RGBColor ( 0x000000) ); myPDF.addCell(50,10,'A clikable cell !', 1, 1, null, 0, 'http://www.riameeting.com');
这里,添加了一个字体为ARIAL的文字,并且,这个文字可以点击链接到www.riameeting.com网址。
最后,我们来保存这个PDF
myPDF.save( Method.REMOTE, 'http://www.riameeting.com/examples/alivepdf/create.php','generated.pdf');
如果你担心你的发布人群中,大家都在使用Flashplayer9,则可以发布为远程生成模式。alivepdf附带了php的代码以及java的代码还有C#代码的服务端代码。直接上传至服务器即可。
如果你使用AIR,则可以直接在本地保存:
var f:FileStream = new FileStream(); file = File.desktopDirectory.resolvePath('pdf/generate.pdf'); f.open( file, FileMode.WRITE); var bytes:ByteArray = myPDF.save(Method.LOCAL); f.writeBytes(bytes);<br /> f.close()<br />
到此,这个PDF就生成好了。 下面的Flash是一个例子

.gif)
.gif)




.gif)
AlivePDF 0.1.5
AlivePDF 0.1.5 还是bata 的,又美德 swc文件,要弄下来好恼火哦,哪个有没得弄好了的1.5的swc哦
.... 难道你不会自己打
....
难道你不会自己打包成SWC文件?FB4里面有一个FlexFrameworkCmdPrompt.bat,用这个打包AS类成SWC包的,打包的方法,自己上网搜吧~~
我用的版本是 AlivePDF 0.1.4.9 ,应该是最新的了吧
我用的版本是 AlivePDF 0.1.4.9,应该是最新的了吧
alivepdf 中文支持
alivepdf 如何设置,能支持中文啊,现在尽是乱码,我用的打印gird ,列头不支持中文
中文支持
如何设置,能支持中文啊,现在尽是问号
需要使用最新版
需要使用最新版
很好不知道最中文支持吗
很好不知道最中文支持吗
最新的alivepdf中增加了
最新的alivepdf中增加了对unicdoe的支持。
因此,中文支持肯定不是问题。
中文支持有问题啊
1.存在bug
2.按照官网上的修改了代码还是不能中文和英文数字一起显示(eg: 中国111aa)
真的很帮,谢谢!
确实很不错,记得之前有很多蓝色的朋友问过,没想到这个这么快就出来了。
发表新评论