1

セルベースのNSOutlineViewをビューベースのNSOutlineViewに移行していますが、ビューベースのアウトラインビューではテキストのレンダリングが異なることに気づきました。この画像を参照してください:

http://i.stack.imgur.com/VQs3d.png

なぜ違いがあるのですか?役立つかもしれないいくつかの背景情報?

  • これはMacOSX10.7.4にあります
  • NSOutlineViewのハイライトスタイルはソースリストです
  • NSOutlineViewの背景色は透明で、背景は下にあるビューによって描画されています
  • ビューベースのアウトラインビューでは、セルテキストはNSTableCellViewのNSTextFieldによって描画されています
  • 私の知る限り、ビュー階層にはレイヤーバックはありません。

これは同様の問題を説明していると思います。ビューベースのNSOutlineViewでの奇妙なフォントのアンチエイリアシングですが、セルビューまたはテキストフィールドのいずれかがレイヤーバックされているため、ソリューションは機能しませんでした。

4

1 に答える 1

1

更新:私はそれを理解しました。Interface Builderで、テーブルセルビューのテキストフィールドを選択し、[背景を描画]をオンにして、背景色をクリア(RGBA 0,0,0,0)に設定すると、テキストは同じように滑らかに表示されますセルベースのアウトラインビューで。

したがって、特にNSOutlineViewの問題ではないと思います。Cocoaテキストレンダリングの内部はわかりませんが、フォントのスムージングは​​、テキストが描画されている背景の種類によって異なるためだと思います。

于 2012-08-15T05:55:08.380 に答える