Convert transparent PNG on import?
Marty Knapp
martyknappster at gmail.com
Tue Feb 3 14:39:36 EST 2015
Thanks Peter. It may be that we're mixing up two different threads here
- there's another about detecting mouse events inside images. In my app,
users create documents and are able to import images as part of their
design. These documents are then printed and a print job could include
hundred of pages. So I don't want to hide anything that the user would
expect to have printed.
On Mac I'm not having any trouble. On Windows, if the image has
transparency either by virtue of its format (ie. a transparent PNG) or
transparency has been applied by changing its blendLevel (to fade the
image), then very weird things happen. The image gets cut off, "borders"
or lines that aren't there get printed and on a long print run the app
will become unresponsive for some time and it may just stop printing.
I've filed 2 bug reports on this: 14089 and 14256 and they have both
been confirmed. If anyone is so inclined and are working on a Windows
machine, they could download the sample stacks and see what's happening.
My app is built with LC 6.6.5 but the issue seems to span the entire 6.X
series. On LC 6.7 the bug manifests itself a little differently but it's
still not working correctly.
As I didn't want to delay the release of my program, not knowing if/when
this would get fixed, I crippled the Windows version by disallowing the
import of PNG images as they might have transparency. I also disabled
the "fade" control. Not a very satisfactory solution. My thought here
was that if I could allow a non-transparent PNG to import but disallow
or convert a transparent PNG to non-transparent. That would be a little
better.
Instructing the user to not use a transparent PNG is not an answer. I
know someone will do it and then they'll be very unhappy with the results.
Marty K
> On Feb 3, 2015, at 12:28 PM, Marty Knapp wrote:
>
>> Thank Bernd, I'll give that a try. Detecting mouseClicks or other mouse related functions aren't an issue for me in this case - it's that printing images with transparency on Windows can really come out strange and in some cases cause printing to fail.
> if the platform = "Win32" then
> hide grc "transparentMask"
> end if
> -- print routines here
> show grc "transparentMask"
>
> This would take care of it, no?
>
> -- Peter
>
> Peter M. Brigham
> pmbrig at gmail.com
> http://home.comcast.net/~pmbrig
>
>
More information about the use-livecode
mailing list