「データ定義」ラベル付け設定の有効な値は何ですか?


9

QGIS 1.8を使用しています。新しいラベルエンジンと「データ定義設定」オプションを使用して、既存のシェープファイルのラベル機能をカスタマイズしたいと思います。各設定の属性テーブルのフィールドタイプを教えてください:7つのフォントオプションすべて、2つのバッファオプションすべて、6つの位置オプションすべて。それらはすべて数値フィールドにするか、テキストにするか、またはその両方にする必要がありますか?これらのフィールドを属性テーブルに正しく作成して、ラベルフィールド設定にマップできるようにします。適切なフィールドタイプに関する情報がどこにも見つかりません。あなたの考えをありがとう。

回答:


16

データ定義のラベリング機能の完全なドキュメントセットはありませんが、それらの値の内訳と、バージョン1.8のQGISのPALラベリングエンジン使用方法を次に示します。

  • サイズ [ 実数 ]フォントサイズを定義しますが、数値の解釈方法はレイヤーの設定(ポイントまたはマップ単位)に依存しますが、1.8ではデータを定義できません。
  • 太字、斜体、下線、取り消し線 [ 整数 ]フォントのスタイルを設定するための1または0(オン/オフ)のブール値。これらのスタイリングには、実際には太字または斜体のフォントを含む書体を使用するのが最善です。
  • Color [ 文字列 ] QColor :: setNamedColor(name)public関数が受け入れる名前付きの色の値。定期的な進フォーマットが#RRGGBBされてお勧めします
  • Family [ 文字列 ] フォントマッチングのQFontファミリ名。ファウンドリ名も指定できることに注意してください。名前によるフォントマッチングの詳細については、QFontの説明(Qtのバージョンのドキュメントにあります)を参照してください。
  • BufferSize [ real ]バッファーサイズをmmで定義します。1.8では、これをマップ単位で設定するオプションはありません。バッファは、ラベルのテキストの塗りつぶされたストロークのコピーで構成されますが、その背後にあります。ストロークはオンラインで適用されます。つまり、テキストを超えた視覚的なバッファリングは、定義されたサイズの半分になります。

    テキストサイズに比べて、バッファに大きなサイズの顕著なアーティファクトが発生します(使用した手法でのQtの問題)。ラベルのフォントサイズがマップ単位で定義されていて、バッファーをmmで設定した場合、画面をズームしたときに2つのスケーリングが異なるレートで表示されるという問題が発生しますが、既知のスケール。これについては、正しいバッファーをmm単位で計算する必要があります。
  • BufferColor [ string ]上記のテキストの色と同じです。1.8では、これはバッファーの塗りつぶしとストロークの両方に適用されることに注意してください。
  • ラベルの距離 [ 実際のラベルのための]定義された距離の特徴から、などの点から、ライン上または下、(アドバンス]タブの下に)与えられた層型のための動的PALレイアウト・ソリューションによって決定されるように、例えば、

    注:これはのみのようですデータで定義されたX座標とY座標でラベルを「固定」していない場合、つまりラベルの位置がまだ動的に計算されている場合に機能します。距離は、[詳細設定]タブのmmまたはマップ単位のレイヤーレベルの設定を基準にしています。ここでも、テーブルの列をレイヤーの座標タイプ(緯度/経度など)に合わせて構成する必要があります。
  • X座標、Y座標 [ 実数 ] レイヤーCRSで定義された座標。たとえば、一部の場合は緯度/経度、その他の場合はメートル。これらの座標が定義する場所は、ラベルの回転ポイントです。これは、エンジンの配置手法や、水平方向と垂直方向の配置を定義した方法に応じて変化する可能性があります。

    QGISはオンザフライの座標変換を実行できますが、ラベリングレイヤーをすべて同じCRSに配置することをお勧めします。そのため、ファンキーな変換によるラベルのシフトの問題はありません。データソースのXおよびY列フィールド値はCRSに関連しているため、緯度/経度を使用する場合は、メートルを使用する場合よりもはるかに高い精度が必要ですが、どちらも目的のマッピング精度と比較して、適切なサイズの幅が必要です。 。

次の列は、XとYがすでに定義されていない限り、データ定義できません。これは、古いラベリングエンジンの一部の機能(XとYから独立した回転の定義など)からの回帰ですが、現在の1.8では、高度なラベリングが機能しています。

  • Horizo​​ntal Alignment [ string ](Left、Center、Right)ラベルの回転ポイントに対するラベルのテキストの水平方向の配置。

  • 垂直方向の配置 [ 文字列 ](下、ベース、ハーフ、キャップまたはトップ)ラベルの回転ポイントを基準にした、ラベルのテキストの垂直方向の配置。キャップとトップは同じように扱われます。ベースはフォントのベースラインです。

    注: XとYを定義した後に水平または垂直の配置を変更すると、テキストがラベルの固定回転ポイントを基準にしてシフトします。配置方法によっては、回転ポイントがデフォルト(左、下)と異なる場合があります(たとえば、オーバーポイントが設定されたポイントレイヤーはデフォルトで中央、半分、図を参照)。ラベルの変更ツールを試して、回転ポイントの位置を確認し、配置設定の変更がラベルにどのように影響するかを確認することをお勧めします。

ここに画像の説明を入力してください
中央と半分の線形でラベル付けし、特徴点からオフセットした新しい場所に移動

  • Rotation [ real ](0.00-360.00)回転ポイントを中心としたラベルの反時計回りの回転の度数。回転ラベルツールは、Ctl(MacではCmd)修飾キーを使用すると、回転の増分を15度に丸めます。

あなたは試して喜んでいる場合はナイトリービルドmasterブランチからQGIS、またはそれを自分でコンパイルし、すでに次のようなものが、この分野での現在の仕事を見つけるでしょう。

ここに画像の説明を入力してください
「GISスタイル」アイコンを備えた高度なラベル付けツールバー

  • PALエンジンのラベル位置データを属性テーブルのX、Y、およびオプションで回転フィールドに自動的に保存することにより、ラベルをインタラクティブに「ピン留め/ピン留め解除」するラベルのピン留め/ピン留め解除ツール。固定されたラベルを強調表示するコンパニオンツール。

  • ラベルの表示/非表示ツールは、驚くほど「ラベルの表示」と呼ばれる新しいデータ定義フィールドを使用して、インタラクティブにラベルを表示または非表示にします。

  • 縮尺依存の表示、透明度、フォントスタイルなど、ラベルの特性に対する継続的な機能強化。


2

新しいEasyCustomLabelingプラグイン(http://hub.qgis.org/projects/easycustomlabeling)を試して、レイヤーを複製し、それらの「データ定義」ラベルフィールドを追加することができます。そのプラグインで使用されるフィールド定義タイプは次のとおりです。

QgsField( "LblX"、QVariant.Double、 "numeric"、
10、2 )QgsField( "LblY"、QVariant.Double、 "numeric"、
10、2 )QgsField( "LblAlignH"、QVariant.String、 "varchar"、 12)
QgsField( "LblAlignV"、QVariant.String、 "varchar"、12)
QgsField( "LblSize"、QVariant.Int、 "integer"、1)
QgsField( "LblRot"、QVariant.Double、 "numeric"、10、 2)
QgsField( "LblBold"、QVariant.Int、 "integer"、1)
QgsField( "LblItalic"、QVariant.Int、 "integer"、1)
QgsField( "LblColor"、QVariant.String、 "varchar"、7)
QgsField( "LblFont"、QVariant.String、 "varchar"、64)
QgsField( "LblUnder"、QVariant.Int、 "integer"、1)

それが役に立てば幸い

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.