【问题标题】:.NET image resizer that allows aspect ratio and only one width or height.NET 图像缩放器,允许纵横比和只有一个宽度或高度
【发布时间】:2013-02-13 00:22:00
【问题描述】:

大家好,我在这里寻找一些模仿这个 PHP 类的 asp.net 代码

Php Imagick

我需要代码能够像这里那样做:

$image = new Imagick('image.jpg');

// If 0 is provided as a width or height parameter,
// aspect ratio is maintained
$image->thumbnailImage(100, 0);

echo $image;

注意上面写着如果提供 0 作为宽度或高度参数,则保持纵横比

我目前无法找到任何允许上述内容的 .net 代码。我已经看到很多允许指定宽度和高度但不仅仅是一个。这个 PHP 类最能模仿 Photoshop 调整大小。

因此,一个例子是:

$image = new Imagick('image.jpg'); //WHERE Width = 3216 & Height = 2064
$image->thumbnailImage(1024, 0); //WHERE Width = 1024    
echo $image;

那张图片的大小会变成

宽度 = 1024

身高 = 657

就像在 Photoshop 中一样。

【问题讨论】:

  • 您是否在问如何在 .NET 中加载和调整图像大小?或者当你只有 1 和一个纵横比时,你是否要求数学找到第二维?还是两者兼而有之?
  • @CoryNelson 我希望两者都做。如果我给它 widthheight,我希望它知道它需要使用什么。

标签: asp.net .net image-processing imagemagick


【解决方案1】:

我为此编写了 ImageResizer 库,因为没有任何其他适用于 .NET 的服务器安全图像大小调整库。

为了获得最佳性能,请使用包含的 URL API 而不是创建自己的处理程序:

好:

<img src="image.jpg?width=100" />

不好:

<img src="myinsecurehandler.ashx?file=image.jpg&width=100" />

【讨论】:

    【解决方案2】:
    1. 您为什么不尝试使用 IF 条件来检查 0 维护?
    2. 我喜欢在 jscript/css 中做这样的事情,它更加量身定制,即使在生成图像时我必须通过 ID 连接。 (您可以设置像 image[1] 这样的命名方案)
    3. 在 .NET 中运行您的 php 类:http://www.infoq.com/articles/Phalanger

    【讨论】:

    • 1) 那不是我问的... 2) JS 没有任何图形功能使它看起来不错(即没有锐利的线条、压缩等)。 3)同样,没有帮助,因为我不想为.net页面运行任何PHP......
    猜你喜欢
    • 2016-05-18
    • 2011-12-24
    • 2015-07-31
    • 2016-04-01
    • 1970-01-01
    • 2013-08-07
    • 1970-01-01
    • 2019-11-14
    • 2018-02-27
    相关资源
    最近更新 更多