OSX printing of images issue

Paul Dupuis paul at researchware.com
Thu Mar 29 21:33:37 CEST 2018


On 3/28/2018 11:28 AM, Paul Dupuis via use-livecode wrote:
> I have a print subsystem for my application that prints a particular set
> of data by laying our the page (sizing the card to the paper, allowing
> for margins, etc, where the content area of the page is a single image
> object. The resizeQuality is set to "best" and alwaysBuffer is true
>
> When I print under Windows (8.x or 10) to a real printer or to PDF, the
> result appears as expected.
>
> When I print under OSX (10.9.5 and up) some of the images are messed up:
> Some are squished to a vertical bar a few pixels wide. Some are the
> right size but are just a big rectangle of black and color stripes. Some
> print properly. This happens whether to Preview PDF or to a real printer.
>
> This occurs under LC8.1.9 (and all the way back to at least LC 6.7.11)
>
> I have stepped through my print system in the debugger and each page
> appears exactly as it should (correctly layed out with a good looking
> image) before the "print card" command.
>
> Has anyone experienced this and have any ideas for a work-around or a fix?
 
I added some code to try to capture/create a test stack to report this
as a bug. Before I start my "page" repeat loop, I create invisible stack
"savePrinting" and set the rect of it to the rect of my print stack
(already set to the paper size)
During the repeat loop, just before I execute "print card", I copy this
card to stack "savePrinting".
And after the repeat loop, I save the savePrinting stack to the desktop
and delete it.

Now with this debug code in place, printing under OSX work fine. It is
as it the command 'copy this card to stack "savePrinting" ' forces the
objects on the card to be rendered properly when the 'print card' (the
next statement) is executed.

Still asking if anyone has run into to something like this under OSX?
Has anyone run into issue where you are trying to print or export a card
whil it is off screen or invisible and not have it render properly? Any
known tricks to get LiveCode to force a render of a card's objects if it
is off screen or invisible?




More information about the use-livecode mailing list