Skip to content
PNG
License

Spatly Marks are free to use in personal and commercial projects. Attribution is appreciated, not required. Do not resell the set as-is.

Map markers

Flag

A free SVG map marker icon from Spatly Marks, an original first-party kit. Recolour and export it below, or open it straight in the studio.

SVG source
html
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" data-mark="flag" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7 29V4"/><path d="M7 5h16l-3.5 5.5L23 16H7"/></svg>

How to use Flag

MapLibre GL
ts
import { loadMarkImages } from "@spatly/marks";

map.on("load", async () => {
  await loadMarkImages(map, ["flag"]); // registers image "mark:flag" (SDF)
  map.addLayer({
    id: "flag-points",
    type: "symbol",
    source: "places",
    layout: { "icon-image": "mark:flag", "icon-size": 1, "icon-allow-overlap": true, "icon-anchor": "bottom" },
    paint: { "icon-color": "#e81860" }, // SDF markers recolor here
  });
});
Leaflet
ts
import { markDataUrl } from "@spatly/marks";

const icon = L.icon({
  iconUrl: markDataUrl("marker:flag", { size: 64, fill: "#e81860" }),
  iconSize: [32, 32],
  iconAnchor: [16, 32],
});
L.marker([41.0082, 28.9784], { icon }).addTo(map);
HTML
html
<!-- Paste the SVG straight in, or reference a saved file -->
<img src="flag.svg" width="32" height="32" alt="Flag" />
React
tsx
import { Mark } from "@spatly/marks";

<Mark name="marker:flag" size={32} />

Similar marks

Use Flag on your own map.

Spatly Marks power every layer and annotation in the studio. Drop a GeoJSON and place them on live data.

41.0082°N 28.9784°E · z 11.3 · ⟂ 0°