MFC中在图片中添加文字,然后导出

      哈哈,今天自己用Word做了一个简单的图片,然后将图片添加到软件中,进行处理。

主要就是在图片上输入文本,然后将含有文本的图片在输出。


主要用到了GDI+中的CImage:

	BITMAP bm;
	CDC dcMem;
	CBitmap bmpDraw, *pOldBmp=NULL;
	CClientDC dc(this);
	CImage imgSave;	

	//开始绘图
	OnPrepareDC(&dc);
	dcMem.CreateCompatibleDC(&dc);//创建内存DC
	bmpDraw.LoadBitmap(IDB_SPEED);
	bmpDraw.GetBitmap(&bm);

	pOldBmp = dcMem.SelectObject(&bmpDraw);//将加载的图片导入内存DC
	dcMem.OffsetViewportOrg(0, 0);

	float fWidth = theApp.m_cCommonData.GetOCFData().stHeader.fWidth;
	float fHeight = theApp.m_cCommonData.GetOCFData().stHeader.fDepth;
	CString strWidth = _T("");
	CString strHeight = _T("");

	strWidth.Format("%dmm",(int)fWidth);
	strHeight.Format("%dmm",(int)fHeight);

	dcMem.TextOut(1,bm.bmHeight/2,strHeight); //使用dc绘图写字
	dcMem.TextOut(bm.bmWidth/2 - 20,5,strWidth);

	imgSave.Attach((HBITMAP)bmpDraw.m_hObject);//绑定要保存的图片的句柄

	CString szPicSavePath = theApp.m_szPrjPath.Left(theApp.m_szPrjPath.ReverseFind('\\') + 1) + _T("speed.bmp");
	imgSave.Save(szPicSavePath);	

	imgSave.Detach();
	dcMem.SelectObject(pOldBmp);
	bmpDraw.DeleteObject();
	dcMem.DeleteDC();





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值