1

NSTableView がありますが、ウィンドウに直接表示していません。代わりに、その前に NSImageView を表示し、テーブル ビューのすべてまたは一部 (実際には、スクロール ビューを含む部分ですが、テーブル ビューと言い続けます) を NSImageView が表示する画像に描画します。最初はすべてうまくいきました。次に、ズーム効果を得るために、テーブル ビューの一部のみを画像に描画する機能を追加しました。たとえば、画像ビューとその画像は常に 500x500 ですが、表ビューの 200x200 の正方形が画像に描画される場合があります (描画を行うメソッドによって拡大されます)。私の問題は、テーブル ビューのピクセルが >1:1 で画像ビューのピクセルにマップされると、テーブル ビューから白いセル間スペースが見えることです。

私はテーブルビューの一部を次のように描画します:

NSBitmapImageRep *imageRep = [scrollViewContainingTableView bitmapImageRepForCachingDisplayInRect:visibleImageRect];
[imageRep setSize:imgSize];
[scrollViewContainingTableView cacheDisplayInRect:rectIWantFromTableView toBitmapImageRep:imageRep];

テーブル セルの描画ロジックが間違っているのではないかと考えたので、ビュー全体に黒を描画しましたが、行間の白い線が残ります: http://i.imgur.com/ivEvnkL.png

このメソッド呼び出しで、既にセル間の間隔を 0 に設定しています。

[tableView setIntercellSpacing:NSMakeSize(0, 0)];

これらの行間スペースを完全に削除するにはどうすればよいですか?

4

0 に答える 0