【问题标题】:Create CGContext from array of CGPoints从 CGPoints 数组创建 CGContext
【发布时间】:2017-03-15 13:44:53
【问题描述】:

我从UIImage 中提取了CGPoints 中的NSArray。这些点是从图像中不规则的封闭区域分割出来的,即在图像分割中。如图中红色矩形内所示:

如何仅从这些点创建CGContext,以便在我在图像上绘图时仅影响这些点?

【问题讨论】:

  • 你想创建一个掩码并使用CGContextClipToMask 我想。蒙版是一个灰色图像,其中黑色值不变,白色在绘制时设置为透明——所以只有黑色像素的区域才会被绘制——(我认为,阅读文档developer.apple.com/reference/coregraphics/…
  • 也许您想从这些点创建一个 CGPath 并使用该路径进行剪辑?
  • @LouFranco 是的,我已经尝试过了,它很有用。我已经从原始图像创建了图像蒙版,并用白色标记了剪辑像素,而其他的则是黑色,然后将上下文剪辑到这个图像蒙版,它工作得很好。请将此添加为答案,我会接受。
  • @Sulthan 我已经尝试过了,它的工作原理是半正确的,因为这些点没有排序并且结果路径没有正确创建。
  • @AmaniElsaed 如果你的点没有排列成一个形状,那么你基本上无能为力。

标签: ios swift uiimage cgcontext


【解决方案1】:

您想创建一个掩码并使用CGContextClipToMask。蒙版是一个灰色图像,其中黑色值不变,绘制时白色设置为透明——因此只有黑色像素的区域才会被绘制。

文档:https://developer.apple.com/reference/coregraphics/1456497-cgcontextcliptomask

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 2020-09-04
    • 2015-09-15
    • 1970-01-01
    • 2013-02-05
    相关资源
    最近更新 更多