2017-04-12 18 views
0

의 I는 192x768 px의 파일로 끝날 100x400 px를의 이미지를 다음과 같이 사용하는 경우 :graphicsmagick GM은 -resize도 작은 이미지를 확장 - 크기 변환 "너비 x 높이>"

gm convert -size 1024x768 #{source[:filename]} -resize \"1024x768>\" +profile \"*\" #{source[:web_filename]}

> in 1024x768>change[s] the dimensions of the image only if its width or height exceeds the geometry specification.

1024x768의 크기가 -size 1024x768에 지정 되었기 때문에 작동하지 않는 것 같습니다.

저는 문서에서 -sizespecifies the width x height of the image이라고 말하면서 이미지 헤더를 확인하지 않습니다.

resize example에 제안 된대로 -size을 지정하지 않아도 성능상의 이점을 잃고 싶지는 않지만 이미지를 확대 할 필요가 없으므로 여기에 더 나은 방법이 있습니다 (또는 내가 위에서 말한 것과 함께 스틱의 끝이 틀렸는가?)

+0

내 대답이 문제를 정리 했습니까? 그렇다면 투표 수 옆의 빈 녹색 체크/체크 표시를 클릭하여 답변으로 수락하십시오. 그렇지 않은 경우, 나 또는 다른 누군가가 귀하를 더 멀리 도울 수 있도록 작동하지 않은 것을 말하십시오. 감사. http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 –

답변

0

위의 명령에 #{source[:filename]} 또는 #{source[:web_filename]}이 무엇을 나타내는 지 이해할 수 없지만 오해 한 것으로 의심되는 것은 -size 매개 변수 (예 : 첫 번째 매개 변수)입니다.

파라미터 -sizeGraphicsMagick 같은 label:은 다음 후속 xc:, 후속 gradient: 용으로 자체를 작성할 예정임을 캔버스의 크기를 지정한다. 그것은 아무것도 변경하거나 크기를 변경하지 않습니다.

# Create a solid blue canvas 100x100 
gm convert -size 100x100 xc:blue ... 

# Create a red-blue gradient 400x50 
gm convert -size 400x50 gradient:red-blue ... 
+0

# {source [: xyz]}는 단지 변수입니다 (복사하여 붙여 넣을 수 없습니다). -side 옵션을 제거하여 "수정"할 수있었습니다. 그래서 캔버스 크기를 이미지보다 크게 지정하면'>'는 작동하지 않는다는 것을 의미합니다. 의미가 있지만 더 좋은 방법은 아니란 것을 확인하고 싶었습니다. – avjaarsveld