[心得]使用Flash 操作 PDF

最近剛好有用到,把心得整理一下

一、使用Flash顯示PDF:

Flash可透過HTMLLoader直接顯示PDF,而Flex則可用HTML Tag,這兩者都是用瀏覽器嵌入的方式呈現,效果跟Firefox、IE直接打開PDF一樣,雖然能顯示PDF,但Flash的渲染邏輯跟想像的不同,顯示的PDF文件會被置於最上層,跟Flash Index無關,且無法操作PDF文件,有一種比較特殊的作法是Cross-Scripting,透過Flash -> DOM -> PDF -> Javascript的方式操作,HTMLLoader讀取嵌入PDF的網頁,透過DOM操作PDF內的JavaScript,這種做法很麻煩而且PDF必須事先埋JavaScript,有興趣的朋友可參考Cross-Scripting PDF一文。

剛談論的HTMLLoader跟HTML都只能在AIR中使用,也就是Flash並沒有給Web顯示PDF的方法,雖說如此,網路上還是有看到有人用Flash做PDF Viewer(豆丁網),這部分可能是使用PDF轉SWF的技術,由於PDF文件格式是公開的,所以網路上有很多第三方的Parser,其中一種就是PDF轉向量SWF檔,這種技術的好處是可完整操作,且也能去掉一些文件屬性,像是Navigate tag跟Page Layout等..,讓顯示不受文件影響。

補充一些線上的PDF轉換網站:

PDF Online:http://www.pdfonline.com/convert-pdf/

PDF Convert:http://www.freepdfconvert.com/

PDFMenot:http://pdfmenot.com/

二、使用Flash產生PDF

有個好用的第三方Library─AlivePDF,這是改自PHP的FPDF,可產生文字及圖片,功能很完整但不支援中文 ,該作者也有注意到這個問題,期待他的更新版

logo.jpg

AlivePDF:http://www.alivepdf.org/

三、使用Flash解析PDF

Parser的部分比較少,筆者只找到Pavo這個由日本人撰寫的Parser,只能取出PDF的資訊及內文,無法取出圖片,重點是沒什麼教學,且裡面有用到File、FileStream等AIR才有的Class,所以這個Parser也只能給AIR使用。

Pavo:http://code.google.com/p/pavo/

0 意見 :: [心得]使用Flash 操作 PDF