本文整理汇总了C#中System.Drawing.Size.ReduceByWidth方法的典型用法代码示例。如果您正苦于以下问题:C# Size.ReduceByWidth方法的具体用法?C# Size.ReduceByWidth怎么用?C# Size.ReduceByWidth使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Drawing.Size
的用法示例。
在下文中一共展示了Size.ReduceByWidth方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetTargetSize
private static Size GetTargetSize(this ImageResizeRequestModel request, Size originalSize)
{
var maxWidth = request.GetMaxWidth(originalSize);
var maxHeight = request.GetMaxHeight(originalSize);
var aspectRatio = originalSize.GetAspectRatio();
Size targetSize;
// if image is taller than it is wide, aspect ratio will be less than 1
// in these cases, adjust the width based on the height
// also take this approach when the image is perfectly square (aspect ratio == 1.0)
if (aspectRatio <= 1)
{
targetSize = originalSize.ReduceByHeight(maxHeight);
// width can still be greater than maxWidth
if (targetSize.Width > maxWidth)
// now we have to reduce the height based on the max width
targetSize = originalSize.ReduceByWidth(maxWidth);
}
// if image is wider than it is tall, aspect ratio will be greater than 1
// in these cases, adjust the height based on the width
else
{
targetSize = originalSize.ReduceByWidth(maxWidth);
// height can still be greater than maxHeight
if (targetSize.Height > maxHeight)
// now we have to reduce the width based on the max height
targetSize = originalSize.ReduceByHeight(maxHeight);
}
return targetSize;
}