douxin2002 2015-02-28 23:12
浏览 25
已采纳

获取尺寸以将图像转换为最大值

I need to get some dimensions to display images.

I want to display the image in a maximum pixel-size for the longest side of the image. So, if the maximum length should be 1000px, I have to check if the height or the width is bigger. After that I resize the dimensions in the correct proportions. If the image dimensions are smaller then 1000px, nothing should happen.

This is my solution, which already works. But I don't feel well with it. Is there a smarter solution?

dimensions(1000);

function dimensions($limit) {           
    if ($width >= $height) {
        if ($width < $limit) $limit = $width;
        $factor = $width / $limit;
    }
    else {
        if ($height < $limit) $limit = $height;
        $factor = $height / $limit;
    }   
    $new_width = $width / $factor;
    $new_height = $height / $factor;
}
  • 写回答

1条回答 默认 最新

  • douqixia7942 2015-02-28 23:18
    关注

    Well my example code:

    function dimensions($limit) { 
        $tmp = max($width, $height);
        $limit = min($limit, $tmp);
        $factor = $tmp / $limit;
    
        $new_width = $width / $factor;
        $new_height = $height / $factor;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度