(Пакетное) преобразование BMP в PNG с прозрачностью

9671
dtech

У меня есть + - 500 .bmp, которые я хотел бы конвертировать в .png. Было бы особенно хорошо, если бы белый цвет (#FFFFFF) оригинальных BMP мог быть преобразован в прозрачный в .png.

PNG-8 достаточно, поскольку .bmp имеют 16 цветов.

Я бы предпочел инструмент командной строки, который я могу поместить в командный файл, но любой из них будет полезен. Знаете ли вы о таком инструменте?

редактировать: ОС, которую я использую чаще всего, это Windows 7 x64, но у меня также есть Cygwin и различные доступные Linux

2

2 ответа на вопрос

5
Linker3000

ImageMagick может сделать это - взгляните на команду Convert, которая позволяет вам указать цвет, который будет использоваться в качестве значения прозрачности:

http://www.imagemagick.org/script/convert.php

Это определенно кажется многообещающим. `` `convert -transparent white source.bmp dest.png``` делает именно то, что я хочу, однако только mogrify поддерживает несколько файлов и имеет только` `` -transparent-color```, который на самом деле не работает. Смотря дальше dtech 12 лет назад 2
В конце концов я просто использовал скрипт с циклом. Для тех, кто заинтересован, эффективным кодом был `` `convert -transparent white $ f $ png``` dtech 12 лет назад 0
@dtech: а ваша система была Windows, Linux, Mac, Android ....? woliveirajr 12 лет назад 0
@woliveirajr это была оболочка bash, другие оболочки должны разрешать сималарные конструкции dtech 12 лет назад 0
если вы хотите запустить его как bash-скрипт для пакетного преобразования во всю папку, полную файлов: для файла в * .png; конвертировать "$ " -transparent '# ffcc66' "batch / $ "; сделанный Sameer Shemna 9 лет назад 0
2
woliveirajr

Используете какую операционную систему и т. Д.?

Одно из предложений - общий ответ: попробуйте ImageMagik .

Прямо с первой страницы вы можете получить:

Преобразование формата: преобразование изображения из одного формата в другой (например, PNG в JPEG). Прозрачность: сделать части изображения невидимыми.

Пример использования:

convert file.jpg -transparent-color '#ffffff' file.png 

Похожие вопросы