我正在构建一个纯actionscript项目,并想创建一个pdf与世界地图图表显示我的数据。
这是可能的创建一个地图,并保存为图像,然后嵌入在pdf与livepdf?
package
{
import MyButton;
import flash.display.*;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.external.*;
import flash.net.*;
import flash.net.FileReference;
import flash.system.Security;
import flash.utils.ByteArray;
import org.alivepdf.display.*;
import org.alivepdf.fonts.*;
import org.alivepdf.layout.*;
import org.alivepdf.pdf.*;
import org.alivepdf.saving.*;
public class WorldTest extends Sprite
{
private var saveButton:MyButton = new MyButton();
// declared of logo or imagen on top of the PDF's document.
[Embed(source="FCMap_World.swf", mimeType="application/octet-stream" )]
protected var jpgBytes:Class;
protected var pdf:PDF;
public function WorldTest() {
saveButton.y = 0;
addChild(saveButton);
this.addEventListener(MouseEvent.CLICK, onMouseClickEvent);
}
protected function onMouseClickEvent(event:Event):void{
pdf = new PDF(Orientation.LANDSCAPE, Unit.MM, Size.LETTER);
pdf.setDisplayMode(Display.FULL_WIDTH);
pdf.addPage();
pdf.addImage(new jpgBytes() as DisplayObject, null, 0, 0, 0);
var bytes:ByteArray = pdf.save(Method.LOCAL);
var file:FileReference = new FileReference();
file.save(bytes, "myPDF.pdf");
}
}
}
似乎您正在尝试添加swf文件作为图像。你需要先从它制作一个图像。
var map : MovieClip = new jpgBytes();
var bitmapData : BitmapData = new BitmapData(map.width, map.height);
bitmapData.draw(map);
var bitmap : Bitmap = new Bitmap(bitmapData);
你可以尝试使用另一个名为PDFcase的库在ActionScript中创建pdf。
这个例子展示了如何添加图像到pdf。