ios用のUIViewで長方形を描画する際、同じ問題が発生します。四角形の余白は、背景と色を混ぜます。私は同じ結果を持ついくつかの矩形描画メソッドを試してみました - ベジェパスを使って、行ごとに描画し、余白を描き、矩形の内側を塗りつぶしました。四角形を描いている間にカラーブレンドを避けるにはどうすればいいですか?
ビューのフレーム自体は常に正しく描画されます。私は四角形が必要なときはいつでもビューを使うことを考えましたが、それは私がそれらの多くを描く必要があるので、特殊なことを行う正しい方法のようには見えません。
これは私の問題の例です。比較のために、私は、同じ寸法の矩形のグリーンビューを描画しています:
CGRect horizontalBar = CGRectMake(2, 2, 10, 6);
UIView* horizontalBarSubView = [[UIView alloc] initWithFrame:horizontalBar];
horizontalBarSubView.backgroundColor = [UIColor greenColor];
[self addSubview:horizontalBarSubView];
[horizontalBarSubView release];
矩形自体の:
:
CGRect horizontalBar = CGRectMake(2, 20, 10, 6);
UIBezierPath* horizontalBarPath = [UIBezierPath bezierPathWithRect:horizontalBar];
[[UIColor greenColor] set];
[horizontalBarPath fill];
これは、以下の結果(10倍ズーム)を振るいます
どのような色が混ざっていますか?
どうすればこの問題を回避できますか?
あなたは正しく、両方の軸で既に半ピクセルオフに設定されているビューの中に描画していました。 – rahzark