如何消除三角形之间的边界?
我正在我的三角形绘图应用程序中实现导出到 pdf 。上图显示了 pdf 输出的样子。到处都有白色边界,宽度小于 1 像素。
三角形可以有任何颜色。
我绘制每个三角形,如下所示:
CGContextBeginPath(context);
CGContextMoveToPoint(context, x0, y0);
CGContextAddLineToPoint(context, x1, y1);
CGContextAddLineToPoint(context, x2, y2);
CGContextClosePath(context);
CGContextFillPath(context);
重要的是黑白三角形具有相同的大小。
方法
方法 1 - 中风
在所有三角形周围画一个 1 像素粗的笔划。
方法 2 - 挤出
将所有三角形拉伸 2 个像素,使三角形重叠。
方法 3 - 结合
将接触的三角形组合成一个多边形。
方法 4 - PDF 重叠设置
也许 PDF 具有消除边界的设置。不知道。
方法 5 - 后处理
创建一个过滤器来检测边界像素并消除它们。这对我不起作用,它需要保存为 PDF。iOS、AFAIK 上的 PDF 不支持着色器代码。
方法 X - 更智能的方法
有没有更好的方法将三角形拼接在一起?