Generator filtrov CSS
Zgradite verigo funkcij CSS filter() in backdrop-filter(), ki jo je mogoče preurediti, in jo predoglejte v živo na lastni naloženi fotografiji z vrstico CSS, ki jo je mogoče kopirati, in izvozom PNG.
Rezultat
Vsak generator filtrov CSS vam omogoča zlaganje zamegljenosti(), svetlosti(), kontrasta() in ostalih — vendar skoraj noben od njih ne pusti, da bi bil vrstni red pomemben, ker večina uporablja filtre le v enem fiksnem zaporedju. Ta je drugačen: veriga filtrov je resničen seznam, ki ga je mogoče preurediti, zgrajen z izvirnim HTML5 povleci in spusti, prerazporeditev dveh funkcij pa resnično spremeni upodobljene slikovne pike, natanko tako, kot bi v produkcijskem CSS. Blur-then-hue-rotate je videti drugače kot hue-rotate-then-blur, in zdaj lahko vidite, zakaj, preden ga pošljete.
Naložite svojo fotografijo in devet funkcij, ki jih je mogoče verižiti – zameglitev, svetlost, kontrast, nasičenost, vrtenje odtenkov, sepija, sivine, obračanje in senca – v živo uporabite zanjo kot dejansko deklaracijo CSS `filtra` na elementu `<img>``, ne kot simulirani vzorec. Dodajte funkcijo iz izbire, povlecite njeno vrstico navzgor ali navzdol po seznamu, da spremenite njen položaj v verigi, prilagodite njen drsnik ter predogled in kopirano vrstico `filter: ...;` posodobite ob vsakem vnosu. Odstranite korak z lastnim gumbom, tam v vrsti.
Druga, manjša veriga ustvari vrednost `backdrop-filter`, ki se uporablja za prekrivno ploščo, postavljeno nad predogled, tako da lahko vidite učinek motnega stekla – tehniko za sodobnimi prosojnimi navigacijskimi vrsticami in modalnimi ozadji –, ne da bi se dotaknili lastne verige filtrov osnovne slike. Deluje, še preden naložite fotografijo, na barvitem ozadju nadomestnega mesta, tako da lahko v nekaj sekundah izberete zasnovo matiranega panela.
Ko je predogled videti pravilen, kopirajte CSS naravnost iz izhodnega polja ali izvozite pravi PNG: isti filtrirni niz je predan lastnosti `ctx.filter` konteksta Canvas 2D — ki uporablja enako sintakso kot lastnost `filter` CSS — in platno se pretvori v datoteko, ki jo je mogoče prenesti z `canvas.toBlob()`. Izvožena slika se natančno ujema s predogledom v živo, ker jo ustvari isti filtrirni niz, ki teče skozi isti primitiv upodabljanja. Vse se zgodi lokalno v vašem brskalniku; vaša fotografija ni nikoli nikamor naložena.