1.png
current라는 이미지가 있다고 가정해 보겠습니다.
500px : height
1000px : width
다음과 같이 조정하고 싶습니다.
50px : height
100px : width
JPG가 아닌 PNG 형식으로 출력해야 합니다. 예를 들어 주시면 감사하겠습니다.
답변1
나는 convert
또는 mogrify
에서 사용할 것입니다이미지 마술사모음곡.
$ convert -resize 100x50 1.png 2.png
# or #
$ mogrify -resize 100x50 1.png
convert
별도의 출력 파일 이름을 사용하여 별도의 파일을 만듭니다.
mogrify
별도의 출력 파일 이름을 사용하지 마십시오.
답변2
소스 이미지와 대상 이미지의 가로 세로 비율이 같기 때문에 지금까지 얻은 답변은 이 특별한 경우에 적용됩니다. 그러나 어떤 크기로든 변경하고 싶다면,그들은 실패할 것이다:
$ file foo.png
foo.png: PNG image data, 1000 x 500, 8-bit/color RGB, non-interlaced
$ convert -resize 100x50 foo.png bar.png
$ file bar.png
bar.png: PNG image data, 100 x 50, 8-bit colormap, non-interlaced
위에서 볼 수 있듯이 이미지 비율을 변경하지 않고도 간단한 변환이 잘 작동합니다. 하지만 변경하고 싶다면 어떻게 해야 할까요?
$ convert -resize 200x50 foo.png bar.png
$ file bar.png
bar.png: PNG image data, 100 x 50, 8-bit colormap, non-interlaced
따라서 배율을 변경하면 위 명령이 실패합니다. convert
이미지를 이런 방식으로 강제로 변경하려면 !
기하학 사양의 끝에 a를 추가해야 합니다(그리고 이는 !
많은 쉘의 특수 문자이므로 로 이스케이프해야 합니다 \!
).
$ convert -resize 200x50\! foo.png bar.png
$ file bar.png
bar.png: PNG image data, 200 x 50, 8-bit colormap, non-interlaced
답변3
이를 위해 Imagemagick을 사용하십시오.
올바른 사용법은 매뉴얼 페이지를 읽어보세요. 하지만 인수를 전달하면 작동할 것입니다.
convert 1.png -resize 50x100 1-resized.png
답변4
ImageMagick의 대체품은 고대 netpbm입니다.
pngtopnm input.png | pnmscale -reduce 10 | pnmtopng > output.png