我对 Objective C iOS 开发很陌生。我只想在 iPhone 屏幕上的随机位置绘制位图/SVG。我研究过Coregraphics,iPhone的Quartz2d框架,但没有找到方向。
3 回答
如果您的需求不大,在 iOS 上绘制 SVG 文件的最简单方法是使用 UIWebView:
[myWebView loadData:rawSVGData MIMEType:@"image/svg+xml" textEncodingName:@"utf-8" baseURL:nil];
您可以在 webView 上设置各种属性,例如 backgroundColor、opaque 和 scalesPageToFit,以对其进行自定义。不过,它并不快,也不能很好地完成所有事情。
我知道两个用于绘制 svg 图像的框架。https://github.com/SVGKit/SVGKit和https://github.com/destman/SVGView。我现在正在玩第二个,你可以在 github 上找到我的 fork。
如果你去UIImage Class Reference你会发现:
Drawing Images
– drawAtPoint:
– drawAtPoint:blendMode:alpha:
– drawInRect:
– drawInRect:blendMode:alpha:
– drawAsPatternInRect:
这将解决您的问题。
为“如果我想绘制 SVG 而不是位图怎么办”编辑 1。
如果您只是查看上面的链接,您会发现所有准备就绪的答案。
支持的图像格式
表 1 列出了 UIImage 类可以读取的文件格式。表 1 支持的文件格式
格式
文件扩展名
标记图像文件格式 (TIFF)
.tiff,.tif
联合图像专家组 (JPEG)
.jpg、.jpeg
图形交换格式 (GIF)
.gif
便携式网络图形 (PNG)
.png
Windows 位图格式 (DIB)
.bmp、.BMPf
Windows 图标格式
.ico
窗口光标
.cur
XWindow 位图
.xbm
如果你想玩 svg 看看SVGKit。