Fonturile de lecție în filme flash și codarea caracterelor

sarcină: răspundeți la câteva întrebări standard despre utilizarea fonturilor în bliț:
  • De ce nu este textul afișat sub mască?
  • De ce textul dispare când rotiți?
  • De ce textul dispare când am setat transparența?
  • De ce textul dispare când se aplică astfel de efecte în câmpul de text (clip cu un câmp de text)?
  • De ce pe alt computer vezi fonturi foarte diferite și nu cele pe care le-am stabilit?
  • De ce nu sunt afișate literele rusești?
  • De ce este textul încărcat din fișier afișat ca un abracadabra?
Lecția spune despre mecanismele de bază, cunoașterea cărora vă permite să nu întrebați toate întrebările de mai sus. Dacă aveți oricare dintre aceste întrebări, încercați să nu întrebați despre acestea pe forumuri: vă vor indica și vă vor spune "fuu, el (a) nu știe cum să utilizeze căutarea."

Pentru a afișa un font, un film flash poate utiliza fie un font instalat în sistem (font al dispozitivului), fie un font inclus în filmul însuși (font încorporat). Să luăm în considerare ambele variante:







Opțiunea 1: filmul Flash utilizează fontul instalat în sistem (font device).

Pro această opțiune:
  • Textul va fi afișat în același mod, în orice sistem este redat videoclipul
  • Textul va fi afișat sub orice măști
  • textul poate fi transformat (scalare, rotire, transparență etc.)
  • sunt disponibile instrumentele de gestionare anti-aliasing (mai multe opțiuni anti-aliasing Flash 8)
Dezavantajele acestei opțiuni sunt:
  • cilindrul cântărește mai mult

În ciuda faptului că avantajele primei opțiuni sunt mult mai mici decât avantajele celei de-a doua opțiuni, există cazuri în care utilizarea fonturilor sistemului este justificată. Dacă este important să transmiteți informațiile într-o formă ușor de citit, fără a utiliza efecte grafice, este mai bine să utilizați fonturi de sistem, deoarece acestea nu adaugă greutate clipului. Înapoi la început

Deci, ați decis că toți utilizatorii ar trebui să vadă textul din videoclipul dvs. în fontul pe care l-ați întrebat. Sau, ar putea fi necesar să aplicați efecte grafice textului (scalare, rotire, transparență etc.). Deci, fontul trebuie inclus în film.

Este necesar să selectați un câmp de text pe scenă și să deschideți panoul proprietăților (Ctrl + F3 sau Window-> Properties din meniul principal). În acest panou, faceți clic pe butonul "Caracter." (Flash 6, 7) sau "Embed" (Flash 8).

Următoarea imagine arată cum arată în Flash 6 (MX). Vă puteți conecta ca toate caracterele fontului, iar unele grupuri separat. În plus, puteți specifica în mod explicit ce caractere să includeți în linia "Și aceste caractere".


Dialogul de includere a simbolurilor în Flash 8 este aproape identic cu dialogul din Flash 7.

Conectați diferite stiluri de fonturi pentru câmpurile HTML.

Este important să înțelegeți că, pentru un flash, contururi diferite ale unui font sunt în esență diferite fonturi. Asta este, pentru a vă asigura că fontul este afișat corect cu decorul bold. italic și aldine + italic. trebuie să conectați toate aceste trei curse separat.

Conectarea software a fonturilor.

Ce se întâmplă dacă doriți să conectați un font într-un câmp de text programat, folosind un script? S-ar putea să aveți nevoie de acest lucru dacă creați un câmp de text utilizând metoda MovieClip.createTextField (). sau doriți să modificați fontul în caseta de text în timp ce aplicația progresează.

În principiu, sunt necesare doar două acțiuni:
  • setați câmpul text la un font utilizând obiectul TextFormat sau utilizând marcarea html
  • schimba modul de font cu
    TextField.embedFonts = true;
Dar trebuie să înțelegeți că fontul nu va fi luat de nicăieri - dacă doriți ca un anumit font să fie conectat la câmpul de text, acest font trebuie inclus în film. Prin urmare, dacă intenționați să modificați fonturile în caseta de text, trebuie să vă asigurați că toate fișierele necesare sunt incluse în film. Există mai multe abordări ale acestei probleme.

Principalele opțiuni sunt două: includeți toate fonturile necesare în filmul în sine sau încărcați bibliotecile cu fonturile necesare. Prima necesită o anumită precizie, dar nu reprezintă o mare complexitate. Al doilea este o soluție non-trivială care necesită cunoașterea trucurilor jucătorului flash. Aceste "trucuri" sunt implementate în proiectul Manager de Fonturi Partajate Ivan Dembitsky.







Răspunsul la întrebarea "Cât de bine să organizați conexiunea software a fonturilor în câmpurile texovye?" Este detaliat în secțiunea Întrebări frecvente a site-ului Web al Managerului Fonturilor partajate. Totul este explicat în detaliu, nu o voi repeta.

Cum puteți vedea ce fonturi sunt incluse în film.

În meniul principal al mediului Flash, selectați File-> Publish Settings. și accesați fila Flash. În această filă, bifați caseta de validare "Generați raportul de dimensiune". Când compilați filmul în fereastra de ieșire, veți vedea informații detaliate despre cât de mult cântărește și în ce cadru este încărcat. În special, vor fi enumerate toate caracterele tuturor fonturilor incluse în film.

Aceste informații vă vor ajuta mai întâi să determinați dacă toate fișierele și simbolurile necesare sunt incluse în videoclip și, în al doilea rând, pentru a evita utilizarea nejustificată a mai multor fonturi în cazul în care unul este suficient (sau unde nu puteți include fontul în videoclip). Rețineți că fiecare font adaugă greutate videoclipului dvs. Înapoi la început

Dacă fontul nu este inclus în film (adică utilizați fontul de sistem), acesta nu va fi înlăturat în niciun caz. Dar aici este întrebarea: ceea ce este mai important pentru dvs.: toate plusurile fontului conectat sau că fontul nu va fi netezit.

Dacă fontul este inclus în film, flash player-ul începe automat să alinieze caracterele din text.

În Flash 6 și 7 nu există controale anti-aliasing. Puteți obține o definire a fonturilor în pixeli într-un număr limitat de cazuri, indirect. În alte cazuri, fonturile sunt șterse, ceea ce uneori are ca rezultat o lizibilitate redusă și text inexact. Este adevărat că merită menționat faptul că în Flash 7 situația sa îmbunătățit într-o oarecare măsură și este posibil să se obțină o claritate a pixelilor (fără anti-aliasing) pentru un număr mai mare de fonturi. În Flash 6, aceasta a fost o problemă mai mare.

Ce să faceți dacă publicați un videoclip în Flash 6 și 7, includeți fontul din film și doriți ca textul să fie clar (neimprimat).
  1. Luați un pixel. În Flash 6, aceasta a fost singura opțiune, în Flash 7 acest lucru nu este necesar, dar nu din orice tip de font puteți obține claritate. Există, de asemenea, fonturi special "ascuțite" pentru afișarea clară în bliț.
  2. Caseta de text nu trebuie scalată vertical sau orizontal și nu trebuie rotită. Aceeași cerință se aplică tuturor câmpurilor pentru textul părinte pentru clipuri.
  3. Coordonatele colului din stânga sus al câmpului de text trebuie să fie întregi. Dacă câmpul de text este mutat de script, trebuie să rotunji coordonatele la fiecare pas. Aceeași cerință se aplică tuturor câmpurilor pentru textul părinte pentru clipuri.
  4. Pentru a expune fontul "nativ" pentru font (multe fonturi de pixeli sunt destinate utilizării numai într-o anumită dimensiune)
Dacă ați îndeplinit aceste cerințe, iar simbolurile din text sunt încă lubrifiate (și probabil că doar unele simboluri sunt șterse), atunci numai experimentul poate veni în ajutorul dvs. Încercați să obțineți claritate cu un font diferit, încercați să găsiți un font special "sub tăcere", încercați să schimbați dimensiunea fontului. Nu există un model clar.

În Flash 8, există controale încorporate pentru combaterea alinierii fonturilor, atât software cât și în mediul de dezvoltare. Următoarele sunt modurile anti-aliasing disponibile în Flash 8.


Dacă uitați să includeți fontul în film și încercați să selectați modul anti-aliasing, mediul vă va avertiza. Controlul modurilor anti-aliasing este disponibil numai pentru fonturile incluse în film (și automat pentru câmpurile de text static).

Controlul software al acestor moduri este disponibil utilizând clasa flash.text.TextRenderer și proprietatea TextField.antiAliasType. În acest material, utilizarea lor nu este descrisă, deoarece totul este clar redat în ajutor. Există, de asemenea, exemple de utilizare.

Încă netezi? Introduceți câmpul text pe coordonatele întregi, setați modul de netezire la "Text Bitmap" sau "Utilizați fonturile dispozitivului", iar textul este încă netezit? Merită să verificați transformarea câmpului de text și a clipurilor (Ctrl + T) în care este încorporat. Uneori apar modificări de amploare la scară atunci când se editează din întâmplare și cu ochiul liber nu sunt vizibile.


În acest caz, butonul "Resetare" din colțul din dreapta jos al panoului Transformare va rezolva problema. Înapoi la început

Flash acceptă textul în codificarea Unicode. Acesta poate fi UTF-8. UTF-16 LE sau UTF-16 BE. Dacă descărcați un fișier text (sau primiți text dintr-un script) care conține caractere non-latine, acesta trebuie să fie în codificare Unicode, altfel nu va fi interpretat corect de bliț. UTF-16 LE este deseori numit simplu "Unicode", iar UTF-16 BE este numit adesea "Unicode big endian". Abrevierile "LE" și "BE" reprezintă ordinea octelor pentru caracterele din fișier.

Există o setare care permite blițului să funcționeze cu text în codare non-unicode. Această instrucțiune spune blițului că textul care este descărcat din surse externe trebuie citit în codarea locală a sistemului. Cu această setare, afișarea / afișarea caracterelor text pentru utilizatori nu va depinde complet de codificarea care este instalată implicit în sistemele lor de operare. Fișierele din codarea Unicode vor fi tratate corect numai dacă există o semnătură (pentru toate tipurile Unicode).

Această instrucțiune spune blițului că textul care este descărcat din surse externe ar trebui tratat în codificare Unicode. În acest caz, afișarea / nu afișarea caracterelor textului nu va depinde de codificarea care este instalată de utilizator în sistem.

Recomandări generale
  • Utilizați text din surse externe în codare UTF-8 cu semnătură
  • Utilizați System.useCodepage = false; (aceasta este valoarea implicită, nu o puteți instala în mod specific)






Trimiteți-le prietenilor: