SWFTools提供了一系列將各類文件轉成swf的工具:
font2swf.exe
gif2swf.exe
jpeg2swf.exe
pdf2swf.exe
png2swf.exe
wav2swf.exe
具體的功能就顧名思義了。
其中把pdf轉成swf的工具就是pdf2swf了。在命令行中運行pdf2swf src.pdf des.swf通常能知足需求。而命令行參數能夠經過pdf2swf -f獲得:
-h , –help Print short help message and exit 打印幫助信息
-V , –version Print version info and exit 打印版本號
-o , –output file.swf Direct output to file.swf. If file.swf contains ‘13568621′ (file13568630.swf), then each page指定輸出的swf文件名
-p , –pages range Convert only pages in range with range e.g. 1-20
or 1,4,6,9-11 or
指定轉換的頁面範圍,使用的頁碼描述方法與打印機打印文件時候的選頁同樣
-P , –password password Use password for deciphering the pdf.指定打開pdf的密碼
-v , –verbose Be verbose. Use more than one -v for greater effect.轉換時輸出詳細的內容
-z , –zlib Use Flash 6 (MX) zlib compression.使用Flash 6的zlib壓縮機制
-i , –ignore Allows pdf2swf to change the draw order of the pdf. This may make the generated容許程序修改pdf的繪製順序,可能會致使結果與原來有差別
-j , –jpegquality quality Set quality of embedded jpeg pictures to quality. 0 is worst (small), 100 is best (big). (default:85)設置轉換其中的jpeg圖片的質量,從0到100,默認值是85。
-s , –set param=value Set a SWF encoder specific parameter. See pdf2swf -s help for more information. 設置SWF轉碼時候的參數,具體參數能夠用pdf2swf -s help獲取
-w , –samewindow When converting pdf hyperlinks, don’t make the links open a new window. 設置轉換後的swf打開原pdf中的鏈接時使用相同的窗口
-t , –stop Insert a stop() command in each page. 在每頁結尾添加一個stop()命令
-T , –flashversion num Set Flash Version in the SWF header to num. 設置SWF所使用的flash版本號
-F , –fontdir directory Add directory to the font search path. 指定字體文件所在路徑
-b , –defaultviewer Link a standard viewer to the swf file. 指定默認的swf導航文件,用來翻頁、放大縮小等等
-l , –defaultloader Link a standard preloader to the swf file which will be displayed while the main swf is loading. 指定默認的swf加載文件,用來顯示加載進程效果
-B , –viewer filename Link viewer filename to the swf file. 指定swf導航文件,做用同-b
-L , –preloader filename Link preloader filename to the swf file. 指定swf加載文件,做用同-l
-q , –quiet Suppress normal messages. Use -qq to suppress warnings, also. 不打印普通訊息,用-qq就不打印警告信息。
-S , –shapes Don’t use SWF Fonts, but store everything as shape. 不使用字體,全部都轉爲形狀。
-f , –fonts Store full fonts in SWF. (Don’t reduce to used characters). 在swf中保存所有字體。
-G , –flatten Remove as many clip layers from file as possible. 在文件中儘可能去除影片層,合併它們
-I , –info Don’t do actual conversion, just display a list of all pages in the PDF. 不作實際轉換,僅顯示PDF的信息。
-Q , –maxtime n Abort conversion after n seconds. Only available on Unix. 若是運行時間超時則退出。
--------------------------------------------------------------------------------
而後看看-s均可以設置些什麼:
PDF Parameters:
PDF device global parameters:
fontdir= a directory with additional fonts 指定字體目錄, 與1級參數的-F相若
font= an additional font filename 增長額外的字體文件
pages= the range of pages to convert (example: pages=1-100,210-) 指定頁面範圍,與1級參數的-p相若
zoom= the resolution (default: 72) 指定分辨率,默認爲72dpi
languagedir= Add an xpdf language directory 增長一個xpdf的語言目錄,對非西歐字符有用
multiply= Render everything at the resolution 在幾倍分辨率下渲染
poly2bitmap Convert graphics to bitmaps 把其中的圖形轉成點陣
bitmap Convert everything to bitmaps 把全部內容轉成點陣(包括字體)
SWF Parameters:
SWF layer options:
jpegsubpixels=<pixels> resolution adjustment for jpeg p_w_picpaths (same as jpegdpi, but in pixels) jpeg圖片的分辨率
ppmsubpixels=<pixels> resolution adjustment for lossless p_w_picpaths (same asppmdpi, but in pixels) 無損圖片的分辨率
subpixels=<pixels> shortcut for setting both jpegsubpixels and ppmsubpixels 快速設置上兩個參數
drawonlyshapes convert everything to shapes (currently broken) 全部都轉成圖形
ignoredraworder allow to perform a few optimizations for creating smaller SWFs 容許執行一些小優化
linksopennewwindow make links open a new browser window 連接打開新窗口
linktarget target window name of new links 新連接窗口的名稱
linkcolor=<color) color of links (format: RRGGBBAA) 連接的顏色
linknameurl Link buttons will be named like the URL they refer to (handy for iterating through links with actionscript) 連接名稱與連接URL一致
storeallcharacters don’t reduce the fonts to used characters in the output file 保存全部的字符字體
enablezlib switch on zlib compression (also done if flashversion>=7) 使用zlib壓縮
bboxvars store the bounding box of the SWF file in actionscript variables 在as中保存swf的區域大小
dots Take care to handle dots correctly 保存單點顯示
reordertags=0/1 (default: 1) perform some tag optimizations 執行某些tag優化
internallinkfunction=<name> when the user clicks a internal link (to a different page) in the converted file, this actionscript function is called 內部連接函數,若是點擊一個內部連接,將調用該actionscript函數
externallinkfunction=<name> when the user clicks an external link (e.g. http://www.foo.bar/) on the converted file, this actionscript function is called 外部連接函數,若是點擊一個外部連接,將調用該actionscript函數
disable_polygon_conversion never convert strokes to polygons (will remove capstyles and joint styles) 不要將筆畫轉成多邊形
caplinewidth=<width> the minimum thichness a line needs to have so that capstyles become visible (and are converted) 線條最低轉換寬度,比這個細的線條將不轉換
insertstop put an ActionScript 「STOP」 tag in every frame 在swf的每一個楨中添加stop()函數
protect add a 「protect」 tag to the file, to prevent loadingin the Flash editor 增長protect標籤,禁止在flash中加載該swf
flashversion=<version> the SWF fileversion (6) 設置最低swf版本
framerate=<fps> SWF framerate 設置楨率
minlinewidth=<width> convert horizontal/vertical boxes smaller than thiswidth to lines (0.05)將寬度少於某值的矩形轉成線條
simpleviewer Add next/previous buttons to the SWF 使用簡單的導航
animate insert a showframe tag after each placeobject (animate draw order of PDF files) ???
jpegquality=<quality> set compression quality of jpeg p_w_picpaths 設置jpeg的壓縮質量
splinequality=<value> Set the quality of spline convertion to value (0-100, default: 100). 設置樣條曲線的轉換質量
disablelinks Disable links. 禁止連接
--------------------------------------------------------------------------------
在含中文的pdf轉換時會遇到一些麻煩,具體的解決方法:(http://blog.csdn.net/jiang1984j/archive/2010/07/23/5757427.aspx)
1. 下載swftools:http://www.swftools.org/download.html
下載xpdf xpdf-chinese-simplified
下載兩個中文字體文件 字體文件
2 .安裝swftools 至任意路徑
解壓縮xpdf 至任意路徑
解壓縮中文字體至xdpf\chinese-simplified\CMap文件夾下
3. 修改xpdf下xpdfrc文件 將cidToUnicode 等路徑改成本機路徑,
修改xpdf下chinese-simplified\add-to-xpdfrc文件 同上
4. 打開命令行窗口: pdf2swf -o 輸出文件路徑 -t 輸入文件路徑 -s languagedir=xpdf路徑\chinese-simplified
--------------------------------------------------------------------------------
有些pdf中的圖形轉換效果很差,會產生過多shape,這種狀況下可使用 -s poly2bitmap 的參數,將圖形轉成點陣。生成的swf尺寸少了。html