0%

复制代码

try { //取得图片大小
System.Drawing.Size size = new System.Drawing.Size(Convert.ToInt32(w), Convert.ToInt32(h)); //新建一个bmp图片
System.Drawing.Image bmp = new System.Drawing.Bitmap(size.Width, size.Height); //新建一个画板
g = System.Drawing.Graphics.FromImage(bmp); //设置高质量插值法
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBilinear; //设置高质量,低速度呈现平滑程度
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; //清空一下画布
g.Clear(System.Drawing.Color.Transparent); //在指定位置画图
g.DrawImage(img, new System.Drawing.Rectangle(0, 0, bmp.Width, bmp.Height), new System.Drawing.Rectangle(cwidth / 2, cheigh_h / 2, img.Width - cwidth, img.Height - cheigh_h), System.Drawing.GraphicsUnit.Pixel);//cwidth要裁剪尺寸 //保存高清晰度的缩略图
bmp.Save(newMapPath, System.Drawing.Imaging.ImageFormat.Jpeg);
} finally {
g.Dispose();
}

复制代码

复制代码

相关参数:
SmoothingMode { 对直线、曲线和已填充区域的边缘采用锯齿消除功能, 它不能控制路径渐变画笔 }
Invalid // 一个无效模式
Default // 不消除锯齿, 等效于 HighSpeed、None
HighSpeed // 不消除锯齿
HighQuality // 消除锯齿, 等效于 AntiAlias
None // 不消除锯齿
AntiAlias // 消除锯齿
InterpolationMode { 插补模式确定如何计算两个像素点之间的中间值 }
Invalid // 等效于 QualityMode 枚举的 Invalid 元素.
Default // 默认模式.
Low // 低质量插值法.
High // 高质量插值法.
Bilinear // 双线性插值法; 不进行预筛选; 将图像收缩为原始大小的 50% 以下时此模式不适用.
Bicubic // 双三次插值法; 不进行预筛选; 将图像收缩为原始大小的 25% 以下时此模式不适用.
NearestNeighbor // 最临近插值法.
HighQualityBilinear // 高质量的双线性插值法; 执行预筛选以确保高质量的收缩.
HighQualityBicubic // 高质量的双三次插值法; 执行预筛选以确保高质量的收缩; 可产生质量最高的转换图像.
CompositingMode { 颜色合成模式 }
SourceOver // 与背景色混合; 该混合由透明度确定
SourceCopy // 改写背景色
CompositingQuality { 图像合成时, 源像素与目标像素和合成方式 }
Invalid // 无效质量
Default // 默认质量
HighSpeed // 高速度、低质量
HighQuality // 高质量、低速度复合
GammaCorrected // 使用灰度校正
AssumeLinear // 假定线性值
PixelOffsetMode { 像素偏移模式 }
Invalid // 无效模式.
Default // 默认模式.
HighSpeed // 高速度、低质量呈现.
HighQuality // 高质量、低速度呈现.
None // 没有任何像素偏移.
Half // 像素在水平和垂直距离上均偏移 -0.5 个单位, 以进行高速锯齿消除.

复制代码