需求:电子商务中有大量的图片要丰前台显示,而这些图片大部分由客户自己上传,图片的规格也是多种多样(主要择时纵横比例)。怎样让这些图片在前台整齐且美观的显示呢?
目的:整齐:固定纵横比例;美观:图片不变型,也就是按比例缩放。
假设:假如我们要在前台的一个Div(别名:相框)中放一张图(别名:图A),相框的宽度为120px,高度为:90px。而图A的原图的宽度为为1414px,高度为:886px.
显然相框与图A的原图的比例不一致。为了整齐且美观,我们希望将图A处理成56*96.然后把她居中的放在相框(120*90)中。
方案:我们采用.net技术,通过GDI操作图片:
实施:不想多说(相信大家都应该看得懂)先贴出我的图像处理类(注释还算清楚):
using System;
using System.Drawing;
using System.IO;
namespace Ants.Tools
{
public class Image
{
属性#region 属性
/**//// <summary>
/// 相框的宽度
/// </summary>
public int Width { get; set; }
/**//// <summary>
/// 相框的高度
/// </summary>
public int Height { get; set; }
/**//// <summary>
/// 待处理的图片的物理路径
/// </summary>
public string Path { get; set; }
#endregion
private bool ThumbnailCallBack()//GDI+委托
{
return false;
}
/**//// <summary>
/// 缩略图片的函数
/// </summary>
/// <param name="OK">用来判断转换是否成功</param>
/// <returns>处理好的图片缩略图放入内存中</returns>
public MemoryStream getThumb(out bool OK)
{
OK=false;
int X, Y;