At 11:01 Uhr +0200 16.05.2002, Roberto Molari wrote:
>HI list,
>
>I'm making a print beahvior with Print o matic but I 've got a problem: when
>I try to print the stage (drawStagePicture) and the color depth is 16 bit on
>my HP printer the output is blank!
>Help me please! I 've read the techical notes on Electronic Ink website,
>they say that it's a printer driver problem....
>It happens only on Windows 9X OS, with Windows 2000 it works fine
if you don't want your users to mess around with printer driver
updates, which is supposed to fix the problem with HP printer drivers
and 16-bit bitmaps, you'll have to create 32bit bitmaps to print.
so instead drawStagePicture, which results in a bitmap of the depth
the monitor is set to, you have to create a 32 bit image object,
copyPixels the stage.image to and print a temporary created #bitmap
castmember, which you assign the image object, with POM.
on mConvertBitDepth imageObject, depth
if imageObject.depth = depth then return imageObject
r = imageObject.rect
i = image(r.width, r.height, depth)
i.copyPixels(imageObject, r, r)
return i
end
now you can do something like:
newBitmap = member("tempPrintBuffer")
if newBitmap.type <> #bitmap then -- create a bitmap, if it doesn't
already exist from previous prints
newBitmap = new(#bitmap)
newBitmap.name = "tempPrintBuffer"
end if
newBitmap.image = mConvertBitDepth((the stage).image, 32)
printBitmapWithPOM newBitmap -- <- your custom handler to print a
bitmap with POM
-- either POM.drawPicture() or POM.append()
--
|||
a�ex
--
[To remove yourself from this list, or to change to digest mode, go to
http://www.penworks.com/lingo-l.cgi To post messages to the list, email
[EMAIL PROTECTED] (Problems, email [EMAIL PROTECTED]). Lingo-L is for
learning and helping with programming Lingo. Thanks!]