This function draws an image onto the printer device context within the specified rectangle.
Copy Code
|
|
---|---|
AT_ERRCOUNT ACCUAPI IG_dspl_page_print(
[IN] HIGEAR hIGear,
[IN] DWORD dwGrpID,
[IN] HDC hDC,
[IN] const LPAT_DRECTANGLE lpLayout,
[IN] BOOL bDirectToDriver
);
|
Name | Type | Description |
---|---|---|
hIGear | HIGEAR | ImageGear handle of image. |
dwGrpID | DWORD | Identifier of group from which to get printing options. |
hDC | HDC | Handle of printer device context on which to draw the image. |
lpLayout | const LPAT_DRECTANGLE |
Rectangle which specifies how the image is located on the page. This rectangle is calculated in page-relative units, and as actual page resolutions are obtained it translates the rectangle into real coordinates and assigns ClipRect according to the following rules: ClipRect.x = lpLayout->x*nPageWidth ClipRect.y = lpLayout->y*nPageHeight ClipRect.width = lpLayout->width*nPageWidth ClipRect.height = lpLayout->height*nPageHeight |
bDirectToDriver | BOOL | If TRUE then ImageGear does not perform image scaling but uses the operating system's and driver's capabilities for this. If FALSE then ImageGear performs the scaling. |
Returns the number of ImageGear errors that occurred during this function call.
All pixel formats supported by ImageGear for C and C++.
Copy Code
|
|
---|---|
HMIGEAR image; DOCINFO docInfo; PRINTDLG printDialog; AT_DRECTANGLE layout; // Load the image we want to print. IG_load_file("sample.bmp", &image); // Set the Windows related document printing parameters. memset(&docInfo, 0, sizeof(DOCINFO)); di.cbSize = sizeof(DOCINFO); di.lpszDocName = "Sample Document"; if (PrintDlg(&printDialog)) { // Start the print job and a new page. StartDoc(printDialog.hDC, &docInfo); StartPage(printDialog.hDC); // Layout the image in the middle of the page and at 0.5 of width and height of the page. layout.x = 0.25; layout.y = 0.25; layout.width = 0.5; layout.height = 0.5; // Print the image directly to the device using the default print options group. IG_dspl_page_print(image, (DWORD)IG_GRP_DEFAULT_PRINT, printDialog.hDC, &layout, TRUE); // Signal the end of the page and the print job. EndPage(printDialog.hDC); EndDoc(printDialog.hDC); } |
Printing resolution depends on the current printer setting. The bDirectToDriver parameter allows you to perform image scaling inside of ImageGear or leave this task to the printer driver and operating system. Usually, direct to driver printing (bDirectToDriver=TRUE) results in smaller output size and it works faster, but not using it produces better quality and allows you to use ImageGear capabilities such as anti-aliasing during printing.
Special predefined option group IG_GRP_DEFAULT_PRINT can be used to print an image with the most common parameters.
For an overview on printing, see the section Printing Images. For more information on option groups, see the section Viewing.