Line
Menggambar garis lurus antara dua titik akhir pada koordinat lokal. Cocok untuk garis indikator, tanda centang, dan pembagi, Anda dapat mengatur gaya warna, lebar, tanda hubung, dan titik akhir.
Contoh
function main() {
return (
<Line
start={{ x: 0, y: 20 }}
end={{ x: 160, y: 60 }}
stroke={$env.accent}
lineWidth={4}
lineCap="round"
/>
);
}
Penggunaan
- start/end adalah titik lokal: asal kiri atas, x kanan, y bawah. Tidak otomatis berskala dengan width/height; hitung untuk ukuran responsif. Line tidak punya bagian dalam yang dapat diisi.
- x/y dan transform diterapkan setelah layout. Memindah anak tidak mendorong saudara; gunakan spacing atau Spacer. Rotasi dan skala memengaruhi seluruh gambar.
Properti
start?ViewPointTitik ujung lokal dalam poin: x ke kanan, y ke bawah.
{x: 0, y: 0}end?ViewPointTitik ujung lokal dalam poin: x ke kanan, y ke bawah.
{x: 100, y: 80}stroke?PaintWarna atau gradasi garis; clear menyembunyikannya.
HDR($env.dark ? "white" : "black")lineWidth?numberKetebalan garis dalam poin; 0 tidak menggambar garis.
2lineCap?"round" | "butt" | "square"Ujung garis: butt memotong, square memanjang persegi, round membulat.
"round"dash?number[]Panjang garis dan celah bergantian dalam poin; larik kosong membuat garis utuh.
[]dashPhase?numberOffset pola putus-putus dalam poin.
0trimStart?numberBagian jalur terlihat trimStart–trimEnd dalam 0–1. Circle/Ellipse/Arc memakai sudut.
0trimEnd?numberBagian jalur terlihat trimStart–trimEnd dalam 0–1. Circle/Ellipse/Arc memakai sudut.
1Properti umum
width?number | "auto" | "fill"Lebar dalam poin, ukuran otomatis, atau memenuhi induk.
"fill"height?number | "auto" | "fill"Tinggi dalam poin, ukuran otomatis, atau memenuhi induk.
"fill"x?numberOffset visual dalam poin: x ke kanan, y ke bawah; ruang tata letak tidak berubah.
0y?numberOffset visual dalam poin: x ke kanan, y ke bawah; ruang tata letak tidak berubah.
0transform?ViewTransformTransformasi seluruh View tanpa mengubah tata letak. Translasi dalam poin, rotasi/kemiringan dalam derajat, skala 1 tetap, jangkar 0–1.
{rotation: 0}opacity?numberOpasitas seluruh View: 0 transparan, 1 buram.
1clipped?booleanPotong gambar yang melewati batas View.
falseclip?"rectangle" | "ellipse"Bentuk potongan rectangle atau ellipse; Material juga menerima false untuk mematikan.
"rectangle"mask?View | nullView masker alfa. Di tengah tanpa memengaruhi tata letak; null menonaktifkan masker.
<Circle width="fill" height="fill" background="white"/>zIndex?numberUrutan gambar antar saudara; nilai lebih besar di depan.
0blur?numberRadius buram dalam poin; 0 menonaktifkan.
4innerShadow?DrawingEffectWarna, opasitas, radius buram dan offset x/y efek; jarak dalam poin.
{color: HDR("black"), opacity: 0.5, radius: 4, x: 0, y: 2}glow?DrawingEffectWarna, opasitas, radius buram dan offset x/y efek; jarak dalam poin.
{color: HDR("cyan"), radius: 8, opacity: 0.8}shadowColor?ColorWarna bayangan luar.
HDR("black")shadowOpacity?numberOpasitas bayangan 0–1; 0 menyembunyikannya.
0shadowRadius?numberRadius buram bayangan luar dalam poin.
4shadowX?numberOffset bayangan dalam poin: x ke kanan, y ke bawah.
0shadowY?numberOffset bayangan dalam poin: x ke kanan, y ke bawah.
2animations?Animation[]Animasi perubahan properti. duration/delay dalam detik; from/to adalah ujung; repeat/autoreverse untuk pengulangan, wrap untuk periode.
[{property: "opacity", duration: 0.25, curve: "easeInOut"}]key?string | numberIdentitas stabil di antara elemen sejajar.
Contoh praktis
function main() {
return (
<Line
width={$env.width}
height={40}
start={{ x: 0, y: 20 }}
end={{ x: $env.width, y: 20 }}
stroke={$env.accent}
lineWidth={3}
dash={[8, 4]}
dashPhase={0}
/>
);
}
Animasi
widthheightxyopacityblurshadowColorshadowOpacityshadowRadiusshadowXshadowYtrimStarttrimEnddashPhasestrokelineWidthtransform.translateXtransform.translateYtransform.scaleXtransform.scaleYtransform.rotationtransform.skewXtransform.skewYtransform.anchorXtransform.anchorYstart.xstart.yend.xend.yJika dihilangkan
Tabel menunjukkan perilaku penghilangan yang diverifikasi dari implementasi; contoh bukan default. Untuk hasil tetap beri nilai eksplisit; ukuran dan warna kontekstual bukan konstanta.
| Properti | Jika dihilangkan |
|---|---|
lineWidth | 2 |
lineCap | "round" |
trimStart | 0 |
trimEnd | 1 |
dash | [] |
dashPhase | 0 |
stroke | HDR($env.dark ? 'white' : 'black') |