behavior of different versions of ImageMagick - "image over"

Questions and postings pertaining to the usage of ImageMagick regardless of the interface. This includes the command-line utilities, as well as the C and C++ APIs. Usage questions are like "How do I use ImageMagick to create drop shadows?".
Post Reply
dmarconato
Posts: 1
Joined: 2011-09-14T09:05:18-07:00
Authentication code: 8675308

behavior of different versions of ImageMagick - "image over"

Post by dmarconato »

Hello everyone,

can you help me .....


In a production machine using imagemagick, this machine with operating system version 5.5 uses CentoOs IM 6.2.8.


In particular, the operation that I do is:
convert-size 680x304 xc: white-draw "image over 670x304 0.0 'input.jpg'" output.jpg
this command does is build a white panel of 680x304px and added an image of 670x304 in order to have a resulting image with a white edge on the right side of 10 pixels.

My problem is that with the version of ImageMagick just indicated at the bottom of the resulting image has a white line about one pixel (ie as if the container has a white background pixels larger than the width even if the parameters / both are the same height)

I tried with other higher versions and the problem never occurs .....

It could be a bug in version 6.2.8 of iamgeMagick?

I had also thought of a solution like this:
convert-size 680x303 xc: white-draw "image over 670x304 0.0 'input.jpg'" output.jpg, that is, lower the height of one pixel of the background white but you can not do because this setting controls, and then also reduces the image of a pixel with the result of having the same problem.

Unfortunately I can not change the production version of ImageMagick!!!

Any suggestions ....


Thanks in advance.

Diego (Italy - Venice City)
User avatar
fmw42
Posts: 25562
Joined: 2007-07-02T17:14:51-07:00
Authentication code: 1152
Location: Sunnyvale, California, USA

Re: behavior of different versions of ImageMagick - "image o

Post by fmw42 »

convert-size 680x304 xc: white-draw "image over 670x304 0.0 'input.jpg'" output.jpg
First off, you command as typed is wrong. You must not have a space between xc: and white and must have a space between white and -draw. I presume this is a typo.


try this in stead

convert -size 680x304 xc:white input.jpg -compose over -composite output.jpg

or

convert -size 680x304 xc:white input.jpg -flatten output.jpg

or

convert input.jpg -background white -gravity east -splice 10x0 output.jpg

see
http://www.imagemagick.org/Usage/crop/#splice
http://www.imagemagick.org/Usage/layers/#convert
http://www.imagemagick.org/Usage/layers/#flatten
User avatar
anthony
Posts: 8883
Joined: 2004-05-31T19:27:03-07:00
Authentication code: 8675308
Location: Brisbane, Australia

Re: behavior of different versions of ImageMagick - "image o

Post by anthony »

fmw42 wrote:
convert-size 680x304 xc: white-draw "image over 670x304 0.0 'input.jpg'" output.jpg
First off, you command as typed is wrong. You must not have a space between xc: and white and must have a space between white and -draw. I presume this is a typo.
The -draw command is also wrong. While IM draw will take the 'x' as a number seperator, it will not do so for the '.' between the zeros and four numbers are wanted!

It should have been "image over 670 304 0 0 'input.jpg'"
Anthony Thyssen -- Webmaster for ImageMagick Example Pages
https://imagemagick.org/Usage/
Post Reply