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