Как использовать магию изображений для общего преобразования изображений - PullRequest
0 голосов
/ 11 марта 2020

Я хочу конвертировать изображения с расширениями generi c, у меня есть это:

cat "$1" | convert 'jpeg:-' -resize '64x64' - | gsutil cp - "gs://images.xxx.com/${sha_sum}-64x64-${file_without_folder}"

выше работает. Но если я опущу «jpeg: -», это не сработает. Есть ли способ для общего преобразования любого типа файла? Возможно, мне нужен 'jpeg: -', чтобы магия изображения знала, какой тип кодировки файла? Есть ли способ для магии изображения для автоматического определения кодировки, возможно?

Я хочу сделать это:

cat "$1" | convert -resize '64x64' - | gsutil cp - "gs://images.xxx.com/${sha_sum}-64x64-${file_without_folder}"

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

1 Ответ

1 голос
/ 11 марта 2020

Можно, но вы все равно должны указать входной поток:

cat "$1" | convert - -resize '64x64' - | gsutil cp - "gs://images.xxx.com/${sha_sum}-64x64-${file_without_folder}"

Я предполагаю, что это минимальный пример, и вам действительно необходимо прочитать изображение со стандартного в; если нет, просто укажите изображение напрямую:

convert "$1" -resize '64x64' - | gsutil cp - "gs://images.xxx.com/${sha_sum}-64x64-${file_without_folder}"

Обратите внимание, что не все форматы могут быть обнаружены из данных потока. Используйте

identify -list format

для просмотра типов, которые могут быть прочитаны.

...