Изображения пакетного процесса
-
21-08-2019 - |
Вопрос
Каждый день мне приходится трансформировать несколько сотен изображений определенным образом.
Мне нужен лучший бесплатный инструмент или фрагмент кода на C #, который поддерживает пакетное нанесение водяных знаков, изменение размера изображений и может быть автоматизирован (старую конфигурацию можно использовать повторно).
Какой инструмент вы предлагаете?
Решение
Дэйв Уайнер из scripting.com слава писал о своем успехе с ImageMagick - Магия изображений.Я думаю, это бесплатно.
Другие советы
IrfanView ( Просмотр IrfanView) имеет довольно приличную поддержку пакетной обработки изображений / преобразования.
Если вы хотите внедрить свое собственное решение (и я предполагаю, что именно поэтому вы пометили вопрос "C #"), материал GDI +, встроенный в фреймворк (System.Drawing и его дочерние элементы) довольно мощные, их более чем достаточно, чтобы выполнить то, что вам нужно.Преимущество такого подхода заключается в том, что вы можете определить свои собственные преобразования и применять их массово, если решите закодировать их таким образом.
Посмотрите на Коллекция Netpbm.Он содержит более 300 инструментов и поддерживает сотни графических форматов.Вы можете легко поэкспериментировать с процессом, который хотите выполнить, используя инструменты один за другим, а позже связать их вместе в сценарий.Это открытый исходный код, поэтому, если вы хотите получить максимальную производительность, вы даже можете упаковать интересующий вас код в отдельную программу.
Обычно вы работаете с netpbm, объединяя инструменты в конвейер.Итак, вы бы использовали памперсы чтобы масштабировать ваше изображение, и памкомп чтобы объединить результат с водяным знаком.Если водяной знак варьируется в зависимости от каждого изображения, вы можете использовать pbmтекст чтобы создать его.
Существует множество примеров выполнения подобных манипуляций с изображениями с помощью C #, это не очень сложно.
Вот две статьи от Джоэла Нойбека, которые изменяют размер изображения и ставят водяные знаки.
http://www.codeproject.com/KB/GDI-plus/imageresize.aspx
http://www.codeproject.com/KB/GDI-plus/watermark.aspx
Вы могли бы упаковать все это вместе и написать простую программу для обработки всех изображений при выполнении этих операций.
Смотрите Преобразование IMG по адресу http://www.abadev.com