PerfectVector
Oleh Irene Kim6 menit baca

Marker SVG QGIS: Siapkan Simbol dengan Warna yang Bisa Diedit

Siapkan marker SVG QGIS khusus dengan parameter fill dan outline, bukaan nyata, serta aksen tetap. Simpan master SVG biasa dan periksa salinan tujuan.

Di halaman ini

Untuk menyiapkan marker SVG QGIS khusus dengan warna yang bisa diedit, tambahkan placeholder param() QGIS pada atribut pewarnaan yang ingin dikendalikan aplikasi. Pertahankan warna eksplisit pada wilayah yang harus tetap. Manual Symbol Selector QGIS 3.44 mendokumentasikan placeholder untuk isian, outline, opacity keduanya, dan lebar outline.

Mulai dengan simbol kecil yang bersih. Ikon yang terlihat meyakinkan pada ukuran ilustrasi dapat kehilangan lubang, aksen, atau outline ketika dipakai sebagai marker peta.

Cakupan panduan ini: kami merender master SVG biasa di browser dan mengaudit XML salinan berparameter. Kami tidak mengimpor salinan itu ke QGIS. Sintaks parameter di bawah mengikuti dokumentasi 3.44; pemeriksaan tujuan harus Anda atau penerima GIS selesaikan dalam aplikasi.

Simpan master biasa dan salinan QGIS

Gunakan dua file dengan geometri yang sama:

FileTujuan
marker-master.svgPewarnaan SVG biasa untuk penyuntingan dan pemeriksaan browser.
marker-qgis.svgSalinan tujuan dengan placeholder parameter QGIS pada atribut terpilih.

Pemisahan ini membuat karya asli mudah diperiksa. Pratinjau browser master biasa membuktikan bagaimana sumber tersebut dirender di browser. Pratinjau tidak membuktikan bahwa salinan QGIS diimpor dengan benar atau kontrolnya bekerja sesuai harapan.

Marker asli kami memiliki badan hijau, lubang lingkaran transparan, dan aksen belah ketupat emas. Marker berisi dua path dan tanpa gambar raster tertanam.

Karya sumber asli
Render browser SVG pin hijau biasa dengan lubang transparan dan aksen emas tetap, termasuk pratinjau pada 24, 32, dan 48 piksel
Master SVG biasa yang dirender di browser. Pola papan catur terlihat melalui lubangnya; ini bukan impor QGIS atau pengujian parameter warna.

Buat lubang nyata dalam sumber

Simpan sebagai marker-master.svg:

<svg xmlns="http://www.w3.org/2000/svg"
     width="64" height="64" viewBox="0 0 64 64">
  <path id="body" fill="#237466" fill-opacity="1"
        stroke="#173f37" stroke-opacity="1" stroke-width="2"
        fill-rule="evenodd"
        d="M32 5C19 5 10 14 10 27C10 42 32 59 32 59S54 42 54 27C54 14 45 5 32 5Z M32 17A10 10 0 1 0 32 37A10 10 0 1 0 32 17Z"/>
  <path id="accent" fill="#f2c96c" stroke="none"
        d="M32 41L36 46L32 51L28 46Z"/>
</svg>

Path badan mencakup kontur luar dan kontur lingkaran dalam. fill-rule="evenodd" menjadikan wilayah dalam bukaan pada konstruksi ini. Lubang memperlihatkan latar melalui marker, bukan melukis cakram putih di atasnya. Referensi fill-rule MDN menjelaskan bagaimana aturan menentukan wilayah yang diisi.

viewBox mendefinisikan persegi panjang koordinat sumber. Di sini berupa persegi 64 satuan, dengan ruang di sekitar outline. Pertahankan bingkai itu konsisten antara kedua salinan. Jika simbol tampak terlalu kecil dalam bingkainya, periksa geometri dan margin kosong sebelum memperbesar ukuran tampilannya.

Aksen emas merupakan path terpisah, sehingga pilihan pewarnaannya eksplisit. Untuk ikon yang lebih rumit, tentukan wilayah yang termasuk dalam warna badan bersama sebelum menambahkan parameter. Panduan warna SVG kami menjelaskan tempat penyimpanan isian dan stroke.

Beri parameter pada badan dan biarkan aksen tetap

Buat salinan bernama marker-qgis.svg. Pada path dengan id="body", ganti kelima atribut pewarnaannya dengan blok atribut ini:

fill="param(fill) #237466"
fill-opacity="param(fill-opacity) 1"
stroke="param(outline) #173f37"
stroke-opacity="param(outline-opacity) 1"
stroke-width="param(outline-width) 2"

Pertahankan data path dan fill-rule tetap sama. Biarkan fill="#f2c96c" dan stroke="none" pada path accent sebagaimana adanya.

Atribut SVGPlaceholder QGISKontrol yang dimaksud
fillparam(fill)Warna isian badan
fill-opacityparam(fill-opacity)Opacity isian badan
strokeparam(outline)Warna outline badan
stroke-opacityparam(outline-opacity)Opacity outline badan
stroke-widthparam(outline-width)Lebar outline badan

Nilai setelah placeholder adalah default opsional dalam sintaks QGIS. Nilai tersebut bukan janji bahwa penampil SVG biasa akan memahami nilai pewarnaan berparameter. Gunakan master biasa untuk penyuntingan dan pratinjau SVG umum.

Jangan otomatis mengganti setiap warna dengan param(fill). Dalam desain ini, hal itu akan menghilangkan keputusan mempertahankan aksen emas terpisah. Terapkan placeholder bersama hanya pada wilayah yang harus merespons kontrol yang sama.

Audit salinan tujuan sebelum menyerahkannya

Pemeriksaan XML kami mengonfirmasi bahwa kedua file memiliki viewBox yang sama dan data path identik. Salinan QGIS berisi lima placeholder yang dimaksud pada body; accent mempertahankan isian emas tetapnya. Tidak ada elemen <image>, file eksternal, atau font dalam contoh ini.

Untuk marker Anda sendiri, periksa:

  • Sumber berisi bentuk vektor yang Anda harapkan. Mengubah atribut pewarnaan tidak dapat mewarnai ulang piksel di dalam gambar tertanam sebagai wilayah terpisah.
  • Hanya path yang dimaksud menerima parameter. Pertahankan aksen dekoratif secara eksplisit.
  • Deklarasi style tidak mempertahankan nilai pewarnaan tetap yang bertentangan di tempat lain dalam file.
  • Potongan tetap menjadi bukaan nyata ketika dilihat di atas latar kontras.
  • Marker memiliki cukup ruang untuk outline-nya tanpa bingkai kosong yang besar.

Parsing XML yang berhasil memeriksa sintaks. Parsing tidak menjamin renderer tujuan mendukung setiap fitur SVG. Pertahankan sumber sederhana dan selesaikan pemeriksaan aplikasi berikutnya.

Periksa marker dalam proyek QGIS penerima

Dalam selector simbol titik, pilih lapisan simbol SVG marker dan muat salinan tujuan. Manual QGIS khusus versi yang ditautkan di atas menjelaskan jenis simbol ini dan kontrol yang tersedia.

Sebelum memakai simbol di seluruh peta, minta penerima memverifikasi isian badan, outline, dan opacity secara terpisah; memastikan aksen emas tetap; memeriksa lubang pada ukuran marker yang dimaksud; dan membuka kembali proyek yang dibagikan dengan file simbol tersedia. Periksa juga peta atau layout ekspor, karena itulah file yang akan diterima audiens.

Pemeriksaan ini melengkapi penyerahan. Gambar browser dan audit sumber kami mencakup karya masukan, sementara proyek QGIS sebenarnya menentukan hasil akhir.

Ketika ikon berasal dari clipart raster

Jika piktogram khusus Anda hanya tersedia sebagai PNG atau JPG, alat clipart ke SVG PerfectVector dapat merekonstruksi karya vektor untuk diedit. Periksa path, sederhanakan detail yang hilang pada ukuran marker, dan pisahkan badan dari aksen tetap sebelum menambahkan parameter QGIS. Panduan persiapan ikon kecil membahas kejelasan sumber dan pembersihan pada ukuran kecil.

Ini menyiapkan tampilan simbol. Proses tidak melakukan georeferensi gambar, memulihkan koordinat, atau mengubah peta gambar tangan menjadi data geografis akurat. Panduan peta gambar tangan kami menjelaskan perbedaan itu. Jika masukan sudah memiliki path vektor yang diperlukan, gunakan langsung; panduan file SVG dapat membantu Anda memeriksa isinya.

FAQ

Mengapa marker SVG impor tidak menyediakan warna yang saya inginkan? Periksa apakah atribut pewarnaan terkait berisi placeholder parameter QGIS. Dalam contoh ini, hanya badan yang diberi parameter; aksen emas sengaja tetap. Lalu verifikasi kontrol dalam versi QGIS tujuan.

Bisakah saya mempertahankan satu warna aksen tetap? Biarkan fill wilayah itu sebagai warna eksplisit dan terapkan parameter bersama hanya pada wilayah yang ingin dikendalikan. Pertahankan aksen dalam path terpisah agar sumber mudah diaudit.

Apakah memvektorisasikan ikon menjadikannya data geografis? Tidak. Proses membuat karya untuk simbol. Lokasi, koordinat, dan akurasi peta tetap bergantung pada data geografis serta alur GIS.

Sources

  1. QGIS 3.44 — The Symbol Selector — Parameter marker SVG dan default opsional.
  2. MDN — fill-rule — Wilayah terisi dan aturan even-odd yang dipakai untuk lubang.
  3. MDN — viewBox — Persegi panjang koordinat SVG yang dipakai kedua salinan sumber.

Untuk piktogram raster, konversikan clipart ke SVG, periksa lubang dan detail kecil, serta siapkan salinan QGIS terpisah. Simpan master biasa, lalu minta penerima menguji warna dan tampilan marker dalam proyek sebenarnya sebelum penyerahan.

Lebih banyak dari blog

Mulai dengan SVG yang lebih rapi
dan lebih mudah diedit