Actually, you know Windows programming better than me. When needed, I will ask you for help.
Regards. Thierry
On 2005, Jan 20, , at 1:16, Frank D. Engel, Jr. wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Aha! Turns out I was asking the wrong question, but that code certainly helped me to find a way to do it.
I ended up using a GDI "DIB Section" object as an intermediary between the screen-level DDB and the printer DC; it went something like this (slightly modified to simplify, though coded in an external I'm working on for Rev):
HDC printerDC; /* provided target DC */
HBITMAP screenDDB, sect, oldbits; /* screenDDB is the imagePixmapID from Rev */
BITMAP bmap;
int dx, dy, dw, dh; /* provided position and size on printed page */
if (GetObject(screenDDB, sizeof(BITMAP), &bmap) != sizeof(BITMAP)) <failure-exit>;
/* create a DIB Section version of the bitmap */ sect = CopyImage(screenDDB, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION);
/* select it into a memory region */ memDC = CreateCompatibleDC(printerDC); oldbits = (HBITMAP)SelectObject(memDC, sect);
/* render onto printer page */ StretchBlt(printerDC, dx, dy, dw, dh, memDC, 0, 0, bmap.bmWidth, bmap.bmHeight, SRCCOPY);
/* clean up */
SelectObject(memDC, oldbits); DeleteDC(memDC); DeleteObject(sect);
Now I'll be able to sleep tonight (well, at least the chances of it are improved)!
Thank you.
On Jan 19, 2005, at 3:41 PM, Thierry Arbellot wrote:
I use the following code to create a screen HDC and attach the imagePixmapID to it.
long imagePixmapId; HBITMAP screenImageBM; HDC theHdc;
theHdc = CreateCompatibleDC(NULL); // screen DC screenImageBM = (HBITMAP) imagePixmapId; SelectObject(theHdc,screenImageBM);
I hope it helps
Thierry
On 2005, Jan 19, , at 21:26, Frank D. Engel, Jr. wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hmm, anyone know how I can use the Win32 API to obtain a HDC for that HBITMAP? I'm looking for a way to render the bitmap into another device context (specifically, a printer device context). Using the imagePixmapID seemed to me the easiest way to get the image across from a Rev stack to Win32 api code in an external, but I am starting to wonder...
On Jan 19, 2005, at 9:31 AM, Frank D. Engel, Jr. wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Thank you!
On Jan 19, 2005, at 4:47 AM, Thierry Arbellot wrote:
imagePixmapID is an HBITMAP
Thierry.
On 2005, Jan 18, , at 19:44, Frank D. Engel, Jr. wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Does anyone know what form the imagePixmapID takes under the Windows engine for Rev? Is it an HBITMAP or an HDC, or something else entirely?
Thank you!
- - ----------------------------------------------------------- Frank D. Engel, Jr. <[EMAIL PROTECTED]>
$ ln -s /usr/share/kjvbible /usr/manual
$ true | cat /usr/manual | grep "John 3:16"
John 3:16 For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)
iD8DBQFB7VkN7aqtWrR9cZoRAqMYAJ4ooEuOcblOnUUz2LLwcl7OxvahyQCfaQrX tHEgStdm/CnD1DLueFNoM2Y= =wV7X -----END PGP SIGNATURE-----
___________________________________________________________ $0 Web Hosting with up to 120MB web space, 1000 MB Transfer 10 Personalized POP and Web E-mail Accounts, and much more. Signup at www.doteasy.com
_______________________________________________ use-revolution mailing list [email protected] http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________ use-revolution mailing list [email protected] http://lists.runrev.com/mailman/listinfo/use-revolution
- ----------------------------------------------------------- Frank D. Engel, Jr. <[EMAIL PROTECTED]>
$ ln -s /usr/share/kjvbible /usr/manual
$ true | cat /usr/manual | grep "John 3:16"
John 3:16 For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.
$
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)
iD8DBQFB7m9Y7aqtWrR9cZoRAlT3AJ4qXzEZz8rC3xovVx5tsVeF8uLJfwCffUHH Ntbc+NXKQLO4GFuyHWu9URw= =SBGG -----END PGP SIGNATURE-----
___________________________________________________________ $0 Web Hosting with up to 120MB web space, 1000 MB Transfer 10 Personalized POP and Web E-mail Accounts, and much more. Signup at www.doteasy.com
_______________________________________________ use-revolution mailing list [email protected] http://lists.runrev.com/mailman/listinfo/use-revolution
- ----------------------------------------------------------- Frank D. Engel, Jr. <[EMAIL PROTECTED]>
$ ln -s /usr/share/kjvbible /usr/manual
$ true | cat /usr/manual | grep "John 3:16"
John 3:16 For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.
$
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)
iD8DBQFB7sJk7aqtWrR9cZoRAo9cAJ9yP2YKhPCrO4QZJMZZWX85rJDJJgCfadqz SWzB05iunT27tCMSBe5rfgo= =Ue8d -----END PGP SIGNATURE-----
___________________________________________________________ $0 Web Hosting with up to 120MB web space, 1000 MB Transfer 10 Personalized POP and Web E-mail Accounts, and much more. Signup at www.doteasy.com
_______________________________________________ use-revolution mailing list [email protected] http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________ use-revolution mailing list [email protected] http://lists.runrev.com/mailman/listinfo/use-revolution
- - ----------------------------------------------------------- Frank D. Engel, Jr. <[EMAIL PROTECTED]>
$ ln -s /usr/share/kjvbible /usr/manual
$ true | cat /usr/manual | grep "John 3:16"
John 3:16 For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.
$
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)
iD8DBQFB7vhD7aqtWrR9cZoRAj6tAJ0eX/gnbU49knqP2IY5p7z+nyNB+gCfWIfH Q80mj9iSN3RANbtszgxf1FY= =Uuh+ -----END PGP SIGNATURE-----
___________________________________________________________ $0 Web Hosting with up to 120MB web space, 1000 MB Transfer 10 Personalized POP and Web E-mail Accounts, and much more. Signup at www.doteasy.com
_______________________________________________ use-revolution mailing list [email protected] http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________ use-revolution mailing list [email protected] http://lists.runrev.com/mailman/listinfo/use-revolution
