当前位置: 首页>>代码示例>>C#>>正文


C# Size.GetAspectRatio方法代码示例

本文整理汇总了C#中System.Drawing.Size.GetAspectRatio方法的典型用法代码示例。如果您正苦于以下问题:C# Size.GetAspectRatio方法的具体用法?C# Size.GetAspectRatio怎么用?C# Size.GetAspectRatio使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Drawing.Size的用法示例。


在下文中一共展示了Size.GetAspectRatio方法的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;
        }
开发者ID:saibalghosh,项目名称:Layout3,代码行数:32,代码来源:ImageResizer.cs


注:本文中的System.Drawing.Size.GetAspectRatio方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。