javascript - 在 Canvas 中使用 ctx.scale() 方法时,调整大小和旋转在 fabricjs 中不起作用?

标签 javascript css html canvas fabricjs

我正在尝试使用 canvas.clipTo 函数中的 ctx.scale() 方法将 Canvas 形状设置为椭圆形,同时我的调整大小和拖动属性在 fabric.js 中无法正常工作。 任何人都知道如何解决这个问题? 这是我的代码 //html

<canvas id="c" width="400" height="200"></canvas>

//脚本

var w=canvas.width / 4;
var h=canvas.height / 2;
canvas.clipTo = function(ctx) {

 ctx.scale(2, 1);
 ctx.arc(w, h, 90, 0, 2 * Math.PI, true);

};
 canvas.renderAll();

这是我的 Fiddle Demo

最佳答案

在 clipTo 函数中保存和恢复它 -

ctx.save();
ctx.scale(2, 1);
ctx.arc(w, h, 90, 0, 2 * Math.PI, true);
ctx.restore();

关于javascript - 在 Canvas 中使用 ctx.scale() 方法时,调整大小和旋转在 fabricjs 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19066379/

相关文章:

从 CRM 4 升级到 CRM 2011 后出现 Javascript 错误

javascript - 如何将 Base64 编码图像传递到 WCF REST 端点

javascript - 当用户从 Jquery 中的文本框按回车键时,如何只调用一个按钮单击功能?

css - 甲骨文顶点 5 : how do I remove spaces between rows and inside cells

javascript - D3.js 如何使用折线图在我的图例中添加工具提示

javascript - 包含脚本时出现随机查询字符串

css - 如何通过 'className1' 或 'className2' 定位元素?

css - Twitter Bootstrap 3 - 反馈字形已移动

html - 最小化页面时如何在CSS中修复菜单栏和容器

javascript - 将 Javascript 字符串保存或下载为文件