2012-06-15 52 views

回答

0

如果你去UIImage Class Reference,你会发现:

Drawing Images 

    – drawAtPoint: 
    – drawAtPoint:blendMode:alpha: 
    – drawInRect: 
    – drawInRect:blendMode:alpha: 
    – drawAsPatternInRect: 

这将解决您的问题。

编辑1为“如果我想绘制SVG而不是位图怎么办”。

如果你只是看上面的链接,你会发现所有准备好你的答案。

支持的图像格式

表1列出了可以通过UIImage的类被读取的文件格式。 表1支持的文件格式

格式

文件扩展名

标记图像文件格式(TIFF)

.TIFF,.TIF

联合图像专家组(JPEG)

.jpg,.jpeg

图形交换格式(GIF)

.gif注意

便携式网络图形(PNG)

png格式

Windows位图格式(DIB)

.BMP,.BMPf

Windows图标格式

.ICO

的Windows光标

的.cur

XWindow的位图

.xbm

如果你想与SVG玩看一看SVGKit

+0

如果我想绘制SVG而不是位图,该怎么办。 – DroidEngineer

+0

@Alex不幸的是,UIImage类不支持SVG。 http://developer.apple.com/library/ios/#documentation/uikit/reference/UIImage_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40006890-CH3-SW3 – ThomasW

+0

Ahhh !!!! 是否有任何库可用于在iPhone屏幕上绘制SVG。 – DroidEngineer

1

如果你的需求是温和的,借鉴iOS的SVG文件最简单的方法是使用一个UIWebView:

[myWebView loadData:rawSVGData MIMEType:@"image/svg+xml" textEncodingName:@"utf-8" baseURL:nil]; 

您可以在web视图设置各种属性,如的backgroundColor,不透明,scalesPageToFit,以定制它。尽管如此,速度并不快,并且做得并不好。