使用php和TCPDF來生成一個pdf文件。除了當我嘗試使用ImageEPS()
將EPS圖像寫入pdf時,一切都很好。什麼都沒有出現。沒有錯誤(它肯定能找到文件)。它只是顯示爲空白。eps圖像(來自inkscape)沒有出現在tcpdf
光柵圖像(如PNG/JPG)工作得很好。
我正在使用Inkscape來保存.eps文件。當我在任何其他程序中打開文件時,它會打開很好。它唯一的TCPDF,它沒有顯示出來。
使用php和TCPDF來生成一個pdf文件。除了當我嘗試使用ImageEPS()
將EPS圖像寫入pdf時,一切都很好。什麼都沒有出現。沒有錯誤(它肯定能找到文件)。它只是顯示爲空白。eps圖像(來自inkscape)沒有出現在tcpdf
光柵圖像(如PNG/JPG)工作得很好。
我正在使用Inkscape來保存.eps文件。當我在任何其他程序中打開文件時,它會打開很好。它唯一的TCPDF,它沒有顯示出來。
我已經在Adobe Illustrator中打開我的* .ai文件並將該文件保存爲「Illustrator 3」版本以解決該問題。任何更新的版本產生你描述的結果(除了「Illustrator 8」,它給了我的* .ai文件的B & W版本)。
有點晚了,但我有同樣的問題。
對我來說,解決方法是導出爲PDF和TCPDF重用這個PDF/FPDI有:
$num_pages = $pdf->setSourceFile(path_to_file);
$template_id = $pdf->importPage(1); //if the grafic is on page 1
$pdf->useTemplate($template_id,$x,$y,$width,$height);
在TCPDF(6.0.004)的ImageEPS功能還沒有完全實現與文檔指出以下:
/**
* Embed vector-based Adobe Illustrator (AI) or AI-compatible EPS files.
* NOTE: EPS is not yet fully implemented, use the
* setRasterizeVectorImages() method to enable/disable rasterization of
* vector images using ImageMagick library.
* ...
*/
public function ImageEps(...){/*...*/}
TCPDF(6.0.004)檢查其創建者的eps元數據。如果創建者是Adobe Illustrator,則會進行版本檢查,如果版本高於8,則會生成錯誤。 除Adobe Illustrator以外的創作者未被選中,並且該功能被允許繼續。似乎並不像TCPDF解析PS序言,這可能是爲什麼不支持所有AI版本的原因之一。以下是PostScript Language Reference說,關於序言部分:
由於prolog沒有被解析,所以正確解釋文件會很麻煩。
Inkscape(0.48.3.1 r9886)用cairo創建epses,不會發生錯誤,並且該函數將繼續。 TCPDF將部分解釋eps,但由於它不輸出任何內容,輸出可能會由於某些錯誤處理而被刪除。但這只是一個猜測。
我有更多的成功與出口我EPS爲SVG與 Inkscape的-D --file = filename.eps --export-純SVG = filename.svg 和使用ImageSVG
代替。注意:這個功能也沒有完全實現,所以我不能保證它會起作用。我只測試了一個非常基本的eps。
我正在測試TCPDF庫,可悲的是,我發現只有Illustrator 3文件可以工作。我可以確認,當我使用Illustrator 8時,它幾乎全是黑色的(不是黑白,棕色文本通過,但沒有矢量圖形顏色),而Illustrator 9和以上版本根本不起作用。 – Josh 2011-09-30 14:22:36