(Leadtools.Annotations.Core)

フレームを表示

AnnContainerMapperクラス






メンバ 
表示、アノテーションとimage座標の間で値を変換するためのメソッドを提供します。
構文
public class AnnContainerMapper 
'Declaration
 
Public Class AnnContainerMapper 
public sealed class AnnContainerMapper 
@interface LTAnnContainerMapper : NSObject <NSCopying>
public class AnnContainerMapper
function Leadtools.Annotations.Core.AnnContainerMapper()
解説

AnnContainerMapperが、表示、アノテーションとimage座標の間で値を変換するために使われます。

LEADTOOLSアノテーションに、すべての値は、アノテーション単位(1/720のインチ)で保存されます。たとえば、新しいコンテナを作成する、そして、そのsize;を設定しなければならないとき、このようにcodeを書き込むかもしれません:

[C#]


             double inch = 720.0;
             // Create a new annotation container
             Leadtools.Annotations.Core container = new AnnContainer();
             // Set its size to 8.5 by 11 inches. Size must be in annotation units (1/720 of an inch)
             container.Size = LeadSizeD.Create(8.5 * inch, 11 * inch);
             

[JavaScript]


             var inch = 720.0;
             // Create a new annotation container
             var container = new Leadtools.Annotations.Core.AnnContainer();
             // Set its size to 8.5 by 11 inches. Size must be in annotation units (1/720 of an inch)
             container.set_size(Leadtools.LeadSizeD.create(8.5 * inch, 11 * inch));
             

同様に、アノテーションオブジェクトを作成して、その場所とサイズを設定するとき、これらの値は同様にアノテーション座標でなければなりません:

[C#]


             // Create a line object from 1, 1 to 2, 2 inches:
             AnnPolylineObject lineObj = new AnnPolylineObject();
             lineObj.Points.Add(LeadPointD.Create(1 * inch, 1 * inch));
             lineObj.Points.Add(LeadPointD.Create(2 * inch, 2 * inch));
             

[JavaScript]


             // Create a line object from 1, 1 to 2, 2 inches:
             var lineObj = new Leadtools.Annotations.Core.AnnPolylineObject();
             lineObj.get_points().add(Leadtools.LeadPointD.create(1 * inch, 1 * inch));
             lineObj.get_points().add(Leadtools.LeadPointD.create(2 * inch, 2 * inch));
             

自動モードでは、ユーザーは通常、マウスまたは画面へのタッチによって物理画面座標でアノテーションを描画します。これらの座標は、アノテーション単位(1/720のインチ)に、その後変形されなければなりません。これを実行するために、マッパーは画面DPI(インチにつき点)の値を知っている必要があります。ユーザーは、TargetDpiXTargetDpiYでこれらの値を設定しなければなりません。

同様に、オブジェクトがターゲットコンテキストに与えられるとき、コンテナマッパーはコンテキスト(またはimage(書き込み操作の間の))DPIのために値を知っている必要があります。SourceDpiXSourceDpiYでこれらの値を設定しなければなりません。

アノテーションとディスプレイ座標の間でフォントサイズと固定長のとサイズ値の間で変換するとき、マッパーはDeviceDpiXDeviceDpiYの値を使います。

DPI値を設定するために、MapResolutionsを使います。たとえば、現在の画面解像度が96で、コンテナーに関連付けられている画像の解像度が300 DPIの場合は、以下のコードを使用できます。


             container.MapResolutions(96, 96, 300, 300);
             

ターゲットDPI値が不明であるか、実行時で計算されなければならない場合に、例えば医療用途の場合、提供された既知の値に基づくソースとターゲット解像度の間で比率を調節するために、校正メソッドを使うことができます。調整結果はCalibrationScaleに格納され、このコンテナー全体で使用されます。

コンテナをデスティネーションコンテキストに描画するには、そうした操作をスクロールやズームとして実行するよう変換マトリックスは要求されます。UpdateTransformメソッドを用いて変換においてこのマトリックスの値を設定することができます。

マッパーは、以下を実行するために、上のすべての値をここで使うことができます:

サンプル

サンプルのために、参照しますAnnContainer.Mapper

必要条件

ターゲットプラットホーム

参照

参照

AnnContainerMapperメンバ
Leadtools.Annotations.Core名前空間

   Leadtools.Annotations.Coreは、DocumentまたはMedicalツールキットのライセンスと、解除キーが必要です。詳細は、以下を参照してください。LEADTOOLSツールキット機能