欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

javascript - 请教这些图片效果是如何做到的

程序员文章站 2022-05-09 09:02:23
...
http://www.louisvuitton.cn/im...

打开上面图片地址,设置wid=500&hei=500可以改变图片的大小,请问是何种技术做的,谢谢。

回复内容:

http://www.louisvuitton.cn/im...

打开上面图片地址,设置wid=500&hei=500可以改变图片的大小,请问是何种技术做的,谢谢。

从响应头看是服务端生成的,所以不是通过页面js控制的;后端根据url参数实时生成图片(比如GD库)

nginx图片裁剪,我以前遇到过,见这里

cdn
之前用过阿里云的, 云端处理图片, 在你传入参数之后, 根据参数对图片进行处理. 但图片必须是在服务器中.

javascript - 请教这些图片效果是如何做到的

https://www.aliyun.com/produc...

再php下有图片处理GD 这个可以做到处理图片大小的问题 创建一个空图层 然后把图片复制进去 生成 输出 就可以了

nginx对图片进行裁剪,配置里面提供了图片尺寸

如果你使用的是php的话,这里有1个项目就是关于这方面的可以直接拿去使用基于URL的轻量级图片处理库

在服务器端取的传递的参数 根据相应属性生成一个javascript - 请教这些图片效果是如何做到的 标签返回到前台
比如

javascript - 请教这些图片效果是如何做到的

给图片加上相应属性

服务器直接设置输出类型res.header('content-type', 'image/jpg');
比如下面这张图片,其地址为:http://bing.ioliu.cn/v1?w=500...

javascript - 请教这些图片效果是如何做到的

实现代码:https://github.com/xCss/bing/...

当然,上面是用Nodejs写的,你想要的PHP版本也有:https://github.com/xCss/bing/...

    /*
    * 直接输出图片到页面
    */
    function outputPic($url,$w,$h){
    
        if($w&&$h){
            $url = str_replace('1920x1080',$w.'x'.$h,$url);
        }
        header('Content-Type:image/jpeg');
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'User-Agent: Mozilla/5.0 (Windows NT 6.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.137 Safari/537.36'
        ));
        curl_setopt($ch, CURLOPT_TIMEOUT,0);//忽略超时
        curl_setopt($ch, CURLOPT_NOBODY, false);
        $str = curl_exec($ch);
        curl_close($ch);
        
    }

注:nodejs版本实现的是通过七牛云存储的图片处理实现的,传送门:http://developer.qiniu.com/co...

写了一串关于前端自适应图片大小的回答。写完才发现审错题了。。。
楼上说得对! ⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄

什么GD库啊,NGINX裁剪,有毛关系,不就是对不同的参数输出不同的图片吗?哪有什么技术可言?

相关标签: php javascript