16,472
社区成员
发帖
与我相关
我的任务
分享
void PrintImage(wchar_t * szFileName , HDC dcPrinter)
{
GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
Image image(szFileName);
UINT width = image.GetWidth();
UINT height = image.GetHeight();
DOCINFO docInfo;
ZeroMemory(&docInfo, sizeof(docInfo));
docInfo.cbSize = sizeof(docInfo);
docInfo.lpszDocName = L"PicPrint";
StartDoc(dcPrinter, &docInfo);
StartPage(dcPrinter);
Graphics grap(dcPrinter);
Status st = grap.DrawImage(&image, 0,0, width, height);
EndPage(dcPrinter);
EndDoc(dcPrinter);
DeleteDC(dcPrinter);
}
//这样调用
CPrintDialog dlg(FALSE);
CDC dc;
if (dlg.DoModal() == IDOK)
dc.Attach(dlg.GetPrinterDC());
PrintImage(L"C:\\judy.jpg", dc.GetSafeHdc());
#include <gdiplus.h>
#pragma comment(lib,"gdiplus.lib");
using namespace Gdiplus;