QGISコンポーザーの裁ち落としスペースでのラベルのレンダリングを防ぐ方法は?


10

私は地図がページの端に走る本の地図を作っています。プリンタは画像の周囲に3mmの裁ち落としスペースを推奨しているため、ページが127x177 mmの場合、画像は133x183 mmになるはずです。この裁ち落としスペースは、本のページが切り取られたときのエラーを許容するためのものであり、マップの場合には重要な情報はありません。だから私はこれらの余分な3mmをすべての辺に含むコンポーザーページサイズを使用しています。

町のラベルを地図の端で切り取ってほしくないので、[部分ラベルを表示]オプションを無効にしました。ただし、ラベルはこの3 mmの「ノーマンズランド」内にまだ表示されており、プリンターによってカットされる可能性があります。

ラベルがレンダリングされるべきではないブリードのあるマップ

私が検討した解決策は、2つの重なり合った同心円状の完全に位置合わせされたマップを作成することです。下のマップは裁ち落としの端まで走り、町は表示されません。上部のマップは本のページの正確なサイズになります(つまり3mm)基礎となるマップよりも各辺が少ないため)、町のレイヤーが表示されるため、町(またはラベル)が表示されていない場所に3 mmの境界線が作成されます。

ただし、これら2つのマップをcomposerで完全に整列させることはできません。これら2つのマップの範囲を計算して同じ中心と同じ縮尺になるようにしましたが、QGISコンポーザーは小数点以下3桁の精度が固定されているため、完全に位置合わせすることができません。

この問題に取り組む別の方法は、アトラス内の「マージンアラウンドフィーチャー」内でラベルをレンダリングできない新しい機能です。

裁ち落としの境界内にラベルが表示されないようにする方法はありますか?

回答:


1

以下の解決策は、問題に対する完全な解決策ではない可能性がありますが、あなたが抱えている問題を解決するための回避策になります。

ブリード内に表示したくないポイント(都市)の数が少ない場合は、次のように、クエリビルダーを使用してそれらを除外できます。

  1. ターゲットレイヤー(都市ポイントレイヤー)を右クリック->レイヤープロパティに移動
  2. 一般タブに移動します
  3. 右下に「クエリビルダー」ボタンがあります。クリックしてクエリを作成します。
  4. 式を書く "FIELD_NAME" != 'NAME OF THE CITY'
  5. FIELD_NAMEを都市名を含むフィールドに置き換え、「NAME OF THE CITY」をブリード内に表示されないように除外する都市の名前に置き換えます
  6. 複数の都市を除外する場合は、次のように記述する必要があります"FIELD_NAME" != 'NAME OF THE CITY_1' AND "FIELD_NAME" != 'NAME OF THE CITY_2'
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.