Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript FabricJS-下载具有指定宽度和动态高度的图像_Javascript_Fabricjs - Fatal编程技术网

Javascript FabricJS-下载具有指定宽度和动态高度的图像

Javascript FabricJS-下载具有指定宽度和动态高度的图像,javascript,fabricjs,Javascript,Fabricjs,我正在一个HTML画布图像生成器项目中使用FabricJS 我正在尝试找出如何导出具有指定宽度但具有动态高度的图像。用户在画布中创建的图像可以具有不同的高度,但始终具有相同的宽度(1080px) 我希望下载的功能如下: function saveImage(e) { this.href = canvas.toDataURL({ format: "png", quality: 0.8, width: 1080, height: auto }); this.download =

我正在一个HTML画布图像生成器项目中使用FabricJS

我正在尝试找出如何导出具有指定宽度但具有动态高度的图像。用户在画布中创建的图像可以具有不同的高度,但始终具有相同的宽度(1080px)

我希望下载的功能如下:

function saveImage(e) {
this.href = canvas.toDataURL({
format: "png",
quality: 0.8,
width: 1080,
height: auto
});
this.download = new Date().getTime() + ".png";
}
}

不幸的是,“高度:自动”在这种情况下不起作用。我怎样才能达到我想要的结果呢?

这应该可以。其思想是将当前画布高度乘以导出宽度与当前宽度的比率,然后将其四舍五入以确保导出高度为整数

function saveImage(e) {
this.href = canvas.toDataURL({
format: "png",
quality: 0.8,
width: 1080,
height: Math.round(1080 / canvas.width * canvas.height)
});
this.download = new Date().getTime() + ".png";
}
}