php - 如何将图像作为流提供
问题描述
在我多年使用网络(以及偶尔开发网站)的过程中,我注意到有些网站提供的图像与其他网站不同。
- 第一种是先提供低质量的图像,然后逐渐提供更多的数据,使图像变得更清晰。
- 第二种为图像提供服务,就好像它是从上到下垂直扫描一样。
这张图片说明了我想说的
据我所知,我设置的每个 PHP、NodeJS 服务器都像第二种那样提供图像。
所以我的问题是如何在 PHP 或 NodeJS(使用 ExpressJS)中实现行为 1?
PS:
没有 javascript/ajax/(正在使用任何 3rd 方库)
我注意到这件事的网站没有使用 JS/multiple request 来实现这一点。这都是纯粹的服务器端。
解决方案
首先,您可以使用 PHP 的 image magick ,
$im = new imagick();
$im->setResolution(200,200);
$im->readImage('path to the image');
$im->writeImage('path to store the new image with name of image and extension');
$im->clear();
$im->destroy();
您需要在读取图像之前设置分辨率。然后根据您的用例重复该脚本。
希望对你有所帮助。
推荐阅读
- javascript - 在玩笑测试中使用 expect.assertions(x) 与使用 fail()
- google-maps - What is Google Maps Platform Transition Account
- asp.net-mvc - 将布尔列渲染为真/假
- c# - Send forget password to email Asp.net code error
- javascript - Mocha: how to assert a promise rejection?
- c# - Core.LargeFileUpload File Not Found 找不到文件夹
- selenium-webdriver - 我收到“无效的会话 ID”
- php - XMPP 从名册中解析名称
- json - 如何在MongoDB中查找与数组类型字段中的值匹配的文档
- daml - DAML SDK 中是否有一个 webhook 可以收集有关已创建事务的数据