如何使用 FabricJS 设置 IText 对象的 URL 字符串的质量级别?

如何使用 FabricJS 设置 IText 对象的 URL 字符串的质量级别?

在本教程中,我们将学习如何使用 FabricJS 设置 IText 对象的 URL 字符串中的质量级别。 IText 类是在 FabricJS 版本 1.4 中引入的,它扩展了 Fabric.Text 并用于创建 IText 实例。 IText 实例使我们可以自由选择、剪切、粘贴或添加新文本,而无需额外配置。还有各种支持的按键组合和鼠标/触摸组合使文本具有交互性,而 Text 中未提供这些组合。

然而,基于 IText 的 Textbox 允许我们调整文本矩形的大小并自动换行。对于 IText 来说情况并非如此,因为高度不会根据换行进行调整。我们可以通过使用各种属性来操作 IText 对象。同样,我们可以使用quality属性在IText对象的URL字符串中设置质量级别。

语法

  1. toDataURL({ quality: Number }: Object): String

登录后复制

参数

options(可选) – 此参数是一个对象,它为 IText 对象的 URL 表示形式提供额外的自定义。使用此参数可以更改高度、质量、格式和许多其他属性,其中质量是一个属性。

选项键

quality – 此属性接受一个 Number 值,表示最终输出图像的质量级别。可接受的值介于 0 和 1 之间,不包括 0。0.1 表示质量最差,1 表示质量最好。该属性只能用于 jpeg 格式。默认值为 1。

示例 1

不使用质量属性

让我们看一个代码示例,看看不使用质量属性时的输出图像。一旦我们从开发工具打开控制台,我们就可以看到 IText 对象的 URL 表示。我们可以复制该 URL 并将其粘贴到新选项卡的地址栏中以查看最终输出。由于我们没有使用quality属性,因此将使用默认值,即1。

  1. Without using the quality property

    You can open console from dev tools and see the output URL. You can copy that and paste it in the address bar of a new tab to see the final image

    // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiate a shadow object var shadow = new fabric.Shadow({ blur: 25, color: "grey", offsetX: 12, offsetY: 15, }); // Initiate an itext object var itext = new fabric.IText( "Add sample text here.Lorem ipsum dolor sit amet consectetur adipiscing.",{ width: 300, left: 310, top: 70, fill: "#c70039", backgroundColor: "#c1dfed", stroke: "#c70039", originX: "center", shadow: shadow, } ); // Add it to the canvas canvas.add(itext); // Using the toDataURL method console.log(itext.toDataURL({ format: "jpeg" }));

登录后复制

示例 2

使用质量属性

让我们看一个代码示例,看看使用quality属性时IText对象的最终输出图像是什么样子。在本例中,我们将值传递给它 0.1。因此最终图像的质量将变为最差。

  1. Using the quality property

    You can open console from dev tools and see the output URL. You can copy that and paste it in the address bar of a new tab to see the final image

    // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiate a shadow object var shadow = new fabric.Shadow({ blur: 25, color: "grey", offsetX: 12, offsetY: 15, }); // Initiate an itext object var itext = new fabric.IText( "Add sample text here.Lorem ipsum dolor sit amet consectetur adipiscing.",{ width: 300, left: 310, top: 70, fill: "#c70039", backgroundColor: "#c1dfed", stroke: "#c70039", originX: "center", shadow: shadow, } ); // Add it to the canvas canvas.add(itext); // Using the toDataURL method console.log(itext.toDataURL({ format: "jpeg", quality: 0.1 }));

登录后复制

以上就是如何使用 FabricJS 设置 IText 对象的 URL 字符串的质量级别?的详细内容,更多请关注【创想鸟】其它相关文章!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

点点赞赏,手留余香

给TA打赏
共0人
还没有人赞赏,快来当第一个赞赏的人吧!
    编程技术

    在 JavaScript 中为 String.prototype.trim() 方法实现 polyfill

    2025-3-7 18:07:50

    编程技术

    如何使用 FabricJS 获取文本中当前选择的样式?

    2025-3-7 18:08:02

    0 条回复 A文章作者 M管理员
    欢迎您,新朋友,感谢参与互动!
      暂无讨论,说说你的看法吧
    个人中心
    购物车
    优惠劵
    今日签到
    私信列表
    搜索