高分求助,VC调用windows打印驱动打印JPG或GIF的实例,急,不够加到200分

yangyijieyyj 2008-01-04 11:28:17
我查了很多资料,VC都是打印BMP格式的,不知道怎么打印JPG或GIF格式的图片?
源码请发到我的邮箱:yangyijieyyj@sina.com,谢谢
...全文
242 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
systar_wang 2008-01-04
  • 打赏
  • 举报
回复
帮你顶一下.,..
yangyijieyyj 2008-01-04
  • 打赏
  • 举报
回复
在线等,自己顶
sxcong 2008-01-04
  • 打赏
  • 举报
回复
OleLoadPicture
IPicture::Render
这两个都不行, 图像放大或缩小时失真非常严重。
推荐用CxImage,支持多种图像。如果只处理JPEG的话,只用其中的libjpeg,好象是这么写的,这一个就可以了
oldmanzhao 2008-01-04
  • 打赏
  • 举报
回复
例程已经发过去了。
shulei521 2008-01-04
  • 打赏
  • 举报
回复
单的用 IPicture

OleLoadPicture
IPicture::Render

想要功能更强大的用别人的库
shulei521 2008-01-04
  • 打赏
  • 举报
回复
简单的用 IPicture

OleLoadPicture
IPicture::Render

想要功能更强大的用别人的库
yangyijieyyj 2008-01-04
  • 打赏
  • 举报
回复
还是麻烦二位发一份测试用例到我邮箱吧,谢谢。
刚才我试了半天,库是加进去了,但是编译时报了一堆的错
jameshooo 2008-01-04
  • 打赏
  • 举报
回复
用IPicture吧,能加载多种格式的图片,然后你获取打印机的DC,再调用IPicture的Render方法即可打印
oldmanzhao 2008-01-04
  • 打赏
  • 举报
回复
yangyijieyyj 2008-01-04
  • 打赏
  • 举报
回复
在VC98编译中报错了,没有找到gdiplus.h这个头文件
oldmanzhao 2008-01-04
  • 打赏
  • 举报
回复
关键是一个把JPG转换成BMP的问题,可以用GDI+实现
定义一个函数:

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;



yangyijieyyj 2008-01-04
  • 打赏
  • 举报
回复
越简单越好,能给个例子吗?我是做Java的,需要JNI调VC的DLL,以前没用过VC,谢谢
Yofoo 2008-01-04
  • 打赏
  • 举报
回复
简单的用 IPicture

OleLoadPicture
IPicture::Render

想要功能更强大的用别人的库

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧