SVG marker


ULASHISH

SVG marker - <marker>

<marker> elementi <line>, <path>, <polyline> yoki <polygon>’ning boshi, o‘rtasi va oxiri uchun marker yaratishda ishlatiladi.

Barcha SVG markerlari <defs> elementi ichida belgilanadi. <defs> elementi "definitions" (ta’riflar) so‘zining qisqartmasi bo‘lib, maxsus elementlar (masalan, markerlar) ta’riflarini o‘z ichiga oladi.

Marker shakllarga marker-start, marker-mid va marker-end atributlari yordamida biriktiriladi.

<marker> elementida markerni joylashtirish va uning o‘lchamini belgilash uchun oltita asosiy atribut bor:

Atribut Tavsif
id Markerning yagona (unikal) identifikatori
markerHeight Markerning balandligi. Standart qiymat — 3
markerWidth Markerning kengligi. Standart qiymat — 3
refX Marker cho‘qqi (vertex) bilan tutashadigan x pozitsiya. Standart qiymat — 0
refY Marker cho‘qqi (vertex) bilan tutashadigan y pozitsiya. Standart qiymat — 0
orient Markerning u biriktirilgan shaklga nisbatan yo‘nalishi. Qiymati "auto", "auto-start-reverse" yoki burchak bo‘lishi mumkin. Standart qiymat — 0

Boshlang‘ich va oxirgi markerli chiziq

Quyidagi misolda boshida aylana shaklidagi marker, oxirida esa strelka uchi shaklidagi marker bo‘lgan chiziq yaratiladi:

Sorry, your browser does not support inline SVG.

SVG kodi quyidagicha:

Misol

<svg height="250" width="350" xmlns="http://www.w3.org/2000/svg">   <defs>     <marker id="circle" markerWidth="8" markerHeight="8" refX="5" refY="5">       <circle cx="5" cy="5" r="3" fill="black" />     </marker>     <marker id="arrow" markerWidth="10" markerHeight="10" refX="5" refY="5" orient="auto">       <path d="M 0 0 L 10 5 L 0 10 z" fill="black" />     </marker>   </defs>   <line x1="10" y1="10" x2="300" y2="200" stroke="red" stroke-width="3" marker-start="url(#circle)" marker-end="url(#arrow)" /> </svg>
O‘zingiz sinab ko‘ring »

Kod izohi:

  • <defs> elementi ikkita markerni o‘z ichiga oladi: bitta #circle markeri va bitta #arrow markeri
  • Marker shakli <marker> elementida belgilanadi
  • Birinchi <marker> elementi kichik aylana chizadigan <circle> elementini o‘z ichiga oladi
  • Ikkinchi <marker> elementi kichik uchburchak chizadigan <path> elementini o‘z ichiga oladi
  • <line> elementi ikkala markerga marker-start atributi va marker-end atributi orqali murojaat qiladi


O‘rta marker qo‘shish

Quyidagi misolda boshlang‘ich marker, o‘rta marker va oxirgi markerga ega siniq chiziq yaratiladi:

Sorry, your browser does not support inline SVG.

SVG kodi quyidagicha:

Misol

<svg height="250" width="350" xmlns="http://www.w3.org/2000/svg">   <defs>     <marker id="circle" markerWidth="8" markerHeight="8" refX="5" refY="5">       <circle cx="5" cy="5" r="2" fill="black" />     </marker>     <marker id="arrow" markerWidth="10" markerHeight="10" refX="5" refY="5" orient="auto">       <path d="M 0 0 L 10 5 L 0 10 z" fill="black" />     </marker>   </defs>   <polyline points="15,40 15,170 200,170" stroke="red" stroke-width="3" fill="none" marker-start="url(#circle)" marker-mid="url(#circle)" marker-end="url(#arrow)" /> </svg>
O‘zingiz sinab ko‘ring »

Kod izohi:

  • <defs> elementi ikkita markerni o‘z ichiga oladi: bitta #circle markeri va bitta #arrow markeri
  • Marker shakli <marker> elementida belgilanadi
  • Birinchi <marker> elementi kichik aylana chizadigan <circle> elementini o‘z ichiga oladi
  • Ikkinchi <marker> elementi kichik uchburchak chizadigan <path> elementini o‘z ichiga oladi
  • <polyline> elementi ikkala markerga marker-start atributi, marker-mid atributi va marker-end atributi orqali murojaat qiladi
  • E’tibor bering, marker-start atributi va marker-mid atributi bir xil markerga (#circle) ishora qiladi. Shu tarzda markerlardan bir necha marta qayta foydalanish mumkin

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!