2016-12-26 18 views
0

描画アプリケーションを作成しようとしています。だから私はNSScrollViewのサブクラスを私は、ルーラーを表示するために使用している。NSScrollviewのルーラーの測定単位を変更します

[self setHasHorizontalRuler: true]; 
[self setHasVerticalRuler:YES]; 
[self setRulersVisible:true]; 
[self setAutoresizesSubviews:YES]; 

問題は、ルーラーの数字が、私が描画するのに使うものとは異なる単位を持っていることです。ここで私は知っている私が描きたかったポイントされている(0,0)(22,12)と(5,7)

enter image description here

は、レジスタ測定部とNSRulerViewといくつかのデフォルトの単位の設定をtheresの、しかし、私は何がデフォルトのものか、NSScrollViewクラスでどのように使うことができるかの例を見つけることができません。すべての座標に定数を掛けるだけでいいですか?その場合、それは何ですか?

答えて

1

デフォルトの単位はregisterUnitWithName:abbreviation:unitToPointsConversionFactor:stepUpCycle:stepDownCycle:クラスメソッドの説明に記載されています。現在のルーラー単位はプロパティmeasurementUnitsから見つけることができます。

この説明は、あらかじめ定義されたユニット名ごとにポイント/ユニットを示します。図面ビューの測定単位はポイントであるため、ルーラー単位で描画するには、適切なルーラー(水平/垂直)のmeasurementUnitsのポイント/単位で、自分の位置を取得し、各座標に掛けます。例えば。あなたの場所は(5, 7)とし、ルーラー単位はセンチメートルに設定し、ポイント/ユニットは28.35で、あなたの所在地は(141.75, 198.44)です。

HTH

関連する問題