Fondid, fondid ja Windows 7

Oh, miks küll pole kirjatüüpide jaoks grupipoliitika häälestust!

Kui sul on kord majas (kasutajad on oma arvutis kasutajaõigustes) ja pool majast moodustvad graafikud, kellel on ad-hoc vaja kasutada kolme juhuslikku kirjatüüpi firma baasis olemas olevatest tuhandetest oled hädas. Sa kas:

a) annad neile administraatori õigused (väga paha),

b) teed kirjatüüpidega majandamiseks lisakasutaja, kes on admin (natuke paha) või

c) jooksed nagu orav rattas ja lisad-eemaldad vastvalt graafikute soovidele.

Kuigi Windows 7 lisas tuhandeid GP objekte, pole selle probleemi juures midagi tarka teha ja tuleb tegeleda häkkidega. Kui XP puhul piisas kaustade ja registry õiguste muutmisest, siis Windows 7 on pirtsakam.

Alljärgnevalt aga lahendus, mis võimaldab fonte dünaamiliselt laadida ja eemaldada, seda kõike tavakasutaja õigustes.

Vaja   on selleks utikat nimega REGISTERFONT.EXE – saab sealt.

  1. Paki see lahti näiteks c:\fonts kausta
  2. kopeeri sinna oma vajalikud kirjatüübid.
  3. ava käsurida, mina sinna kausta ja kamanda “registerfonts add font1.ttf font2.otf”   jne..

Toetatud on kõik Windowsile sobivad erinevad variandid.

Sellisel meetodil on 1 viga (või eelis) – kõik dünaamiliselt laetud kirjatüübid kaovad masina restardil. Buuh. Hea, hoidmaks masinat suhteliselt stabiilses seisus (liiga palju installeeritud kirjatüüpe põhjustab Windowsis ikka veel probleeme). Halb – kui vastv projekt kestab kauem kui keskmine masina töösoleku aeg. Olen täheldanud veel ühe eripära – sellisesid kirjatüüpa ma Control Panel / Fonts all ei näe, kui kõikvõimalikes programmides on nad kasutatavad.

Kuna graafikud ei pruugi olla kõige helgemad kuskil kaustades ringi liikumises ja erinevate käskude sisestamisel on all toodud 2 powershell rida. Esimene neist eemaldab kõik samas kaustas juba olemasolevad kirjatüübid “font cachest” ja teine laadib nad uuesti.

foreach ($font in get-childitem * -include *.ttf,*.otf -name) {.\registerfont rem $font}
foreach ($font in get-childitem * -include *.ttf,*.otf -name) {.\registerfont add $font}

 

Vastava ps skriptikese võid juba startupist või kust iganes väljakutsuda stiilis:

powershell -NoLogo -ExecutionPolicy Unsrestricted -File skriptinimi.ps1