【问题标题】:Swift: Size of UIImage when slicing enabledSwift:启用切片时 UIImage 的大小
【发布时间】:2021-04-25 00:11:49
【问题描述】:

当我在 Xcode 的 assets 文件夹中切片图像时,UIImage 的 size 属性返回错误值。有谁知道启用切片时如何获得真实的图像大小?大小是以像素为单位还是以点为单位无关紧要。

或者也许有一种方法可以获取图像圆形部分的大小,以便我可以在代码中添加 cap insets?

这就是我在 Xcode 中切片图像的方式:

或者,也许有一种方法可以找到图像中突出显示(较暗)部分的大小?

我会很感激任何想法!

【问题讨论】:

    标签: swift uiimage size slice


    【解决方案1】:

    在资产中“切片”图像时,您无需设置 cap insets - 它会自动完成。

    如果您确实需要获取“切片”值,可以通过.capInsets 属性读取它们:

        guard let img = UIImage(named: "sliced") else { return }
        print("image size:", img.size)
        print("caps insets:", img.capInsets)
        
        
    

    我的快速测试 - 使用默认切片输出的 200 x 60 “胶囊”图像,角半径为 20 像素:

    image size: (39.0, 60.0)
    caps insets: UIEdgeInsets(top: 0.0, left: 19.0, bottom: 0.0, right: 19.0)
    

    所以,width 是左插图加上右插图加上 1(一)...因为中心部分会拉伸以适应,所以该部分的“默认*宽度”是1.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-17
      • 2022-01-16
      • 2019-10-12
      • 2018-05-14
      • 1970-01-01
      • 2015-11-20
      相关资源
      最近更新 更多