我尝试使用FileSaver.js(https://github.com/eligrey/FileSaver.js/)
当我保存jpg类型的图像时,Firefox中显示的另存为对话框在保存类型下拉列表中显示不正确的值(它表示" PNG图像( .jpg),但我期望的是JPEG图像( .jpg))。
有谁能告诉我如何解决这个问题?
答案 0 :(得分:0)
最后,我找到了这个问题的原因。
我使用canvas-toblob javascript库将画布转换为blob。但是Firefox有toblob方法的内部实现,因此从不调用canvas-toblob.js中的相同方法。
我修改了canvas-toblob.js,以便Firefox将使用此库中的方法。这解决了我的问题
if (HTMLCanvasElement) {
canvas_proto.toBlob = function(callback, type /*, ...args*/) {
if (!type) {
type = "image/png";
} if (this.msToBlob && /^\s*image\/png\s*(?:$|;)/i.test(type)) {
callback(this.msToBlob());
return;
}
答案 1 :(得分:0)
您需要为type参数指定image / jpeg。