由于 resizableImageWithCapInsets,PaintCode 2 与 3 不兼容

PaintCode 2 vs 3 incompatible due to resizableImageWithCapInsets

我最近从使用 PaintCode 2 切换到 PaintCode 3,我将它与 xCode/Swift 一起使用。

但是我注意到,我所有的图像生成函数的行为都没有不同。它们缝合到标准的 addopt 帽内衬。

作为下面的示例,您可以找到一个 canvas "ViewMissingImage",以及它在 PaintCode 中的配置方式(2 或 3 相同)。

通过 PaintCode 2 生成的代码

public class func imageOfViewMissingImage(frame frame: CGRect = CGRect(x: 6, y: 5, width: 109, height: 109)) -> UIImage {
    UIGraphicsBeginImageContextWithOptions(frame.size, false, 0)
        PaintCode.drawViewMissingImage(frame: CGRect(x: 0, y: 0, width: frame.size.width, height: frame.size.height))

    let imageOfViewMissingImage = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext()

    return imageOfViewMissingImage
}

通过 PaintCode 3 生成的代码

public dynamic class func imageOfViewMissingImage(imageSize imageSize: CGSize = CGSize(width: 109, height: 109)) -> UIImage {
    UIGraphicsBeginImageContextWithOptions(imageSize, false, 0)
        PaintCode.drawViewMissingImage(frame: CGRect(x: 0, y: 0, width: imageSize.width, height: imageSize.height))

    let imageOfViewMissingImage = UIGraphicsGetImageFromCurrentImageContext()!.resizableImageWithCapInsets(UIEdgeInsetsZero, resizingMode: .Tile)
    UIGraphicsEndImageContext()

    return imageOfViewMissingImage
}

我认为 PaintCode 2 从未使用过 capp 插图,也许这是一个错误? 我不想要这些大写字母,我怎样才能去掉它们?

解决方法很简单:

在 PaintCode UI!

中将 Cap Inset 放在 "Stretch" 而不是平铺上