fabricjs - fabricjs - 将 SVG 内联样式应用于对象
问题描述
我正在用这个 SVGloadSVGfromURL
填充画布
正如您在链接中看到的,我的衬衫上有一些希瑟效果,还有一些阴影。另外,我的 SVG 样式适用mix-blend-mode: multiply;
于我的路径。
不幸的是,一旦在我的画布中渲染,似乎没有考虑到路径 CSS:
我怎样才能确保应用这种风格?
解决方案
这是一个例子。基本上你需要将 mix-blend-mode 映射到 globalCompositeOperation
var site_url = 'http://s3.eu-central-1.amazonaws.com/balibart-s3/SVGMockups2/59f32980b5d8493ef7f29904/front/Layer.svg';
canvas = new fabric.Canvas('canvas');
fabric.loadSVGFromURL(site_url, function(objects) {
var group = new fabric.Group(objects, {
left: 165,
top: 100,
});
canvas.add(group);
group._objects[3].globalCompositeOperation='multiply';
group._objects[2].globalCompositeOperation='multiply';
group._objects[4].globalCompositeOperation='multiply';
group._objects[5].globalCompositeOperation='multiply';
group._objects[6].globalCompositeOperation='multiply';
/*for(var i=0;i<objects.length;i++){
canvas.add(objects[i]);
}
canvas.getObjects()[5].globalCompositeOperation='multiply';*/
// canvas.add(objects);
canvas.renderAll();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/2.4.6/fabric.js"></script>
<canvas id='canvas' width="900" height="900"></canvas>
推荐阅读
- c# - 如何在 C# 中使用 LINQ 过滤嵌套字典?
- flask - FLASK:请求的 URL 不允许该方法
- azure-active-directory - 如何在 Azure ADB2C 中生成证书签名请求 (CSR) 文件和密钥对?
- function - 为什么 Octave 看不到这个物体?
- visual-studio - 未为字符串和类型 object() 定义运算符“&”
- python - 在 Python 中创建“重做”函数以返回多个函数的开头
- javascript - “Adobe acrobat javscript” 为什么当我选择值时我的第二个下拉列表没有填充?但 1s 的下拉菜单工作正常
- c - MPI_Reduce 和 MPI_Allreduce - 如何在排名为 0 的节点上存储单个总数?
- delphi - 在项目组中添加来自其他项目的单元
- javascript - Javascript。未捕获的 ReferenceError:未定义空间