2013-02-04 96 views
10

我有一個批處理腳本,可將我的PNG-24(具有透明度)圖像轉換爲50%和25%的尺寸(用於移動開發)。通常這些圖像中都有顏色,但現在我試圖轉換沒有顏色的圖像,ImageMagick不斷地將顏色空間配置文件更改爲「灰色」,這會在我使用的3D引擎(Unity)中混淆我的圖像。ImageMagick:convert不斷將色彩空間更改爲灰色。如何保留sRGB色彩空間?

我試過強迫它使用TrueColor類型,colorspace sRGB和sRGB.icc配置文件(包含在OSX中),但它似乎並不在乎。它仍然將其更改爲Gray。

> convert old.png -profile srgb.icc -colorspace sRGB -type TrueColor new.png 
> identify *.png 
    old.png PNG 140x140 140x140+0+0 8-bit sRGB 3.68KB 0.000u 0:00.000 
    new.png PNG 140x140 140x140+0+0 8-bit sRGB 256c 2.33KB 0.000u 0:00.000 

ImageMagick的仍然將其識別爲一個8位的sRGB圖像,但它提出「256C」後,這我假設意味着它有降低下來到256種顏色,這是我不希望任何。當我看着OSX Preview.app中的圖像時,它表示它正在使用灰色顏色配置文件。該圖像在視覺上看起來也很不一樣。

這裏是我使用的圖像:https://dl.dropbox.com/u/59304/old.png

有一個重複的問題在這裏,ImageMagick Reduces Colorspace to Gray,但答案不爲我工作,我沒有足夠的聲譽對他的回答提出意見,遺憾的是。我想象我的情況是不同的,因爲我使用的是PNG而不是JPG。

Version: ImageMagick 6.8.0-7 2013-01-02 Q16 http://www.imagemagick.org 
Features: OpenCL 

編輯 - 作爲一個答案指定閱讀ImageMagick的論壇後,它看起來像只是前面加上PNG32:或PNG24:輸出文件解決了這個問題。

回答

9

我會查看Imagemagick論壇;這裏有一個帖子可能有幫助。 http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=22654&p=94555&hilit=sRGB+png#p94555

我沒有做任何特別的png圖像,但從我看到的有很多不同類型的png。

+1

是的,謝謝!在輸出文件名前面加上PNG32:或者PNG24:似乎可以做到這一點。 – tayl0rs

+0

我在tayl0rs獲得了可接受的答案嗎? – Bonzo

+0

是的=)對不起,我試圖upvote之前,但沒有注意到大複選框,這意味着接受的答案。 – tayl0rs