解决方案 »
- 怎么实现数据库的定时搜索功能,公司要我来实现!!!!!!!
- T_T在线等,搞了一个多小时急啊 各位高手大哥来帮个忙
- 论坛发表言论的html编辑器代码?
- 问一下大家,装SQL SERVER 2000的问题!!!
- session严重丢失啊
- 100求:html控件table,在服务器端如何增行和删除行。
- 求一正则提取数据,很是郁闷呐,有结果了就结帐
- 让我再问一个菜题:从网上down下来源码之后,想在.net环境下调试,是不是应该双击.sln文件啊??
- 增加空项
- 请问怎样根据以下写出整个aspx页?
- DIV SCROLL问题
- 关于Entity Framework和TransactionScope的问题
if (图片原始的宽 / 高宽比 > 原始图片的高)
{
// 图片过扁,那么用图片的高,并且切掉左右多余的部分
Rect r;
r.Left = (图片原始的宽 - 图片原始的高 * 高宽比) / 2
r.Top = 0
r.Width = 图片原始的高 * 高宽比
r.Height = 原始图片的高
将这个区域的图片缩放
}
else
{
// 图片过瘦,那么用图片的宽,并且切掉上下多于的部分
...
}
http://www.cnblogs.com/insus/p/3627437.html
{
var newSize = new Size();
if (originalSize.Height > originalSize.Width) // portrait
{
newSize.Width = (int)(originalSize.Width * (float)(targetSize / (float)originalSize.Height));
newSize.Height = targetSize;
}
else // landscape or square
{
newSize.Height = (int)(originalSize.Height * (float)(targetSize / (float)originalSize.Width));
newSize.Width = targetSize;
}
return newSize;
}public void NewPicture(byte[] PictureBinary, int offsetX = 0, int offsetY = 0, int targetSize = 0, double matrix = 1)
{
var picStream = new MemoryStream(PictureBinary);
var picBit = new Bitmap(picStream);
var newSize = CalculateDimensions(picBit.Size, targetSize);
if (newSize.Width < 1)
newSize.Width = 1;
if (newSize.Height < 1)
newSize.Height = 1;
var newBitMap = new Bitmap(200, 200);//the new picture size
var g = Graphics.FromImage(newBitMap);
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
g.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality; g.DrawImage(picBit, offsetX, offsetY, newSize.Width, newSize.Height);
string localFilename = string.Format("{0}_{1}.{2}", picture.Id.ToString("10000000"), "combine", lastPart);
var ici = GetImageCodecInfoFromExtension(lastPart) ?? GetImageCodecInfoFromMimeType("image/jpeg");
var ep = new EncoderParameters();
ep.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, this.ImageQuality);
newBitMap.Save(Path.Combine(this.LocalThumbImagePath, localFilename), ici, ep);
newBitMap.Dispose();
picBit.Dispose();
}