我有一系列标准照片,我希望用户可以选择背景照片。我不确定如何调整这些照片的大小。我需要宽高比保持不变,宽度为400px
。我想在文件名末尾用- thumbnail
重新保存它们。
来自控制器的图像
$scope.standardPhotos = [
"/images/app-directory-images/default1.png",
"/images/app-directory-images/default2.png",
"/images/app-directory-images/default3.png",
"/images/app-directory-images/default4.png",
"/images/app-directory-images/default5.png"
];
答案 0 :(得分:1)
您可以使用画布,但使用非常糟糕的算法进行缩减采样。我最后使用了麻省理工学院授权的Hermite downsampler,它也使用了画布,但没有默认的缩放器那么糟糕。
请注意,重新采样图片在完成时是一项耗费大量计算资源的操作,所以最好只在您选择的任何图像编辑器(甚至是web-app)中调整它们的大小,然后上传这些图像编辑器。到您的服务器,以防止每个用户每次都进行这些计算。
保存文件始终受浏览器限制的限制,您所能做的就是询问用户是否要保存文件。如果您的意思是用户将已调整大小的图像发送回服务器进行保存,请特别注意安全性,并且不要假设数据来自服务器端的javascript。
答案 1 :(得分:0)
您能提供一些有关您正在使用的信息吗?