zoukankan      html  css  js  c++  java
  • [Swift通天遁地]一、超级工具-(20)图片面部聚焦:使图像视图自动聚焦图片人物的面部位置

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
    ➤微信公众号:山青咏芝(shanqingyongzhi)
    ➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
    ➤GitHub地址:https://github.com/strengthen/LeetCode
    ➤原文地址:https://www.cnblogs.com/strengthen/p/10176507.html 
    ➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
    ➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

    目录:[Swift]通天遁地Swift

    本文将演示如何使图片的头像,自动位于图像视图的焦点位置。

    首先确保在项目中已经安装了所需的第三方库。

    点击【Podfile】,查看安装配置文件。

    根据配置文件中的相关配置,安装第三方库。

    1 platform :ios, '12.0'
    2 use_frameworks!
    3 
    4 target 'DemoApp' do
    5     source 'https://github.com/CocoaPods/Specs.git'
    6     pod 'FaceAware'
    7 end

    然后点击打开【DemoApp.xcworkspace】项目文件。

    往项目中导入一张包含人像的图片:【Pic1】

    在项目导航区,打开视图控制器的代码文件【ViewController.swift】

    现在开始编写代码,使图像视图加载已经导入的人物图片。

     1 import UIKit
     2 //在当前类文件中,引入已经安装的第三方类库
     3 import FaceAware
     4 
     5 class ViewController: UIViewController {
     6 
     7     override func viewDidLoad() {
     8         super.viewDidLoad()
     9         // Do any additional setup after loading the view, typically from a nib.
    10         
    11         //通过图片的名称,从项目中加载该图片
    12         let image = UIImage(named: "Pic1")
    13         //初始化一个图像视图,并设置图像视图的显示区域
    14         let imageView = UIImageView(frame: CGRect(x: 0, y: 0,  200, height: 200))
    15         //将图像视图放置在屏幕的中心位置
    16         imageView.center = self.view.center
    17         //设置图像视图需要显示的图片内容
    18         imageView.image = image
    19         //设置图像视图的层的圆角半径为100。
    20         //由于图像视图的宽度和高度都是200,所以这里创建了一个圆形的图像视图。
    21         imageView.layer.cornerRadius = 100
    22         //设置图像视图的层的遮罩属性,裁剪在圆形之外的图像。
    23         imageView.layer.masksToBounds = true
    24         //图像视图的面部检测,聚焦图片人物面部位置,显示在图像视图焦点位置。
    25         imageView.focusOnFaces = true
    26         
    27         //将图像视图添加到当前视图控制器的根视图
    28         self.view.addSubview(imageView)
    29     }
    30 
    31     override func didReceiveMemoryWarning() {
    32         super.didReceiveMemoryWarning()
    33         // Dispose of any resources that can be recreated.
    34     }
    35 }
  • 相关阅读:
    《剑指offer》第六十八题(树中两个结点的最低公共祖先)
    《剑指offer》第六十七题(把字符串转换成整数)
    《剑指offer》第六十六题(构建乘积数组)
    《剑指offer》第六十五题(不用加减乘除做加法)
    ECShop 2.7.2版本,数据库表
    织梦在导航栏下拉菜单中调用当前栏目子类的方法
    让dedecms autoindex,itemindex 从0到1开始的办法!
    dedeCMS列表页中如何给前几条文章加单独样式?
    dedecms标签调用大全
    完美解决ecshop与jquery冲突兼容
  • 原文地址:https://www.cnblogs.com/strengthen/p/10176507.html
Copyright © 2011-2022 走看看