【发布时间】:2021-12-07 14:54:59
【问题描述】:
有没有办法将CAShapeLayer 转换为 SVG 图像并在 Swift 中导出?
【问题讨论】:
标签: swift calayer cashapelayer
有没有办法将CAShapeLayer 转换为 SVG 图像并在 Swift 中导出?
【问题讨论】:
标签: swift calayer cashapelayer
一个形状层包含一个 CGPath。我搜索了“将 CGPath 转换为 SVG”,发现这篇(相当老的)帖子演示了将 CGPath 转换为 SVG:
【讨论】:
CAShapeLayer 是用于在屏幕上绘图的构造。它处理由CGPath 定义的形状的有效显示,但CAShapeLayer 本身是要在屏幕上绘制的。
考虑一个由贝塞尔曲线和相关绘图基元定义的单一图形会很有帮助,这些图形可以使用CAShapeLayers 绘制,也可以用 SVG 表示。
据我所知,系统 API 中没有内置任何功能来创建 SVG 格式的图像。您将不得不求助于第三方库。 Core Graphics 确实支持 PDF 作为元文件格式(可以记录绘图命令的文件),但我认为 Apple 不支持 SVG 作为元文件格式。
【讨论】: