专家啊,救命啊!
private void DesignImage(string DesFilePath,int DesR,int DesWidth,int DesHeight)
{
System.Drawing.Image DesImage = System.Drawing.Image.FromFile(DesFilePath);
if(DesR==1)
{
DesImage.RotateFlip(RotateFlipType.Rotate90FlipY); //90度旋转
}
else if (DesR == 2)
{
DesImage.RotateFlip(RotateFlipType.RotateNoneFlipY); //180度旋转
}
else if (DesR == 3)
{
DesImage.RotateFlip(RotateFlipType.Rotate270FlipY);//360度旋转
}
int x = 0;
int y = 0;
int w = DesImage.Width;
int h = DesImage.Height; //目标位图
Bitmap dsImage = new Bitmap(DesWidth, DesHeight);
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(dsImage); //设置高质量插值法
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; //设置高质量,低速度呈现平滑程度
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//g.Clear(System.Drawing.Color.Transparent);
Color color = Color.FromArgb(0, Color.Transparent); //背景透明
g.FillRectangle(new SolidBrush(color), new Rectangle(0, 0, DesWidth, DesHeight));
g.DrawImage(DesImage, new System.Drawing.Rectangle(0, 0, DesWidth, DesHeight), new System.Drawing.Rectangle(x, y, w, h), System.Drawing.GraphicsUnit.Pixel);
dsImage.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);
g.Dispose();
}
以上的代码是我实现透明图片输出的函数内容,可输出的图片的背景不是透明色,而是黑色,调试了很多次,都无法解决,特开此贴,请专家救急啊!
private void DesignImage(string DesFilePath,int DesR,int DesWidth,int DesHeight)
{
System.Drawing.Image DesImage = System.Drawing.Image.FromFile(DesFilePath);
if(DesR==1)
{
DesImage.RotateFlip(RotateFlipType.Rotate90FlipY); //90度旋转
}
else if (DesR == 2)
{
DesImage.RotateFlip(RotateFlipType.RotateNoneFlipY); //180度旋转
}
else if (DesR == 3)
{
DesImage.RotateFlip(RotateFlipType.Rotate270FlipY);//360度旋转
}
int x = 0;
int y = 0;
int w = DesImage.Width;
int h = DesImage.Height; //目标位图
Bitmap dsImage = new Bitmap(DesWidth, DesHeight);
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(dsImage); //设置高质量插值法
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; //设置高质量,低速度呈现平滑程度
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//g.Clear(System.Drawing.Color.Transparent);
Color color = Color.FromArgb(0, Color.Transparent); //背景透明
g.FillRectangle(new SolidBrush(color), new Rectangle(0, 0, DesWidth, DesHeight));
g.DrawImage(DesImage, new System.Drawing.Rectangle(0, 0, DesWidth, DesHeight), new System.Drawing.Rectangle(x, y, w, h), System.Drawing.GraphicsUnit.Pixel);
dsImage.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);
g.Dispose();
}
以上的代码是我实现透明图片输出的函数内容,可输出的图片的背景不是透明色,而是黑色,调试了很多次,都无法解决,特开此贴,请专家救急啊!
解决方案 »
- 用Encoding.Default读utf-8文件是不是也可以?
- 怎么样理解网页中客户端和服务器端?
- 有用过aspnetpager分页控件的吗?请进来帮个忙。。分页按钮没有间距。
- 从Excel表格导出数据到SQL Server。
- 请问asp.net怎么打包
- <a href=url></a>請問用以上方式打開的頁面如何控制頁面以最大化方式打開?
- ACCESS/MSSQL 数据表中字段的多少对查询效率影响有多大?
- 关于showModelessDialog的数据通讯,请教高手,急!
- 这是什么意思?各位帮帮我吧!
- 用C#写ASP.NET应用程序,急救,各位大虾指教!!!
- 关于一个截取字符串的方法的奇怪问题
- 局域网内传文件到80%时提示“磁盘空间不足,请删除部分文件后再试”....
System.Drawing.Color.FromArgb(255, 250, 255, 249));
这句好像是定义背景的吧 怎么注释了
http://www.c-sharpcorner.com/UploadFile/jacquesphilip/MakingThumbnailsOfTransparentImages11162005004933AM/MakingThumbnailsOfTransparentImages.aspx
http://www.codedblog.com/2007/08/28/generating-a-transparent-gif-image-using-c/http://support.microsoft.com/kb/319061