Стилізація межі, щоб відповідати заповненню QGIS?


11

Раніше я лише вручну відповідав кольору рамки під колір заливки, але це може зайняти багато часу.

Мені цікаво, чи є програма, щоб програма автоматично співпадала з кольором межі з кольором заливки?

Колір заливки призначається через вкладку стилів у властивостях шару.

Використання QGIS 2.8.6


2
Мені здається, що видалення кордону матиме візуально такий же ефект, ніж відповідність кольору рамки заливці (якщо, звичайно, межа є тонкою). Тому ви можете видалити рамки (опція "Без пера" у "стилі межі").
ArMoraer

3
Дякую за пропозицію, ArMoraer. Я раніше це намагався, але виявив, що це зазвичай виявляє невеликі проміжки між формами, що не є естетично приємним.
Кінгфішер

Відповіді:


21

Я не впевнений, як застосувати його для існуючих багатокутників, але ви можете змусити його працювати для будь-яких майбутніх, які ви створюєте.

У Властивості проекту> Стилі за замовчуванням> Менеджер стилів ви можете створити власний стиль символу за замовчуванням для "Заповнити":

QGIS Style Manager

Відредагуйте вираз кольору кордону та встановіть його на @symbol_color: Редагування виразу Border

Встановлення граничного вираження

Нарешті, встановіть новий стиль заповнення за замовчуванням: Встановлення нової заливки за замовчуванням

Це дозволить кордону завжди відповідати встановленому кольору символу. Це не обов'язково відображатиметься у властивості полігону. Таким чином, він все ще може виглядати так, що у вас властивості мають різні кольорові межі, але він завжди повинен відповідати встановленому кольором символу об'єкта на карті.

Хотілося б, щоб я мав кращу ідею щодо того, як зробити це заднім числом, але, можливо, я чи хтось інший прийду разом з хорошою ідеєю про це пізніше.


приємний - просто спробував це з наявним шаром класифікованого полігону, і він спрацював - не потрібно було також встановлювати стиль за замовчуванням (qgis 2.14.1)
Стівен Кей

Чудово чути, Стівен! Якщо встановити його як стиль за замовчуванням, було б більше допомогти не встановлювати його знову на будь-яких нових багатокутниках у проекті, але, як ви вже сказали, не обов’язково робити це.
JohnR

2
Я встановив 2,8 і попрацював з ним деякий час. Схоже, вам потрібно буде оновити до 2.14, якщо функція @color_symbol надзвичайно важлива, просто немає вбудованого еквівалента в 2.8.
ДжонР

3
Стилістично мені подобається рамка полігону, яка є трохи більш темним відтінком кольору заливки. Я домігся цього, визначивши вираз кольору межі як: темніший (@symbol_color, 200).
csk

1
@RutgerH Мені вдалося змусити це працювати на 2.18.0, але з моєї початкової відповіді відбулися незначні зміни стилів. Якщо ви дотримуєтесь вказівок і шукаєте "Контур" замість "Межі", вам слід прийти до такого ж висновку.
JohnR

2

Ще один спосіб привласнити колір рамки до кольору заливки - додати новий шар до вашого символу з типом шару символу = Контур: Проста лінія.

Коли колір наноситься на рівні символів, весь шар набуває однакового кольору (якщо один шар не заблокований), тому заливка та додана межа однакові ...

введіть тут опис зображення


0

Для того, як зробити це заднім числом, ви можете просто зберегти стиль як файл .qml, використовувати регулярний вираз пошуку і заміни, щоб встановити межі того ж кольору, що й полігони (у Блокноті ++ або подібному):

Знайти:

<prop k="color" v="([^\r\n"]+)"/>(.+?)<prop k="outline_color" v="([^\r\n"]+)"/>

Замінити:

<prop k="color" v="\1"/>\2<prop k="outline_color" v="\1"/>

збережіть, а потім перезавантажте стиль у qgis :)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.