真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

iOS中如何實現imageView任意角度旋轉

這篇文章主要介紹iOS中如何實現imageView任意角度旋轉,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

成都創(chuàng)新互聯(lián)是一家專注于成都網站建設、網站設計與策劃設計,達川網站建設哪家好?成都創(chuàng)新互聯(lián)做網站,專注于網站建設十多年,網設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:達川等地區(qū)。達川做網站價格咨詢:18980820575

如果需要實現對imageView實現一定角度的旋轉,具體步驟是:

      1.將image轉成context。

      2.對context進行一定角度的旋轉。

      3.將旋轉后的context 轉化成image。

經過這三個步驟,我們就能夠實現將圖片真正的做到旋轉。

 好了,直接上代碼:

#import"UIImage+RotateImageTool.h"
#import
#import
@implementationUIImage (RotateImageTool)
-(UIImage*)rotateImageWithDegree:(CGFloat)degree{
//將image轉化成context
//獲取圖片像素的寬和高
size_t width =self.size.width*self.scale;
size_t height =self.size.height*self.scale;
//顏色通道為8因為0-255經過了8個顏色通道的變化
//每一行圖片的字節(jié)數因為我們采用的是ARGB/RGBA所以字節(jié)數為width * 4
size_t bytesPerRow =width *4;
//圖片的透明度通道
CGImageAlphaInfo info =kCGImageAlphaPremultipliedFirst;
//配置context的參數:
CGContextRef context =CGBitmapContextCreate(nil, width, height,8, bytesPerRow,CGColorSpaceCreateDeviceRGB(),kCGBitmapByteOrderDefault|info);
if(!context) {
return nil;
}
//將圖片渲染到圖形上下文中
CGContextDrawImage(context,CGRectMake(0,0, width, height),self.CGImage);
uint8_t* data = (uint8_t*)CGBitmapContextGetData(context);
//旋轉欠的數據
vImage_Buffer src = { data,height,width,bytesPerRow};
//旋轉后的數據
vImage_Buffer dest= { data,height,width,bytesPerRow};
//背景顏色
Pixel_8888 backColor = {0,0,0,0};
//填充顏色
vImage_Flags flags = kvImageBackgroundColorFill;
//旋轉context 
vImageRotate_ARGB8888(&src, &dest,nil, degree *M_PI/180.f, backColor, flags);
//將conetxt轉換成image
CGImageRef imageRef =CGBitmapContextCreateImage(context);
UIImage* rotateImage =[UIImageimageWithCGImage:imageRefscale:self.scaleorientation:self.imageOrientation];
returnrotateImage;
}

iOS中如何實現imageView任意角度旋轉

代碼中有詳細的注釋,在這里我就不過多的解釋了。感興趣的可以到github上面下載哦。

下載地址:github.com/15221532825/ImageTool  (本地下載)

附:iOS ImageView的Image自適應縮放顯示全套處理方法

// retina屏幕圖片顯示問題
[_detailImageView setContentScaleFactor:[[UIScreen mainScreen] scale]];
// 不規(guī)則圖片顯示
_detailImageView.contentMode = UIViewContentModeScaleAspectFill;
_detailImageView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
// 圖片大于或小于顯示區(qū)域
_detailImageView.clipsToBounds = YES;

以上是“iOS中如何實現imageView任意角度旋轉”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


分享名稱:iOS中如何實現imageView任意角度旋轉
標題網址:http://weahome.cn/article/gjhchh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部