2013-03-18 79 views
1

Webkit/wkhtmltopdf不支持SVG圖像中填充顏色的icc顏色配置文件嗎?SVG中的ICC顏色配置文件for webkit wkhtmltopdf或定義專色

我有了彩色圖像定義爲:

#e22e27 icc-color(U.S.-Web-Coated--SWOP--v2, 0.0558938, 0.95947204, 0.98716716, 0.00204471) 

這是應該出來紅色(並不會在Inkscape中)

然而,鉻(和其他瀏覽器),只要打開它作爲黑色(我猜是因爲它不能獲得填充顏色?),而且wkhtmltopdf也是黑色的。

有沒有辦法做到這一點?或者更具體地說,是否有任何方法可以在SVG中定義設備專色,以便最終的PDF可以具有紅色(而不是RGB的組合)?

感謝

+0

Adob​​e SVG查看器似乎是顏色配置文件模塊的唯一實現者:http://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28SVG%29#SVG_1.1_support – 2013-03-18 15:55:06

+0

所以我猜測沒有如何通過wkhtmltopdf渲染PDF來指定svg圖形的專色方式? – TheStoneFox 2013-03-18 16:08:52

+0

似乎不太可能,如果它使用Webkit – 2013-03-18 16:20:55

回答

0
如果你打開Inkscape的0.92 SVG

取出的sRGB值#e22e27後,我希望你會看到黑色而不是紅色。這是因爲即使在使用CMYK顏色選擇器時,Inkscape也會讀取/寫入SVG文件的備用sRGB值。據我所知,原生CMYK支持仍然在Inkscape的未來。

在開源PDF渲染器中,mPDF支持defining spot colours by CMYK values,並且還支持在SVG中嵌入SVG子集,這表明它可以原生讀取一些SVG語法。根據其GitHub項目第39期的問題,這將是完全開源解決方案比wkhtmltopdf完全不支持CMYK輸出的更好的起點。

在專有渲染器中,PDFreactor支持直接將CMYK values from an SVG直接傳遞給渲染器,只要它們沒有柵格化,儘管語法看起來不符合W3C SVG規範,並且沒有sRGB回退,所以每個SVG都必須是特別製作。這對於源自Inkscape的簡單圖形來說非常簡單;只用C,M,Y,K值

style="fill:#e22e27 icc-color(U.S.-Web-Coated--SWOP--v2, 0.0558938, 0.95947204, 0.98716716, 0.00204471);fill-opacity:1;fill-rule:nonzero;stroke:none" 

style="fill:cmyk(0.0558938, 0.95947204, 0.98716716, 0.00204471);fill-opacity:1;fill-rule:nonzero;stroke:none" 

我最近在嘗試匹配SVGs和顏色之間使用這種技術只是在你的SVG代替例如在文檔的CSS中指定CMYK值,例如在徽標和字體顏色之間。對於新興的device-cmyk語法,請參閱CSS Color Module Level 4;同時PDFreactor使用CSS的非標準cmyk語法,如上面的SVG示例所示。

一般來說,我想知道在本地CMYK SVG中嵌入顏色配置文件的價值。也許假設是我們從sRGB值開始並需要近似值,但在我的工作流程中,我將從CMYK值開始。我希望對此做出澄清。此外,僅僅因爲印刷機,大陸或紙張發生了變化,重新創建每個SVG文件都會非常耗時。