Ký hiệu SVG QGIS: chuẩn bị biểu tượng đổi màu được
Chuẩn bị ký hiệu SVG QGIS tùy chỉnh có tham số màu tô, đường viền, lỗ khoét thực và điểm nhấn cố định. Giữ bản SVG thông thường và kiểm tra bản dùng cho QGIS.
Trên trang này
Để chuẩn bị ký hiệu SVG QGIS tùy chỉnh có màu chỉnh sửa được, thêm ký hiệu giữ chỗ param() của QGIS vào các thuộc tính tô/vẽ bạn muốn ứng dụng điều khiển. Giữ màu tường minh trên các vùng cần cố định. Hướng dẫn Symbol Selector của QGIS 3.44 mô tả ký hiệu giữ chỗ cho màu tô, đường viền, độ mờ đục của chúng và độ rộng đường viền.
Bắt đầu với biểu tượng nhỏ, gọn. Biểu tượng trông thuyết phục ở kích thước minh họa có thể mất lỗ, điểm nhấn hoặc đường viền khi dùng làm ký hiệu bản đồ.
Phạm vi hướng dẫn: chúng tôi hiển thị bản SVG thông thường trong trình duyệt và kiểm tra XML của bản có tham số. Chúng tôi không nhập bản đó vào QGIS. Cú pháp tham số bên dưới tuân theo tài liệu 3.44; bạn hoặc người nhận làm GIS cần hoàn thành các bước kiểm tra trong ứng dụng đích.
Giữ một bản gốc thông thường và một bản cho QGIS
Dùng hai tệp có cùng hình học:
| Tệp | Mục đích |
|---|---|
marker-master.svg | Các thuộc tính tô/vẽ SVG thông thường để chỉnh sửa và kiểm tra trong trình duyệt. |
marker-qgis.svg | Bản dành cho ứng dụng đích có ký hiệu giữ chỗ QGIS trên các thuộc tính được chọn. |
Tách như vậy giúp hình gốc dễ kiểm tra. Bản xem trước của bản gốc thông thường trong trình duyệt chứng minh cách nguồn đó hiển thị ở trình duyệt. Nó không chứng minh bản QGIS đã được nhập đúng hoặc các điều khiển hoạt động như dự định.
Ký hiệu gốc của chúng tôi có thân xanh lá, lỗ tròn trong suốt và điểm nhấn hình thoi vàng. Nó chứa hai đường dẫn và không có ảnh raster nhúng.

Tạo lỗ thực sự trong nguồn
Lưu nội dung này thành 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>Đường dẫn thân bao gồm đường bao ngoài và đường bao tròn bên trong. fill-rule="evenodd" khiến vùng bên trong trở thành lỗ khoét trong cấu trúc này. Nó để nền hiện qua ký hiệu thay vì tô một đĩa trắng lên trên. Tài liệu fill-rule của MDN giải thích cách quy tắc xác định vùng nào được tô.
viewBox xác định hình chữ nhật tọa độ nguồn. Ở đây nó là hình vuông cạnh 64 đơn vị, với khoảng trống quanh đường viền. Giữ khung đó nhất quán giữa hai bản. Nếu biểu tượng trông nhỏ bất ngờ trong khung, kiểm tra hình học và lề trống trước khi tăng kích thước hiển thị.
Điểm nhấn vàng là một đường dẫn riêng, giúp lựa chọn màu tô/vẽ rõ ràng. Với biểu tượng phức tạp hơn, hãy quyết định vùng nào thuộc màu thân chung trước khi thêm tham số. Hướng dẫn màu SVG của chúng tôi giải thích nơi lưu màu tô và đường viền.
Thêm tham số cho thân và giữ điểm nhấn cố định
Tạo bản sao tên marker-qgis.svg. Trên đường dẫn có id="body", thay năm thuộc tính tô/vẽ bằng khối thuộc tính này:
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"Giữ nguyên dữ liệu đường dẫn và fill-rule. Giữ nguyên fill="#f2c96c" cùng stroke="none" của đường dẫn accent.
| Thuộc tính SVG | Ký hiệu giữ chỗ QGIS | Điều khiển dự định |
|---|---|---|
fill | param(fill) | Màu tô thân |
fill-opacity | param(fill-opacity) | Độ mờ đục màu tô thân |
stroke | param(outline) | Màu đường viền thân |
stroke-opacity | param(outline-opacity) | Độ mờ đục đường viền thân |
stroke-width | param(outline-width) | Độ rộng đường viền thân |
Các giá trị sau ký hiệu giữ chỗ là giá trị mặc định tùy chọn trong cú pháp QGIS. Chúng không cam kết rằng trình xem SVG thông thường hiểu giá trị tô/vẽ có tham số. Dùng bản gốc thông thường cho việc chỉnh sửa và xem trước SVG nói chung.
Đừng tự động thay mọi màu bằng param(fill). Trong thiết kế này, làm vậy sẽ loại bỏ quyết định giữ điểm nhấn vàng riêng. Chỉ áp dụng ký hiệu giữ chỗ chung cho các vùng cần phản hồi cùng một điều khiển.
Kiểm tra bản dùng cho ứng dụng đích trước khi bàn giao
Phép kiểm tra XML của chúng tôi xác nhận cả hai tệp có cùng viewBox và dữ liệu đường dẫn giống hệt. Bản QGIS chứa năm ký hiệu giữ chỗ dự định trên body; accent giữ màu tô vàng cố định. Ví dụ này không có phần tử <image>, tệp ngoài hoặc phông chữ.
Với ký hiệu của bạn, hãy kiểm tra:
- Nguồn chứa các hình vector bạn mong đợi. Thay đổi thuộc tính tô/vẽ không thể đổi màu riêng từng vùng pixel bên trong một ảnh nhúng.
- Chỉ các đường dẫn dự định nhận tham số. Giữ màu tường minh cho điểm nhấn trang trí.
- Không có khai báo kiểu giữ một giá trị tô/vẽ cố định xung đột ở nơi khác trong tệp.
- Lỗ khoét vẫn là khoảng trống thực sự khi xem trên nền tương phản.
- Ký hiệu có đủ khoảng trống cho đường viền nhưng không có khung trống quá lớn.
Phân tích XML thành công kiểm tra cú pháp. Nó không chứng nhận trình hiển thị đích hỗ trợ mọi tính năng SVG. Giữ nguồn đơn giản và tiếp tục hoàn thành kiểm tra trong ứng dụng.
Kiểm tra ký hiệu trong dự án QGIS của người nhận
Trong bộ chọn biểu tượng điểm, chọn lớp biểu tượng SVG marker và tải bản dành cho ứng dụng đích. Hướng dẫn QGIS theo phiên bản được liên kết ở trên mô tả kiểu biểu tượng này và các điều khiển có sẵn.
Trước khi dùng biểu tượng trên khắp bản đồ, yêu cầu người nhận xác minh riêng màu tô thân, đường viền và độ mờ đục; xác nhận điểm nhấn vàng giữ cố định; kiểm tra lỗ ở kích thước ký hiệu dự định; và mở lại dự án chia sẻ khi tệp biểu tượng có sẵn. Cũng kiểm tra bản đồ hoặc bố cục xuất ra, vì đó là tệp người xem sẽ nhận.
Những bước này hoàn tất việc bàn giao. Ảnh trình duyệt và kiểm tra nguồn của chúng tôi bao quát hình đầu vào, còn dự án QGIS thực tế quyết định kết quả cuối cùng.
Khi biểu tượng bắt đầu từ clipart raster
Nếu ký hiệu hình tùy chỉnh chỉ có dạng PNG hoặc JPG, công cụ clipart sang SVG của PerfectVector có thể khôi phục hình vector để chỉnh sửa. Kiểm tra đường dẫn, đơn giản hóa chi tiết biến mất ở kích thước ký hiệu và tách thân khỏi điểm nhấn cố định trước khi thêm tham số QGIS. Hướng dẫn chuẩn bị biểu tượng nhỏ trình bày độ rõ của nguồn và làm sạch ở kích thước nhỏ.
Thao tác này chuẩn bị diện mạo biểu tượng. Nó không gán tham chiếu địa lý cho ảnh, khôi phục tọa độ hay biến bản đồ vẽ thành dữ liệu địa lý chính xác. Hướng dẫn bản đồ vẽ tay của chúng tôi giải thích sự khác biệt đó. Nếu đầu vào đã có các đường dẫn vector cần thiết, dùng trực tiếp; hướng dẫn tệp SVG có thể giúp kiểm tra nội dung.
Câu hỏi thường gặp
Vì sao ký hiệu SVG nhập vào không cung cấp các màu tôi muốn? Kiểm tra các thuộc tính tô/vẽ liên quan có ký hiệu giữ chỗ QGIS không. Trong ví dụ này, chỉ thân có tham số; điểm nhấn vàng được chủ động giữ cố định. Sau đó xác minh các điều khiển trong phiên bản QGIS đích.
Tôi có thể giữ một màu điểm nhấn cố định không? Giữ màu tô vùng đó dưới dạng màu tường minh và chỉ áp dụng tham số chung cho các vùng muốn điều khiển. Giữ điểm nhấn trong đường dẫn riêng để nguồn dễ kiểm tra.
Vector hóa biểu tượng có biến nó thành dữ liệu địa lý không? Không. Nó tạo hình cho biểu tượng. Vị trí, tọa độ và độ chính xác của bản đồ vẫn phụ thuộc vào dữ liệu địa lý và quy trình GIS.
Nguồn tham khảo
- QGIS 3.44 — Bộ chọn biểu tượng — Tham số ký hiệu SVG và giá trị mặc định tùy chọn.
- MDN — fill-rule — Vùng tô và quy tắc even-odd dùng cho lỗ.
- MDN — viewBox — Hình chữ nhật tọa độ SVG dùng cho cả hai bản nguồn.
Với ký hiệu hình raster, chuyển clipart sang SVG, kiểm tra lỗ và chi tiết nhỏ, rồi chuẩn bị bản QGIS riêng. Giữ bản gốc thông thường, sau đó để người nhận thử màu và diện mạo của ký hiệu trong dự án thực tế trước khi bàn giao.
Thêm từ blog

Đơn vị chuyển sắc SVG: Dùng chung một dải chuyển sắc cho các phần logo
Cho chuyển sắc trải qua các đường dẫn logo SVG riêng. So sánh gradientUnits, đặt điểm đầu cuối chung và sửa màu lệch bất ngờ trong nhóm được tịnh tiến.

SVG nội tuyến hay img: chọn cách hình hoạt động
So sánh cùng SVG dưới dạng ảnh và mã nội tuyến. Thử điều khiển màu CSS, kích thước, tên trợ năng và tái sử dụng trước khi chọn cách nhúng hình.