这段代码为什么为图片加不上水印呢?
以下代码为什么加不上水印,也没有报错.请教下大家:
System.Drawing.Image image=System.Drawing.Image.FromFile(topPicFile.PostedFile.FileName);//得到一已存在的文件
System.Drawing.Graphics g=System.Drawing.Graphics.FromImage(image);
//以下声明FONT
string fontName;//
if(fontF1.SelectedIndex==0)
{
fontName= "宋体 ";
}
else
{
fontName=fontF1.SelectedValue.ToString();
}
int fontSize=Int32.Parse(fontS1.Text.Trim());
System.Drawing.FontStyle fs=new System.Drawing.FontStyle();
if(B1.Checked)
{
fs|=System.Drawing.FontStyle.Bold;
}
if(U1.Checked)
{
fs|=System.Drawing.FontStyle.Underline;
}
if(I1.Checked)
{
fs|=System.Drawing.FontStyle.Italic;
}
System.Drawing.Font font1=new System.Drawing.Font(fontName,fontSize,fs);
//declear bush
int red=Int32.Parse(bushC1.Text.Trim().Substring(0,2),System.Globalization.NumberStyles.HexNumber);//TextBox中提供颜色,并转化为十进制的.
int green=Int32.Parse(bushC1.Text.Trim().Substring(2,2),System.Globalization.NumberStyles.HexNumber);
int blue=Int32.Parse(bushC1.Text.Trim().Substring(4,2),System.Globalization.NumberStyles.HexNumber);
System.Drawing.Color co1=System.Drawing.Color.FromArgb(red,green,blue);
System.Drawing.Brush bush1=new System.Drawing.SolidBrush(co1);
//得到要加水印的pointF
System.Drawing.PointF point1=new System.Drawing.PointF();
point1.X=Int32.Parse(X1.Text.Trim());
point1.Y=Int32.Parse(Y1.Text.Trim());
g.DrawString(string1.Text,font1,bush1,point1);
//保存.
image.Save(savePath);//savePath是已存在的文件侠和文件名如: "C:\pic.jpg "
g.Dispose();
image.Dispose();
------解决方案--------------------有的图像是这个改后缀名的,比如a.gif,你改成a.jpg,虽然可以显示,但是无法加水印。