javascript - 图像适合画布fabricjs
问题描述
我正在使用 Fabricjs 使用当前代码上传图像
图像仅显示完整图像的 1/4。它没有在此 tscode 的画布中显示完整图像,我正在手动设置图像的宽度和高度。
这是我的 Ts 代码
addImage(canvasInst, imageUrl) {
fabric.Image.fromURL(imageUrl, img => {
var oImg = img.set({
left: 0,
top: 0
});
var canvasWidth = canvasInst.width / canvasInst.getZoom();
oImg.scaleToWidth(canvasWidth);
canvasInst.add(oImg).renderAll();
canvasInst.toDataURL({ format: "png", quality: 0.8 });
});
}
但我正在尝试其他方式 scaletowidth 但这在这里不起作用
这是堆栈闪电战
例子
解决方案
FabricJS 使用 和 属性scaleX
来scaleY
确定图像的大小,而width
和height
属性用于指定应该使用多少原始图像尺寸(缩小这些值将裁剪图像,而不是缩放图像)。
在您的链接示例中,您正在scaleToWidth()
画布上运行。您需要在图像上运行它。
fabric.Image.fromURL(imageUrl, img => {
var oImg = img.set({
left: 0,
top: 0
});
var canvasWidth = canvasInst.width / canvasInst.getZoom();
oImg.scaleToWidth(canvasWidth);
canvasInst.add(oImg).renderAll();
});
推荐阅读
- c# - 为什么空的 OpenGL 程序使用完整的内核?
- php - 在 TCPDF 中使用 writeHTML 删除特定的 html 单元格边框
- bluetooth-lowenergy - BLE SPP 配置文件
- regex - sed 替换 docker-compose 中的 docker 镜像标签
- c++ - c++ linux:如何追踪异常的真正原因?
- javascript - JavaScript 减少内部映射
- html - 如何在css中使用clip-path属性作为边框
- python - Python 中的 path = pathlib.Path().absolute() 是什么意思?
- ios - 如何在 Swift 中让 UIImageView 照片在一段时间后消失
- python - 使用python获取文本形式本地存储的html文件