Windows Cursor (.cur)
Microsoft StandartsWindows Cursor Resource (CUR) ir vietējais Microsoft Windows peles rādītāja formāts, kura konteinera arhitektūra ir identiska ICO, taču tajā ir norādītas precīzas aktīvā punkta (hotspot) koordinātu nobīdes.
Pārbaudīt un metadati
Operētājsistēmas un failu analizatori identificē CUR failus, pārbaudot sākotnējo bināro baitu secību:
Baitu līmeņa galvenes paraksts (maģiskie baiti)
Operētājsistēmas un failu analizatori identificē CUR failus, pārbaudot sākotnējo bināro baitu secību:
HEKSADECIMĀLAIS PARAKSTS (NOBĪDE 0):
00 00 02 00ASCII ATTEIOLOJUMS: ....
Standartizācija: Microsoft Windows Resource Specification
Tehniskās specifikācijas
| Konteinera arhitektūra | ICONDIR header with resource type 2 (Cursor) followed by ICONDIRENTRY array and DIB data |
| Saspiešana | Uncompressed DIB or PNG compressed streams (Windows Vista+) |
| Baitu secība | Little-Endian (Intel x86) |
| Krāsu telpas | Device RGB |
| Kanāli un struktūra | 1-bit monochrome mask, 4-bit, 8-bit, or 32-bit BGRA with alpha |
| Maks. izmēri | Typically 32 x 32, 48 x 48, or 64 x 64 (supports up to 256 x 256 in modern Windows) |
| Caurspīdīgums | XOR/AND binary mask or 8-bit smooth alpha channel |
| Straumēšana un progresīvā ielāde | Non-streamable desktop icon/cursor directory |
Tehniskā salīdzinājuma matrica: CUR pret konkurentiem
| Tehniskais atribūts | CUR (Pašreizējais) | ICO | PNG | SVG |
|---|---|---|---|---|
| Aktīvā punkta definīcija | Iegultas X/Y pikseļu koordinātas | Nav (pēc noklusējuma centrā/augšējā kreisajā stūrī) | Definēts CSS | Definēts SVG skatlodziņā (viewbox) |
| Resursa veida ID | 0x0002 (Rādītājs) | 0x0001 (Ikona) | Standarta attēls | Vektora XML |
| Operētājsistēma | Vietējā Windows peles apakšsistēma | Windows čaula / Pārlūka favikona | Universāls tīmeklis un lietotnes | Universāls vektors |
| Mērogojamība | Fiksētas vairāku izšķirtspēju mipkartes | Fiksētas vairāku izšķirtspēju mipkartes | Rastera fiksēts izmērs | Bezkgalīga vektora mērogošana |
Biežākie bojājumu veidi un heksadecimālās atkopšanas ceļvedis
Peles klikšķis reģistrējas vairākus pikseļus prom no rādītāja bultiņas gala.
Pamatcēlonis: Bojātas vai trūkstošas aktīvā punkta X/Y koordinātas ICONDIRENTRY tabulā.
Atkopšana: Atkārtoti izveidojiet rādītāju File2File Cursor Converter, lai vizuāli atkārtoti kalibrētu aktīvā punkta koordinātu.
Drošības analīze un parsētāja uzbrukuma vektori
CUR parsēšanas kļūdas Windows grafikas ierīces saskarnē (GDI) vēsturiski ļāva izpildīt patvaļīgu kodu, izmantojot speciāli veidotus galvenes izmērus.
Zināmie uzbrukuma vektori
- Veselu skaitļu pārpilde (integer overflow) DIB krāsu masku تخصيص allocation laikā mantotajos rādītāju dekoderos.
- Bojātas aktīvā punkta nobīdes, kas izraisa rādītāja nolasīšanu ārpus pieļaujamajām robežām (out-of-bounds) rādītāja kopēšanas laikā.
- Atmiņas apgabala (heap) korupcija, parsējot iegultās PNG straumes moderno CUR failu iekšpusē.
Aizsardzības labākā prakse:
Vēsturiskā izcelsme un pavērsieni
Galvenās priekšrocības un plusi
- Definē precīzas pikseļu aktīvā punkta koordinātas (X, Y), kur ekrānā fiziski reģistrējas peles klikšķi.
- Nodrošina vairāku izšķirtspēju rādītāju definīcijas asumam standarta un augsta DPI 4K monitoros.
- Tiešs vietējās operētājsistēmas atbalsts Windows vidē bez trešo pušu rādītāja draiveriem.
Tehniskie ierobežojumi un mīnusi
- Uz Windows orientēts formāts ar vāju vietējā attēlojuma atbalstu mobilajās ierīcēs un pārlūkprogrammās, kas nav Windows.
- Tikai statisks rādītājs; animētiem rādītājiem ir nepieciešams vairāku kadru .ANI konteiners.
- Mantotās 1 bita XOR maskas rada asus inversijas artefaktus uz mūsdienu krāsu saskarnēm.
Interesanti tehniski fakti
- Vienīgā strukturālā atšķirība starp ICO failu un CUR failu ir galvenes 3. baits: 1 ikonai, 2 rādītājam.
- ICO failā katra ieraksta 4. un 6. baits attēlo krāsu plaknes un bitus uz pikseli; CUR failā tieši šie baiti attēlo aktīvā punkta X un Y koordinātas.
- CSS atbalsta pielāgotus tīmekļa rādītājus tieši, izmantojot URL, kas norāda uz .cur failiem.
Bieži uzdotie tehniskie jautājumi
Kas ir kursoru karstais punkts?
Karstais punkts ir precīza pikseļa koordināta kursora attēlā (piemēram, bultas pats gals vai krusttēla centrs), kur notiek klikšķa notikumi.
Vai varu konvertēt attēlu (PNG/JPG) uz CUR failu?
Jā. File2File.app ļauj konvertēt standarta PNG vai JPG failus Windows .CUR kursora failos ar pielāgotu karstā punkta izvietojumu.
Kā es varu izmantot .cur failu savā tīmekļa vietnē?
Jūs varat lietot pielāgotus kursorus CSS, izmantojot: cursor: url('my-cursor.cur'), auto;