参考网上的资料,自实现了一个UIImageView绘制圆形图片功能。

先看效果:

代码如下:

- (void)buttonAction:(id)sender {

//方式1,见上图的方式1效果。通过imageview的layer来操作

UIImageView *imageView1 = [[UIImageViewalloc] initWithImage:[UIImageimageNamed:@"11.png"]];

imageView1.frame = CGRectMake(60,100, 100, 100);

imageView1.layer.masksToBounds =YES;

imageView1.layer.cornerRadius =50;

[self.view addSubview:imageView1];

//方式2,见上图的方式2效果。对画布裁剪成圆形,然后再将原始图像画出来

UIImageView *imageView2 = [[UIImageViewalloc] initWithFrame:CGRectMake(60,250, 100,100)];

UIImage *image2 = [UIImageimageNamed:@"12.png"];

imageView2.image = [selfcircleImage:image2 withParam:0];

[self.view addSubview:imageView2];

}

-(UIImage*) circleImage:(UIImage*) image withParam:(CGFloat) inset {

UIGraphicsBeginImageContext(image.size);

CGContextRef context =UIGraphicsGetCurrentContext();

//圆的边框宽度为2,颜色为红色

CGContextSetLineWidth(context,2);

CGContextSetStrokeColorWithColor(context, [UIColorredColor].CGColor);

CGRect rect = CGRectMake(inset, inset, image.size.width - inset *2.0f, image.size.height - inset *2.0f);

CGContextAddEllipseInRect(context, rect);

CGContextClip(context);

//在圆区域内画出image原图

[image drawInRect:rect];

CGContextAddEllipseInRect(context, rect);

CGContextStrokePath(context);

//生成新的image

UIImage *newimg = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

return newimg;

}

UIImageView绘制圆形图片相关推荐

  1. quartz2D 如何绘制圆形图片, 及圆环图片

    转载自:http://www.cnblogs.com/yuwei0911/p/5277886.html -(void)touchesBegan:(NSSet<UITouch *> *)to ...

  2. android绘制圆形图片、圆圈以及图片缩放

    这两天做开发,需要将图片资源做成圆形,并且要对图片进行缩放,研究了半天,终于整出来了,效果如下: 代码如下: package com.android.mywidget; import android. ...

  3. android 绘制圆形图片

    1.自定义CircleImageView,加载即可使用 import android.content.Context; import android.content.res.TypedArray; i ...

  4. cropper图片编辑插件绘制圆形图片

    在上传图片前需要对图片进行编辑,我选用的是cropperjs插件 绘制圆图的主要思路首先是将图片选取框中的可见区域设置为圆形,再在上传图片时在原图的基础上通过JS选取出一个圆图,再将选取的圆图上传到后 ...

  5. Android绘制圆形图片的方法

    1.使用Xfermode 相交模式 见:http://blog.csdn.net/zcn596785154/article/details/79180145 2.通过裁剪画布区域实现 Canvas类提 ...

  6. Canvas 绘制圆形图片、绘制圆角矩形图片

    前言 在 Canvas 中我们常常遇到的一个需求 绘制一个圆形或者一个圆角矩形图像,常用于展示用户头像,我们知道 CSS 有 border-radius 属性,但是 Canvas 是没有的~

  7. 如何用html5绘制圆形图片,javascript – 如何使用html5画布绘制连续的圆形图案

    我有这个图像: 我想用图像作为模式绘制.当我在画布上得到一个像这样的结果: 但我需要输出 所以我的问题是: JS var source, source_ctx, sleeve, sleeve_ctx, ...

  8. QPainter QPixmap 绘制圆形图片

    一.效果图 二.代码 #include "roungimg.h" #include "ui_roungimg.h" #include <QPainter& ...

  9. Android 自定义圆形图片 CircleImageView

    1.效果预览 1.1.布局中写自定义圆形图片的路径即可 1.2.然后看一看图片效果 1.3.原图是这样的 @mipmap/ic_launcher 2.使用过程 2.1.CircleImageView源 ...

最新文章

  1. Nature:科学家成功解读大脑构建的分子机制
  2. 剑指Offer(Java实现)按之字形顺序打印二叉树
  3. Ubuntu报错:sudo 无法解析的主机
  4. java usb 无驱打印_Windows Usb 无驱动打印
  5. linux-如何限制普通用户的磁盘使用空间-磁盘配额quota,Linux系统下如何进行磁盘配额Quota的设置...
  6. selenium定位输入框_[Selenium 粗浅笔记] 用Selenium填写表单
  7. 算术(HDU-6715)
  8. linux getline函数用法,Linux文本处理三剑客之awk学习笔记05:getline用法详解
  9. 真机开包!国产至强5600服务器35张图赏
  10. Java中的ConcurrentHashMap
  11. C语言中的static 具体分析
  12. python flink_如何在 Apache Flink 中使用 Python API?
  13. mysql opxe_PXE安装系统
  14. 2014年软件评测师真题精选
  15. FlexPaper pdf文档转换swf
  16. 蓝牙SBC开发笔记(一)
  17. 物理-空间跳跃技术:空间跳跃技术
  18. 零基础转行做IT程序员要学哪些知识?
  19. c语言中dot作用,Unix中的dot命令详解
  20. 金秋杭州游 只为桂花香

热门文章

  1. 程序实现金融租赁融资试算器 Financial Calculator
  2. 2:STM32CubeMX配置STM32F103C8T6驱动-TIM1配置
  3. C++多线程编程实战01:std::thread
  4. Python3字符串前缀u、b、r
  5. R语言lowess函数数据平滑实战(Locally Weighted Regression, Loess)
  6. 机器学习与算法(4)--本地散点平滑估计(LOESS)
  7. 一个可以免费下载表情包的小程序
  8. 企业邮箱管理员如何管理邮箱
  9. CSS---足球场的实现,纪念2022世界杯(:root的使用)
  10. 贝壳找房上海研发全员被优化,公司回应来了!