VC++中用CxImage如何给图片上加倾斜一定角度的水印
VC++中用CxImage怎么给图片上加倾斜一定角度的水印?
用CxImage怎么给图片上加倾斜一定角度的水印?如我要在用CxImage合成的图片上加上一行倾斜45度的文字,只会用CxImage::rotate 方法旋转图片45度,有什么方法只旋转一行字?
下边是网上找的用CxImage加水印的方法,但是是加水平的水印,没找到使水印倾斜一定角度的方法,求助怎么在图片上加倾斜一定角度的一行字?最好提供下C++示例代码,多谢。
CxImage imagesy;
if( !imagesy.Load("C://z2.jpg", CXIMAGE_FORMAT_JPG))
{
return TRUE;
}
if (imagesy.IsValid())
{
CxImage::CXTEXTINFO textword;
imagesy.InitTextInfo( &textword );
_stprintf( textword.lfont.lfFaceName, _T("Times New Roman"));
textword.lfont.lfCharSet = GB2312_CHARSET ;
textword.lfont.lfWeight = 8 ;
textword.lfont.lfItalic = 0 ;
textword.lfont.lfUnderline = 0 ;
textword.fcolor = RGB( 255,255,160 );
textword.bcolor = RGB( 0, 80,160 );
textword.opaque = 1; //背景
textword.b_opacity = (float)(0)/(float)100.; //透明度
textword.b_round = (BYTE) 10 ; //四舍五入为背景矩形半径
textword.smooth = (BYTE)1; //平滑选项的文本
_stprintf( textword.text, _T("水印文字") );
imagesy.DrawStringEx(0,0,100,&textword);
imagesy.Save("C://z2_sy.jpg",CXIMAGE_FORMAT_JPG);
}
------解决方案--------------------
CxImage的Draw好像可以绘制DC的,如果imagesy能绘制DC的话,创建一个兼容DC,用CreateFont中的nOrientation参数是字体的角度了,你创建了字体后再用SelectObject把字体选入容DC中,然后再TextOut,DrawText之类的,然后再用CxImage的Draw绘制兼容DC
------解决方案--------------------
用CxImage生成另一张图(文字),然后把字图旋转一定角度,做为水印。
------解决方案--------------------
在http://www.codeproject.com搜“watermark”
用CxImage怎么给图片上加倾斜一定角度的水印?如我要在用CxImage合成的图片上加上一行倾斜45度的文字,只会用CxImage::rotate 方法旋转图片45度,有什么方法只旋转一行字?
下边是网上找的用CxImage加水印的方法,但是是加水平的水印,没找到使水印倾斜一定角度的方法,求助怎么在图片上加倾斜一定角度的一行字?最好提供下C++示例代码,多谢。
CxImage imagesy;
if( !imagesy.Load("C://z2.jpg", CXIMAGE_FORMAT_JPG))
{
return TRUE;
}
if (imagesy.IsValid())
{
CxImage::CXTEXTINFO textword;
imagesy.InitTextInfo( &textword );
_stprintf( textword.lfont.lfFaceName, _T("Times New Roman"));
textword.lfont.lfCharSet = GB2312_CHARSET ;
textword.lfont.lfWeight = 8 ;
textword.lfont.lfItalic = 0 ;
textword.lfont.lfUnderline = 0 ;
textword.fcolor = RGB( 255,255,160 );
textword.bcolor = RGB( 0, 80,160 );
textword.opaque = 1; //背景
textword.b_opacity = (float)(0)/(float)100.; //透明度
textword.b_round = (BYTE) 10 ; //四舍五入为背景矩形半径
textword.smooth = (BYTE)1; //平滑选项的文本
_stprintf( textword.text, _T("水印文字") );
imagesy.DrawStringEx(0,0,100,&textword);
imagesy.Save("C://z2_sy.jpg",CXIMAGE_FORMAT_JPG);
}
图片
C
C++
------解决方案--------------------
CxImage的Draw好像可以绘制DC的,如果imagesy能绘制DC的话,创建一个兼容DC,用CreateFont中的nOrientation参数是字体的角度了,你创建了字体后再用SelectObject把字体选入容DC中,然后再TextOut,DrawText之类的,然后再用CxImage的Draw绘制兼容DC
------解决方案--------------------
用CxImage生成另一张图(文字),然后把字图旋转一定角度,做为水印。
------解决方案--------------------
在http://www.codeproject.com搜“watermark”