Transparency in version 6.3.6

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
strawberryfield

Transparency in version 6.3.6

Post by strawberryfield »

I used the command

convert picture.jpg -thumbnails 200x200 +polaroid picture_polaroid.png

in version 6.3.3 and it worked fine.

Upgrading to version 6.3.6 the same command make all the backgroud black and not transparent.
Further other commands with xc:transparent (or xc:none) gime me the background black while in previous versions worked fine.

What is changed?
There is any workaround?

Thank you
el_supremo
Posts: 1015
Joined: 2005-03-21T21:16:57-07:00

Re: Transparency in version 6.3.6

Post by el_supremo »

I'm using 6.3.7 and it worked fine.
Are you using the static or DLL version of 6.3.6?

Pete
strawberryfield

Re: Transparency in version 6.3.6

Post by strawberryfield »

I use dll version q16

windows xp sp2
strawberryfield

Re: Transparency in version 6.3.6

Post by strawberryfield »

I have just tried with version 6.3.7-2 q16 dll for windows and the result is the same...

going in the other directory with 6.3.3 q16 dll all is ok!
el_supremo
Posts: 1015
Joined: 2005-03-21T21:16:57-07:00

Re: Transparency in version 6.3.6

Post by el_supremo »

Just out of curiosity try these two with IM 6.3.6 (and 6.3.7):

convert -size 100x100 xc:none none.png
convert -size 100x100 xc:none none.gif

Are they both wrong or just the PNG?

Pete
User avatar
anthony
Posts: 8883
Joined: 2004-05-31T19:27:03-07:00
Authentication code: 8675308
Location: Brisbane, Australia

Re: Transparency in version 6.3.6

Post by anthony »

There has been some work in the handling of alpha channel. As a consequence a small amount of 'churn' in the results of the alpha channel additions.

As you are reading a JPEG image I suggest you ensure a alpha.matte channel is present in the image using -matte after reading the JPEG, before the other operators.
Anthony Thyssen -- Webmaster for ImageMagick Example Pages
https://imagemagick.org/Usage/
strawberryfield

Re: Transparency in version 6.3.6

Post by strawberryfield »

I tried to use -matte but nothing change.
I tried to save the image also as gif, png32 or miff but the result is always the same.

Yesterday I installed the same 6.3.7-2 q16 dll on another xp sp2 box and surprise! all commands were ok.
Today I have uninstalled all version of IM from my machine, removed manually from registry every key and reinstall.

Trasparency are all missing.
I installed my old 6.2.7-5 q16 dll and now i'm happy.

There is some windows dll loaded that can be broken on my machine?
el_supremo
Posts: 1015
Joined: 2005-03-21T21:16:57-07:00

Re: Transparency in version 6.3.6

Post by el_supremo »

Since you've cleaned your registry and reinstalled IM, I think the most likely explanation is a problem with an environment variable (another user had a problem which came down to this).
In the Control Panel go to System and then the Advanced tab and click on Environment Variables. See if there are any variable names in either list which begin with "MAGICK_" and, if so, make a note of their names and values.
If there's one named MAGICK_HOME, it may be pointing to an older version of IM or to a directory which doesn't exist any more. Since you appear to be using a standard install of IM DLLs you can delete this environment variable and IM will then use the registry.

Pete
strawberryfield

Re: Transparency in version 6.3.6

Post by strawberryfield »

I haven't found any variable in my environment like MAGICK* so than cannot be my problem

A closer look to the polaroid transform reveals that on right and bottom sides there are two small
strips with transparency.

I think it can be the area with semi-transparency ...
User avatar
anthony
Posts: 8883
Joined: 2004-05-31T19:27:03-07:00
Authentication code: 8675308
Location: Brisbane, Australia

Re: Transparency in version 6.3.6

Post by anthony »

GIF only handles boolean transparency (on or off only) not semi-transparency.
JPEG can handle transparency at all. Only png handles it.

I suggest you 'flatten' the result onto an appropriate background color before saving to GIF.
Anthony Thyssen -- Webmaster for ImageMagick Example Pages
https://imagemagick.org/Usage/
strawberryfield

Re: Transparency in version 6.3.6

Post by strawberryfield »

The problem appears with any transparency command also like this

convert -size 100x100 xc:none test.png (and also with .gif or .miff)

I also tried to update the gdi32.dll linked by magick_core with the one i found on the working machine, but the rusult doesn't change.

I installed the new version only to try the polaroid transform, but the upgrade has broken all my script.
Now i have removed the new version and reinstalled the 6.2.7 that is working with no trouble.

Thank you everyone for interesting in the problem.
Post Reply