GraphicsMagick + im4java, как удалить цветовой профиль (и другие лишние данные)

Я использую graphicsmagick + im4java для создания эскизов в моем веб-приложении. К сожалению, как я вижу, при обработке снимков, сделанных фотокамерами, миниатюры содержат все исходные данные, такие как цветовой профиль, диафрагма, производитель/модель камеры и т.д. Другими словами, намного больше, чем требуется для отображения на странице простой миниатюры. Конечно, это приводит к большому размеру файла эскиза. Миниатюра той же фотографии, которая была сохранена для Интернета из любого графического редактора, намного меньше.

Как я могу избавиться от нежелательных данных с помощью im4java перед дальнейшей обработкой?


person biesior    schedule 14.11.2012    source источник


Ответы (1)


Проблема решена, следуя этому суть:

mogrify +profile '*' -define jpeg:preserve-settings

Я решил проблему в im4java с помощью p_profile(java.lang.String profileName) метод:

ConvertCmd cmd = new ConvertCmd();
IMOperation op = new IMOperation();

op.addImage(sourcePath);
op.p_profile("*");
op.scale(123);
op.addImage(targetPath);

cmd.run(op);
person biesior    schedule 14.11.2012