【问题标题】:How do I use drawInRect in Swift?如何在 Swift 中使用 drawInRect?
【发布时间】:2015-09-09 03:21:06
【问题描述】:

我正在尝试将两个图像混合在一起用于一个照片应用程序,它需要使用 drawInRect。这在 Obj-C 中似乎是一个简单的概念,但由于某种原因,我在 Swift 中遇到了一些问题。

这是我为使其正常工作所做的许多尝试之一:

secondImage.drawInRect(((origin.x * xScale), (origin.y * yScale), size.width * xScale, size.height * yScale, blendMode: kCGBlendModeNormal, alpha: 1.0)

我尝试了其他方式,但我一直被告知我不能使用 CGFloats 或 CGPoints(这对我来说似乎很奇怪),我不确定如何表达这一点。 Apple 文档对我来说似乎不清楚:https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIImage_Class/#//apple_ref/occ/instm/UIImage/drawInRect:

但也许只有我一个人。谁能告诉我需要给 drawInRect 哪些参数?

【问题讨论】:

    标签: ios swift uiimage


    【解决方案1】:

    drawInRect: 接受CGRect 作为参数(顾名思义)

    使用

    secondImage.drawInRect(CGRect(x: <#CGFloat#>, y: <#CGFloat#>, width: <#CGFloat#>, height: <#CGFloat#>), blendMode: kCGBlendModeNormal, alpha: 1.0)
    

    在参数中

    【讨论】:

    • 奇怪。我以为我已经尝试过了,但我想我这样做的时候一定是用错了词。谢谢!
    【解决方案2】:

    在 swift 4 中 drawInRect 被重命名为:

    your_image.draw(in: CGRect, blendMode: CGBlendMode, alpha: CGFloat)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-30
      • 2014-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-26
      相关资源
      最近更新 更多