首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Fabric.js 使用自定义字体

这次就讲讲在 Fabric.js 中创建文本时怎么使用自定义字体、在项目运行时怎么修改字体、以及推荐一个精简字体库的工具。...学习本文前,你必须有一点 Fabric.js 的基础,如果没了解过 Fabric.js 可以阅读一下 《Fabric.js 从入门到膨胀》 创建文本时设置字体 在 Fabric.js 中使用自定义字体库时...') }) } 精简字体库 关于 Fabric.js 如何使用自定义字体库的内容说完了,但日常工作中我还遇到一个问题:某些特定地方会使用一些特殊字体,比如数字、项目名等地方...经过我长时间的审问,一位不愿透露姓名的网友终于透露出他用到精简字体库的工具 Fontmin 有客户端,也可以直接使用终端操作。 客户端也提供了mac和windows两个版本,操作起来非常简单。...有需要的工友可以打开链接获取。 Fontmin官网 Fontmin github地址 代码仓库 本文完整代码可通过下方链接获取。 ⭐ Fabric.js 使用自定义字体

63720

【实战篇】使用fabric.js 快速开发一个图片编辑器

和 konva.js都是强大的canvas库,功能上类似,konva.js比较新中文文档也多一些,因为比较熟悉fabric就没有采用konva。...通过vue的provide语法把fabric对象、EventEmitter对象向下传递,在mixins中保存选中的元素和选中状态。...字体属性可以自定义字体,需要先下载字体后再进行设置,可以通过fontfaceobserver工具库下载指定字体,成功后再设置字体名称。...组合 层级调整 快捷键实现 画布放大缩小 导入/导出 总结 fabric.js的功能很强大,可以很轻松的开发出一个简版的图片编辑器,自定义素材、模板、字体文件;还可以结合数据接口拼接模板生成图片,很轻松的实现定制模板...最后希望大家能够通过这个项目学习到fabric.js的基础用法,感兴趣的话可以一起维护这款小编辑器,欢迎star。

3.6K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    开源图片编辑器-可用于海报编辑、商品设计、封面设计、标签设计等场景

    今天跟大家推荐一下自己的开源图片编辑器,更像一个开源在线设计工具,可用于海报设计、图文笔记、商品设计、封面设计、标签设计、logo设计、等场景,自定义字体、素材、设计模板、右键菜单、快捷键,还提供插件化的方式扩展二次开发...vue-fabric-editor预览:https://nihaojob.github.io/vue-fabric-editor中文名字叫做快图设计,英文名字是vue-fabric-editor,基于 fabric.js...和 Vue开发,特点是简单易容、功能齐全、插件化架构,非常适合二次开发。...项目预览界面自定义字体渐变、自定义字体、大小、行高、间距、背景色都可以调整,还有描边、阴影等通用属性。...图形绘制不仅仅支持文本,普通的形状元素、SVG、二wei码、条形码、不规则多边形都支持右键菜单快捷键可以通过插件化的方式来定义快捷键和右键菜单,图片滤镜图片裁剪拖拽调整画布PSD导入水印设置分类素材创建设计与作品分类功能比较完整

    27220

    Canvas库 fabric.js可以实现哪些功能? 动图介绍

    我是开源图形编辑器vue-fabric-editor的作者,它是基于 fabric.js 和 Vue 开发的插件化图片编辑器,可自定义字体、素材、设计模板、右键菜单、快捷键。...可以非常方便的二次开发,帮助开发者快速构建图片编辑应用。fabric.js是一个canvas库,今天整理了一下fabric.js可以实现的功能,用动图的形式分享给大家,方便快速了解fabric.js。...源码见链接辅助线辅助线曲线文字曲线文字垂直文字垂直文字3D结合自定义文字条文字工具条缩略图缩略图白板白板实现自定义控制条自定义控制条Gif展示gif展示gif展示图表展示多边形绘制多边形绘制多边形调整拼图拼图实现图片区域调整笔刷笔刷多图生成自动多图导入

    34410

    fabric.js开发图片编辑器的细节实现

    之前写过一篇笔记,《使用fabric.js 快速开发一个图片编辑器》,简单介绍了如何用vue和fabric.js快速开发一款编辑器。...当时的版本比较粗糙,只能说是一个基础版的Demo,很多细节不够完善,参考了稿定设计和创客贴的设计编辑器,优化了很多必要的细节,也算是fabric.js的进阶用法,整理成笔记分享出来。...,而fabric.js自带的控制条较为简陋,可以通过自定义样式方法把控制条修饰的稍微美观一些。...最早的版本的画布大小调整就是对fabric.js的canvas大小做调整,这样做有2个问题,一是没办法将画布大小保存到json文件中,另外一个问题是缩小放画布时,缩小后画布颜色和背景颜色一致,无法区分画布的边界...最后的实现思路是,使用矩形元素模拟画布区域,fabric.js的canvas大小根据视口DOM的宽高自适应,通过调整矩形元素属性来设置画布到大小和颜色,其他元素通过属相面板修改属性。

    3.6K40

    动态海报营销FabricJs方案

    简介 Fabric.js是一个可以简化Canvas程序编写的库。 Fabric.js为Canvas提供所缺少的对象模型, svg parser, 交互和一整套其他不可或缺的工具。...Fabric.js可以做很多事情,如下: 在Canvas上创建、填充图形(包括图片、文字、规则图形和复杂路径组成图形)。 给图形填充渐变颜色。 组合图形(包括组合图形、图形文字、图片等)。...来设置图片绘制后的大小,这里为原来大小的一半 scaleX: 0.5, scaleY: 0.5 }); // 添加对象后, 如下图 card.add(imgInstance); /** * 如何向画布添加一个...textbox = new fabric.Textbox('这是一段文字', { left: 50, top: 50, width: 150, fontSize: 20, // 字体大小...dataURL = card.toDataURL({ format: 'jpeg', // jpeg或png quality: 0.8 // 图片质量,仅jpeg时可用 // 截取指定位置和大小

    3.5K21

    Fabric.js 上标和下标的使用偏方🔥

    在 Fabric.js 中,文本元素有 Text 、IText 和 Textbox 。本文主要讲解 IText 的上标和下标如何实现。在 Text 和 Textbox 中的实现方式也是一样的。...styles: { 0: { // 第1行 1: { // 第2个字符 deltaY: -14, // 向下偏移 fontSize: 24, // 设置字体大小...行号和字符下标都是从0开始,和 js 的数组一样。 IText 换行是使用 \n 来操作。 本例只有1行,所以行号为0。 2 所在的位置下标是 1。...如果对这方面设置不太理解的话,可以看看 Fabric.js IText设置指定字符颜色和背景色。...总结 其实本文设置上标和下标的方法都是一样的,主要流程是以下3步: 通过行号和文字下标找到对应的字符 通过 deltaY 设置指定字符的文本基线 修改 fontSize ,让指定字符的字号比其他字符小一点

    1.7K10

    开源一款支持跨平台的截屏+OCR+搜索+翻译+贴图+以图搜图软件

    经过数次版本迭代,eSearch 的功能愈加丰富 即拥有 截屏+OCR+搜索+翻译+贴图+以图搜图+录屏 字体是FiraCode,字体可在设置里设置 下载安装 到网站eSearch下载 或在右侧 releases...将获取到的API KEY 和Secret KEY 以及相应的你选择的文字识别服务URL 填入软件设置,去掉离线 OCR 的勾选即可使用在线 OCR。...) [x] 几何形状(边框填充支持调节) [x] 高级画板设置(使用 Fabric.js 的 api) [x] 图像滤镜(支持局部马赛克模糊和色彩调节) [x] 自定义框选松开后的操作 [x] 快速截取全屏到剪贴板或自定义的目录...[x] 截屏历史记录 [x] 窗口和控件选择(使用 OpenCV 边缘识别) [x] 长截屏 [x] 多屏幕 [x] 录屏 [x] 录制全屏 [x] 自定义大小 [x] 按键提示 [x] 光标位置提示...[x] 滚轮缩放 [x] 恢复默认大小位置 [x] 透明度 [x] 鼠标穿透 [x] 二维码识别 [x] OCR 识别 [x] 离线 OCR(eSearch-OCR) [x] 自定义离线 OCR 模型和字典

    2.5K20

    「Adobe国际认证」再优秀的设计师,也无法避免的 9 个,平面设计错误!

    让事情简单一点,想象有人在小屏幕上观看,并确保您的设计方式适合该尺寸。提取重要的内容,并确保您的用户对这些内容采取行动。 如何避免这种设计错误?...设计多个图形以测试它们在不同尺寸的便携式设备上的外观 坚持使用较小的文件大小,以便在移动设备上更快地加载图形 为您的图形创建横向和纵向布局,以便您的设计适合用户查看您的设计的任何屏幕方向 缺少空格 缺乏空白的是另一个设计缺陷...尝试新字体,但首先要考虑它们是否适合您的设计和品牌 确保您的排版可读、清晰且易于理解 根据听众的口味选择字体。...这种混乱可能表现为过多的文本或各种设计元素,如形状。无论出于何种原因,最终结果都未能传达其关键信息。...确定您的目标受众,以便您可以相应地做出设计决策 根据观众的喜好选择字体和颜色 保持个人喜好 未能适应效率方面的创新 另一个需要避免的非常重要的图形设计错误是未能在设计中欢迎新的人工智能。

    56020

    小程序的字体加载优化

    小程序的字体加载优化一、引言在小程序中,字体的加载直接影响页面的渲染速度和用户体验。...本文将详细讲解小程序中的字体加载优化方法,并提供具体的例子和实践建议,帮助开发者在小程序中实现更高效的字体加载。...四、字体加载优化技巧为了提升字体加载的性能,减少加载时间和提高用户体验,开发者可以采取以下优化措施:1. 字体文件压缩与优化字体文件的大小直接影响加载速度。...小程序中可以通过动态加载字体文件的方式,延迟加载某些字体,避免不必要的阻塞加载。...五、推荐参考的文章 《微信小程序字体优化技巧》 本文详细介绍了小程序中字体加载和优化的各类技巧,帮助开发者提升加载速度和页面体验。

    7500

    Refactoring UI

    当你刻意淡化次要和辅助信息, 努力突出最重要的元素时, 即使配色方案、 字体选择和布局没有改变, 效果也会立即变得更令人愉悦 # 尺寸并不代表一切 过分依赖字体大小来控制层次结构是一个错误--这往往会导致主要内容过大...,而且也是每个主要网络浏览器的默认字体大小 在刻度的小端,数值开始时应该非常密集,随着刻度的升高,间隔会逐渐变大 # 使用系统 一旦确定了间距和大小系统,你就会发现设计速度快了很多,尤其是在浏览器中设计时...不要成为网格的奴隶--为你的组件提供它们所需的空间,在真正必要之前不要做出任何妥协 # 相对尺寸不能缩放 一般来说,在大屏幕上较大的元素需要比已经相当小的元素收缩得更快,在小屏幕尺寸上,小元素和大元素之间的差异应该没有那么大...不过在在实践中却并不完美,会有分数值,并且尺寸过于局限 # 自定义模度 该比例尺适用于大多数项目, 并且与 "建立间距和尺寸系统 "中推荐的间距和尺寸比例尺非常吻合 它的限制足以加快你的决策速度...大阴影非常适合模态对话框 # 建立深度系统 定义一组固定的阴影会加快工作流程,并有助于保持设计的一致性,通常五个选择就足够 先定义最小的阴影和最大的阴影,然后在中间填入阴影,阴影的大小呈线性增长

    92230

    CSS基础-文本样式:颜色、字体、大小、对齐

    在网页设计中,文本样式是传达信息和提升用户体验的关键元素。本文将深入浅出地介绍CSS中关于文本颜色、字体、大小和对齐的基础知识,同时分析常见问题、易错点及如何避免,最后提供代码示例。 1....字体 font-family属性用于设置文本的字体。通常,应提供多个备选字体,以防用户计算机上未安装首选字体。 易错点:字体名称拼写错误或不兼容。.../* 注意:自定义字体需确保已加载 */ } 确保字体名称正确,并考虑使用通用字体族作为备选。...字体大小 font-size属性用于设置文本大小。可以使用绝对单位(如px)或相对单位(如em、rem、%)。 易错点:使用不推荐的单位或大小比例失调。...常见问题与解决 浏览器兼容性:某些CSS3的文本样式在旧版浏览器中可能不支持,如渐变色、阴影等。使用前缀(如-webkit-)或备选方案。

    46610

    浏览器之性能指标_FCP

    fallback 在字体加载完成之前,使用与自定义字体相似的系统默认字体进行显示,并在加载完成后切换为自定义字体。...optional 优先显示系统默认字体,在自定义字体在加载期间可用时切换为自定义字体。...---- 在字体加载前和加载过程中显示文本 在某些情况下,当网站的其他内容(如图像、样式和脚本)已经加载完成时,页面上的所有文本会突然一下子全部显示出来。...网站的文本内容在准备好可阅读时才加载。文本通常只占用几个字节的内容。但在许多网站上,它的加载时间可能会呈指数级增长。这是因为「字体文件还没有准备好用于显示。...然而,FCP是一个非常好的指标,可以提高整体网站性能水平。我们采取的任何降低FCP的措施也将降低整体页面速度。因此,几乎可以「将其视为整体性能的信号」。 FP和FCP之间有什么区别?

    1.5K30

    「Go工具箱」想用生成文字头像,推荐这个工具:letteravatar

    但这里值得学习的是有两个知识点:FreeType和TrueType。 FreeType和TrueType FreeType是一个可移植的,高效的字体引擎。TrueType是一个字体。...字体在电脑上的显示有两种方式:点阵和矢量。对于一个字,点阵字体保存的是每个点的渲染信息。这个方式的劣势在于保存的数据量非常大,并且对放大缩小等操作支持不好。因此出现了矢量字体。...一个汉字从字体到显示,FreeType大致有几个步骤:加载字体、设置字体大小、加载glyph、字体对应大小等转换、绘制字体。...基本使用 生成一个100*100大小的以字母‘A’为图像的头像: img, err := letteravatar.Draw(100, 'A', nil) 当然,我们还可以自定义字体、背景颜色、...关注送《100个go常见的错误》pdf文档。

    63120

    自定义字体

    所以你可以看到网页的字体一般都比较中规中矩,不像平面设计那样各种新花样。 但是我们在浏览一些网站时,还是可以发现一些非常酷炫和高端的字体。...,则可能导致在某些浏览器中无法生效。...(iconfont) 自定义字体平时其实使用还是非常少的,不过它还有一个应用非常广的领域——自定义图标字体(iconfont)。...对于使用图片的图标来说,iconfont 图标有许多优点: 灵活性:改变图标的颜色,背景色,大小都非常简单 兼容性:基本没有兼容性问题,在IE6,Android2.3都能够兼容 扩展性:替换图标很方便...,新增图标也非常简单 高效性:iconfont有矢量特性,不会失真 轻便性:在使用上字体文件和普通的静态资源一样,既可以外链也可以内链,并且字体文件也可以使用gzip压缩 既然有这么多优点,我们也实战下

    2.5K100

    基于编码注入的对抗性NLP攻击

    大多数计算机支持许多不同的字体。不需要字体的每个代码点都有一个字形,没有相应字形的代码点通常呈现为“未知”占位符字符。E....在某些字体中,字符序列可以充当伪同形文字,例如大多数无衬线字体中的序列“rn”和“m”。这种视觉技巧为网络诈骗者提供了一种工具。..., 用于没有相应字形的有效 Unicode 编码。因此,这些字符在呈现的文本中可见。但实际上,不可见字符是特定于字体的。即使某些字符被设计为具有非字形渲染,细节仍由字体设计者决定。...同形文字同形文字是呈现为相同字形或视觉上相似字形的字符。当在不同的语言系列中使用同一书面脚本的部分时,通常会发生这种情况。例如,考虑英语中使用的拉丁字母“A”。西里尔字母中使用了非常相似的字符“А”。...在 Unicode 规范中,这些是不同的字符,尽管它们通常呈现为同形文字。图片上图显示了使用同形文字进行攻击的示例。与不可见字符一样,同形文字是特定于字体的。

    60010

    自定义字体

    所以你可以看到网页的字体一般都比较中规中矩,不像平面设计那样各种新花样。 但是我们在浏览一些网站时,还是可以发现一些非常酷炫和高端的字体。...,则可能导致在某些浏览器中无法生效。...(iconfont) 自定义字体平时其实使用还是非常少的,不过它还有一个应用非常广的领域——自定义图标字体(iconfont)。...对于使用图片的图标来说,iconfont 图标有许多优点: 灵活性:改变图标的颜色,背景色,大小都非常简单 兼容性:基本没有兼容性问题,在IE6,Android2.3都能够兼容 扩展性:替换图标很方便...,新增图标也非常简单 高效性:iconfont有矢量特性,不会失真 轻便性:在使用上字体文件和普通的静态资源一样,既可以外链也可以内链,并且字体文件也可以使用gzip压缩 既然有这么多优点,我们也实战下

    1.6K30
    领券