我正在为Web应用程序寻找类似如下的功能,
用户选择具有高分辨率图像的本地文件夹。 调整图像大小并发送到服务器进行处理。
在本地文件系统中创建文件夹,并根据服务器响应复制原始的高分辨率图像
我们可以不使用任何本地安装的应用程序而仅使用Web应用程序来实现此目的吗?请指导我,我可以开始使用哪种方法/技术。
答案 0 :(得分:0)
出于安全原因,浏览器不允许访问本地文件系统。为任何可以播放本地文件的网站成像。浏览器提供了可以在其中运行js应用的沙箱。
您最好的选择是使用webstorage。但是,您那里的容量有限,用户无法直接访问它。不同的浏览器可能具有不同的实现方式。
答案 1 :(得分:0)
您可以使用node.js和Sharp或Imagemagick来实现。
正如其他人在浏览器中提到的,出于安全原因,Javascript无法访问本地文件系统。因此,您必须提供一个上传接口,以便首先将映像上传到节点服务器,然后可以将映像转换为缓冲区/数据流,以调整缓冲区的大小,然后再次将其保存在准备下载的服务器上。
NodeJs是Javascript运行时 https://nodejs.org/en/
Express是一个应用程序框架,您可以构建可以执行JavaScript的网络服务器 https://expressjs.com/
(您已经说过不愿意,但是)您可以使用电子将其构建为节点桌面应用程序,该电子程序可以访问文件系统,但是它将是一个自包含的应用程序,而不是浏览器应用程序。 https://electronjs.org/
Sharp和imagemagick插件是最流行的基于nodejs的图像处理器
https://www.npmjs.com/package/sharp
https://www.npmjs.com/package/imagemagick
希望这可以帮助您入门