zoukankan
html css js c++ java
利用GDI+分割图片,在图片上加字
System.Drawing.Image img;
System.Drawing.Graphics g;
System.Drawing.Bitmap bmp;
img
=
System.Drawing.Image.FromFile(filename);
if
(img.Width
!=
768
||
img.Height
!=
928
)
return
""
;
if
(
!
BakFilePath.Equals(
"
nobak
"
)
&&
!
File.Exists(
this
.BakFilePath
+
Path.GetFileName(filename)) )
File.Copy(filename,
this
.BakFilePath
+
Path.GetFileName(filename));
bmp
=
new
Bitmap(
1536
,
304
,System.Drawing.Imaging.PixelFormat.Format24bppRgb);
g
=
System.Drawing.Graphics.FromImage(bmp);
g.DrawImage(img,
0
,
0
,
new
Rectangle(
0
,
608
,
768
,
304
),GraphicsUnit.Pixel);
//
取第三张
g.DrawImage(img,
768
,
0
,
new
Rectangle(
0
,
304
,
768
,
304
),GraphicsUnit.Pixel);
//
第一张
/**/
/*
************************加字******************************
*/
SolidBrush drawBrush
=
new
SolidBrush(Color.Red);
Font drawFont
=
new
Font(
"
Arial
"
,
4
, FontStyle.Regular, GraphicsUnit.Millimeter);
float
xPos
=
550
;
float
yPos
=
0
;
decimal
Speed,SpeedP;
Speed
=
decimal
.Parse(PicConvert.LoadConfig(
"
Speed
"
));
SpeedP
=
decimal
.Parse(PicConvert.LoadConfig(
"
SpeedP
"
));
//
g.DrawString("限速"+Speed+"公里/小时 超速百分比:"+SpeedP+"%", drawFont, drawBrush, xPos, yPos);
g.DrawString(
"
限速:
"
+
Speed
+
"
公里 超速:
"
+
SpeedP
+
"
%
"
, drawFont, drawBrush, xPos, yPos);
//
newbmp=new Bitmap(bmp,1536,592);
/**/
/*
************************加字******************************
*/
/**/
/*
*******************************************************************
*/
//
ImageCodecInfo[] codecs=ImageCodecInfo.GetImageEncoders();
//
//
ImageCodecInfo ici=null;
//
foreach(ImageCodecInfo codec in codecs)
//
{
//
if(codec.MimeType=="image/jpeg")
//
ici=codec;
//
}
//
//
EncoderParameters ep=new EncoderParameters();
//
ep.Param[0]=new EncoderParameter(Encoder.Quality,(long)25);
//
newbmp.Save(this.DesFilePath+@"\"+newfilename,ici,ep);
Bitmap myBitmap;
ImageCodecInfo myImageCodecInfo;
Encoder myEncoder;
EncoderParameter myEncoderParameter;
EncoderParameters myEncoderParameters;
//
Create a Bitmap object based on a BMP file.
myBitmap
=
new
Bitmap(bmp,
1536
,
592
);
//
Get an ImageCodecInfo object that represents the JPEG codec.
myImageCodecInfo
=
GetEncoderInfo(
"
image/jpeg
"
);
//
Create an Encoder object based on the GUID
//
for the Quality parameter category.
myEncoder
=
Encoder.Quality;
//
Create an EncoderParameters object.
//
An EncoderParameters object has an array of EncoderParameter
//
objects. In this case, there is only one
//
EncoderParameter object in the array.
myEncoderParameters
=
new
EncoderParameters(
1
);
//
Save the bitmap as a JPEG file with quality level 25.
myEncoderParameter
=
new
EncoderParameter(myEncoder,
40L
);
myEncoderParameters.Param[
0
]
=
myEncoderParameter;
myBitmap.Save(
this
.DesFilePath
+
@"
\
"
+
newfilename, myImageCodecInfo, myEncoderParameters);
//
//
Save the bitmap as a JPEG file with quality level 50.
//
myEncoderParameter = new EncoderParameter(myEncoder, 50L);
//
myEncoderParameters.Param[0] = myEncoderParameter;
//
myBitmap.Save(this.DesFilePath+@"\"+"Shapes050"+newfilename, myImageCodecInfo, myEncoderParameters);
//
//
Save the bitmap as a JPEG file with quality level 75.
//
myEncoderParameter = new EncoderParameter(myEncoder, 75L);
//
myEncoderParameters.Param[0] = myEncoderParameter;
//
myBitmap.Save(this.DesFilePath+@"\"+"Shapes075"+newfilename, myImageCodecInfo, myEncoderParameters);
/**/
/*
***************************************************
*/
//
newbmp.Save(this.DesFilePath+@"\"+newfilename,System.Drawing.Imaging.ImageFormat.Jpeg);
myBitmap.Dispose();
bmp.Dispose();
g.Dispose();
img.Dispose();
File.Delete(filename);
return
newfilename;
查看全文
相关阅读:
手机获取ip地址
CoreGraphics 自定义button
抽奖及背景图片的透明度设置时连着转盘图片也跟着虚幻解决方法
多个UIcollctionView,返回个数不对错误
collectionview item 间距
判断键盘的高度
orcle 11g 的安装图解
clone()详解
isAssignableFrom ,isInstance , Instanceof() 区别
三元表达式
原文地址:https://www.cnblogs.com/lidune/p/546747.html
最新文章
逻辑运算符-----IOS开发学习记录第8天之C语言学习
位运算-----IOS开发学习记录第9天之C语言学习
关系运算符-----IOS开发学习记录第7天之C语言学习
IOS开发学习记录第4天之C语言学习
IOS开发学习记录第3天之C语言学习
IOS开发学习记录第1天之熟悉Mac常用快捷键
OC常见面试题四
OC常见面试题三
OC常见面试题一
OC常见面试题二
热门文章
OC点语法的陷阱
OC字符串实现路径合并
OC字符串查找
OC字符串的替换与分割
OC字符串截取方法
OC字符串比较方法
使用lunchScreen.storyboard 不显示启动图片
uitableviewcell背景颜色
wkWebView 自适应大小
网络请求随笔
Copyright © 2011-2022 走看看