Skia
文章平均质量分 92
Skia 2D引擎开发知识分享
liulun
私信加我微信
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Skia渲染 SVG 矢量图像
类型的图像并不是位图图像,而是矢量图像,它是由数学方程定义的图形,主要由点、线、曲线、形状、颜色组成。由于此方法会被多次执行,不可能每次都去创建字体对象,所以这里用到了局部静态变量以缓存字体对象。位图图像在放大或缩小时可能会丢失图像的细节或出现锯齿,这类文件体积通常较大。矢量图像可以无限放大或缩小而不失真,与分辨率无关,这类文件体积通常较小。时会创建字体对象,以后每次调用,都使用第一次创建并缓存的字体对象。以让出CPU时间片,给子线程让出执行资源,避免忙等待。此对象提供从文件系统加载资源的能力,原创 2025-09-12 12:52:07 · 731 阅读 · 0 评论 -
Skia-如何渲染文本(上)
编码即可以用来绘制英文,又可以用来绘制中文,甚或中英文混杂的字符串,所以兼容性更好,虽然多占用一些内存,一般也会优先使用这种方式绘制字符串。有些字体文件不支持中文,所以当你把编码方式和文本长度都设置好之后,仍然无法绘制中文文本时,那就要看是不是选择了错误的字体了。,这个对象可以查找 并使用 Windows 系统上的字体,也可以通过字体文件创建字体(这一点我们后文会介绍)。有了它之后,我们就可以创建字体对象了(对应的字体为:微软雅黑)。方法的第一个参数为被绘制的字符串,第二个和第三个参数为文本绘制的位置。原创 2025-08-01 12:01:13 · 1128 阅读 · 0 评论 -
Skia-如何渲染文本(下)
字体图标在前端开发中非常普遍,HTML 能渲染字体图标,Skia 当然也可以(显而易见)。使用系统字体最大的好处就是内存占用少,因为系统已经加载了那些字体,应用程序只不过是复用系统加载的字体文件,不会占用额外的内存。有的时候使用 Skia 绘制文本或字体图标时,你会发现文本或字体图标与正常网页中的表现不一致,比如:有的时候,已经在程序的其他地方读取了字体文件的数据,直接使用自己的数据来创建。类型的变量来存储文件路径,就不用这么麻烦的来对字符串进行转码操作了。类型的对象,这个对象负责管理字体文件的数据。原创 2025-08-05 11:28:54 · 768 阅读 · 0 评论 -
如何编译 Skia 源码
只有把 Skia 源码编译成应用程序库才能在应用程序中使用 Skia。本文介绍如何在 Windows 操作系统下编译 Skia 源码。Skia 兼容很多平台,在其他平台下编译 Skia 源码的方式与在 Windows 平台下编译 Skia 的方式大同小异,没办法在这里把所有平台的编译步骤都一一介绍一遍,不过,相信本章内容将有助于读者完成在其他平台上编译 Skia 的工作。原创 2025-02-26 15:14:32 · 910 阅读 · 0 评论 -
漫谈史上最强Skia 2D渲染引擎(少谈优点,多谈缺点)
Ganesh和Graphite是两组技术,Ganesh更老更稳定,Graphite更新、更快(多线程支持更好)、更不稳定,但它是趋势,是Skia团队的主攻方向。由于要使用动态库的函数指针,所以这个后端会让你的应用程序多出两个动态库:libEGL.dll,libGLESv2.dll,大概20M,裁剪不掉,还没办法静态链接。如果你看到Direct3D,眼前一亮,心想,别的都不用看了,我要的就是这个,我只要搞Windows应用,其他肯定都没这个好。我建议别选最新的,也别选太老的,我一般选半年内,1个月前的版本。原创 2025-01-11 11:43:04 · 5893 阅读 · 1 评论
分享