Să ne uităm la crearea conținutului în vrac. Vom folosi un fișier Batch DOS pentru a genera rapid mai multe SWF-uri care conțin text, sunet, imagini etc., dar care urmează un șablon definit de noi.
Trebuie să recunosc, sunt un iubitor SWF. Ați auzit multe în aceste zile despre HTML5 și alte tehnologii emergente care vor pune cumva vechile SWF vechi, dar voi fi unul dintre acei dezvoltatori care se agață de SWF-ul meu iubit atâta timp cât pot. În ultimii 14 ani, SWF a fost unic în capacitatea sa de a furniza conținut media bogat pe web, cu mult înainte ca orice alte tehnologii să poată veni chiar și aproape.
Pentru eLearning, SWF este încă destul de mult standard și este ceva ce folosesc în tot conținutul lecției mele. Îl folosesc pentru totul, de la videoclipuri virtuale tutore la imagini vectoriale, texte vectoriale și activități interactive de orice fel.
Pentru a face crearea de conținut în vrac, am descoperit că nimic nu funcționează destul de rapid și puternic ca un fișier Batch DOS bun. Puteți scrie și modifica rapid un fișier batch pentru a face tot felul de lucruri interesante și dacă lucrați cu o cantitate mare de imagini, text și audio, un fișier batch poate transforma rapid acest conținut în conținut multimedia sub forma unui SWF.
Motivele pentru care ați putea dori să faceți acest lucru sunt:
Singurul instrument din Windows pe care aveți nevoie de altceva decât editorul de cod este Flex SDK și, opțional, o aplicație open source ASCII pentru conversia UTF-8 numită iconv din proiectul GnuWin, dacă intenționați să utilizați caractere sau accente internaționale în textul dvs..
Să aruncăm o privire asupra rezultatului final la care vom lucra
Crearea în bloc înseamnă că toate SWF-urile dvs. vor urma același șablon, deci decideți ce fel de elemente aveți nevoie de: text vectorial, imagine, audio etc..
Denumiți fișierele în mod corespunzător: fiecare text, imagine și fișier audio trebuie să aibă nume potrivite, precum și caz. Dacă fișierele dvs. sunt dezorganizate, este posibil să doriți să descărcați un program utilitar de fișiere pentru a le redenumi lot, pentru a le converti în litere mici, etc. Un astfel de program pe care l-am găsit se numește Utilities Utilities File.
Poate doriți să deschideți un fișier text și să păstrați o listă de căi absolute pentru aceste elemente, inclusiv orice fonturi pe care intenționați să le încorporați.
În sursa / utilitate dosarul descărcării pentru acest tutorial, veți găsi câteva mici scripturi batch care vă pot ajuta să creați o listă de cuvinte cheie pentru a fi utilizată cu crearea SWF. Dacă numele fișierelor conțin mai mult de un cuvânt, utilizați a liniuță între cuvinte [-]. Dash-urile sunt deja găzduite în fișierul meu principal .bat care creează SWF-urile. Atunci când se utilizează liniuțe, acestea sunt convertite în numere și apoi convertite în liniuțe cu un alt fișier de utilitate mic, deoarece în caz contrar fișierele din clasa AS3 nu reușesc să compileze.
Deschideți editorul de cod (întotdeauna folosesc Notepad ++ pentru codarea în mai multe limbi, este o aplicație open source uimitoare).
În următorii pași, voi schița elemente posibile pentru a vă adăuga la definiția fișierului dvs. de clasă, care va fi utilizată de fișierul DOS pentru a genera toate SWF-urile dvs..
Dacă doriți să urmați împreună examinarea fișierului de clasă pe care l-am folosit pentru aceste fragmente, deschideți-l Sursă / lago.as fișier în pachetul de descărcare pentru acest tutorial.
Incepem prin adaugarea unui layout generic de pachete in AS3, care fara functii ar arata cam asa:
pachet import flash.display.Sprite; import flash.display. *; clasa publica lago extinde Sprite
Acum, să adăugăm câteva elemente reale SWF-ul nostru!
Ca întotdeauna, începeți prin a importa fișierele de clasă necesare:
import flash.media.Sound; import flash.media.SoundChannel;
Aici este un cod pentru a încorpora un sunet într-o locație statică. Vei observa când vom ajunge să creăm fișierul DOS, vom folosi variabilele pentru dosarul și numele fișierului nostru.
[Embed (sursă = "C: /Users/You/Desktop/sound/lago.mp3")] public var classClass: Class; var sndChannel: SoundChannel; var smallSound: sunet = sunet nou () ca sunet;
Aici este codul pentru a încorpora o imagine:
[Embed (sursă = "C: /Users/You/Desktop/images/lago.swf")] public var Imagine: Clasă; var pic: Sprite = imagine nouă ();
În fișierul meu mai întâi creez un Sprite, la care adaug imaginea, dar dacă vrei să adaugi imaginea directă pe scena pe care o vei folosi:
addChild (pic);
Pe măsură ce folosesc caractere internaționale, îmi încorporez fontul specificând care caractere Unicode trebuie să includă:
[Embed (mimeType = "aplicație / x-font", unicodeRange = "U + 0061-U + 007A, U + 00E1-U + 00E1, 00F1-U + 00F1, U + 003F-U + 003F, U + 00FA-U + 00FA, U + 00E1-U + 00E1, U + 00F3-U + 00F3, U + 00BF-U + 00BF, U + 00A1- U + 00A1 ", sursa =" C: /Users/You/Desktop/BradBunR.ttf ", fontName =" Brady ")] terminator privat varFontClass: Class;
Pentru a vedea care caractere aveți nevoie, puteți verifica această diagramă aici, găsită la site-ul Universității din Wisconsin-Madison, Spațiul, Știința și Ingineria. În Windows, puteți să vă deschideți programul charmap.exe și să examinați valorile caracterelor de care aveți nevoie.
textFormat
pentru stilul textuluiÎncepeți prin a importa clasele necesare:
import flash.text. *; import flash.text.TextFormat; import flash.text.AntiAliasType;
Acum creați un textfield
și atașați a textFormat
la el:
var __text_tf: TextField = format TextField nou (), __: TextFormat = new TextFormat ();
Acum, să aplicăm ceva stil textului nostru. Am folosit o dimensiune pentru textul de mai jos, dar în fișierul meu actual ajustează dimensiunea bazată pe lungimea șirului, astfel că această linie de dimensiune nu ar fi folosită.
__format.size = 30; __format.font = "Brady"; __format.letterSpacing = 6; __format.align = TextFormatAlign.CENTER; __text_tf.width = 500; __text_tf.embedFonts = true; __text_tf.wordWrap = adevărat; __text_tf.defaultTextFormat = __format; __text_tf.autoSize = "center"; __text_tf.text = str;
Acesta a fost un pic de cod complicat, dar dacă încercați să creați SWF-uri în vrac de fraze și chiar propoziții, mai degrabă decât doar cuvinte singulare, veți găsi că este necesar să se găsească pentru lungimi diferite de șir. În caz contrar, unele dintre cuvintele dvs. vor fi fie prea mari, fie prea mici.
dacă (str.length <= 9) __format.size = 70; else if (str.length >= 14 && str.length <= 22) __format.size = 50; __text_tf.defaultTextFormat = __format; else if (str.length >= 28 && str.length <= 48) __format.size = 40; __text_tf.defaultTextFormat = __format; else __format.size = 50;
Desigur, puteți schimba aceste valori în funcție de propriile dvs. nevoi de conținut.
textfield
Această linie ma izbucnit la început, și a fost crucială pentru a obține textul meu să centreze în mod corespunzător în textfield
.
__text_tf.autoSize = "center";
Acest cod a avut cea mai mare parte a unei zile pentru a avea dreptate, și este singura modalitate prin care am găsit să redimensionăm și să centrați în mod corespunzător un SWF. Puteți schimba x, y, targetHeight
, și targetWidth
valori în funcție de dimensiunea SWF-urilor dvs., dar în caz contrar acest cod vă poate ajuta să realizați centrarea și redimensionarea:
raport var: număr; var larg: Număr; var targetWidth: Număr = 400; var targetHeight: Number = 250; dacă (pic.width < targetWidth) ratio = targetWidth / pic.width; pic.width = targetWidth; pic.height *= ratio; wide = pic.width*ratio; if (pic.height < targetHeight) ratio = targetHeight / pic.height; pic.width *= ratio; pic.height = targetHeight; wide = pic.width*ratio; if (pic.width > targetWidth) ratio = targetWidth / pic.width; pic.width * = raport; pic.height * = raport; raportul lățimea = pic.width *; dacă (pic.height> targetHeight) ratio = targetHeight / pic.height; pic.width * = raport; pic.height * = raport; raportul lățimea = pic.width *; pic.y = 110; pic.x = 250 - lățime / 2; pic.scaleX = pic.scaleY; square.addChild (pic);
Vă rugăm să aruncați o privire la fișierul eșantion Sursă / lago.as dacă aveți nevoie de mai mult ajutor pentru realizarea șablonului de fișiere de clasă, deoarece acum este momentul să creați versiunea DOS a fișierului.
Deschideți fișierul lago.bat.txt în directorul sursă al descărcării și salvați numele la doar lago.bat. Dacă utilizați un editor de cod, cum ar fi Notepad ++, trebuie să aveți o sintaxă de evidențiere a loturilor care va fi aplicată acum. În timp ce nu este necesar, evidențierea sintaxei face ca codarea lotului să fie mult mai ușoară.
Amintiți-vă că DOS are nevoie de evadarea anumitor caractere prin prefixarea acestora cu a semn de omisiune [^] (sau uneori a dublu-caret [^^], inclusiv:
De asemenea, amintiți-vă următoarele lucruri:
ecou
astfel încât să fie inclusă >> fileoutta!
astfel încât acesta să fie atașat fișierului .bat creator al SWFUtilizați un program ca Notepad ++ pentru a rula o căutare și înlocuire RegEx, scapând mai întâi de caracterele necesare, apoi adăugând ecou
comenzile de la începutul liniilor sau unde \ n se găsește și adăugați >> fileoutta!
înainte de a reveni sau unde se află. De exemplu:
Găsi:
\ n
Înlocui cu:
\ n ecou
Și
Găsi:
\ r
Înlocui cu:
>> fileoutta!
\ r
În cele din urmă, salvați această versiune DOS a fișierului dvs., adică. myclass.bat.
Pentru a urmări mai bine, deschideți următorul fișier din descărcări sursă director: batch_create_swfs_word_picture_w_audio.bat.txt. Schimbați fișierul care se termină la doar .băţ și salvați.
Puncte despre acest fișier .bat:
Folosesc un fișier listă de cuvinte cheie pentru a crea SWF-urile mele, care se găsește în sursa / glosar / glossary.txt. Pentru a crea un astfel de fișier dintr-un dosar de fișiere, puteți utiliza unul dintre fișierele .bat de utilitate găsite în fișierul sursa / utilitate pliant.
Rețineți că procesarea în lot vă cere să fii foarte conștiincios atunci când numiți orice bunuri. Cea mai bună abordare este să dați exact aceleași nume imaginilor și materialelor audio destinate aceluiași SWF, apoi să le puneți în subdosarele corecte - de exemplu:
sunet / lago.mp3
images / lago.swf
glossary / glossary.txt pentru a crea doar SWF pentru lago ar citi pur și simplu
lago
Frumusețea sistemului meu este aceea a mea glossary.txt fișierul poate conține o cantitate nelimitată de cuvinte - de fapt l-am executat cu 1000 de cuvinte, fără probleme! Dar activele pe care încercați să le încorporați trebuie să existe și să fie în locația corectă, numită corect, sau SWF pentru acel cuvânt nu va reuși să compileze.
Uită-te din nou la batch_create_swfs_word_picture_w_audio.bat fişier. Derulați în jos până la secțiunea de sub REM 1 titlu și veți găsi începutul zonei în care puteți adăuga versiunea DOS a fișierului de clasă AS3 personalizat pe care l-ați creat în Pasul 11.
Un lucru de remarcat este că folosesc variabil !myVar!
pentru numele dosarului, astfel încât să pot renunța la acest fișier .bat în orice director dintr-un director principal de pe computerul meu, iar căile spre fișiere vor fi totuși corecte, atâta timp cât folosesc / imagini și /sunet subdirectoare. Examinați codul meu înainte de a păstra propriul dvs. în, astfel încât să puteți face înlocuirile corespunzătoare.
Secțiunile denumite REM 1, REM 2, REM 3, și REM 4 toate necesită să personalizați pe baza propriilor căi de dosar.
Deschideți utf_convert.bat.txt fișier și redenumiți-l la utf_convert.bat. Găsi REM 1 și REM 2 secțiuni și completați căile corecte pentru fișierele dvs..
E timpul să compilați! Găsiți directorul principal pe care l-ați utilizat pentru toate căile dvs. și creați un folder nou numit proba. Deschideți dosarul de descărcare pentru acest tutorial și copiați subfolderele din Sursa / trialrun și lipiți-le în proba dosarul pe care tocmai l-ați creat în directorul principal.
Copie batch_create_swfs_word_picture_w_audio.bat și opțional utf_convert.bat fișiere către proba directorul pe care l-ați creat.
Este timpul să dați o încercare formării SWF în loturi! Click pe batch_create_swfs_word_picture_w_audio.bat Aceasta va crea fișiere de clasă AS3 care vor fi folosite pentru a genera SWF-uri individuale.
Veți primi instrucțiuni în Consola de comandă pentru a face clic pe utf_convert.bat si utf_click_to_convert.bat fișiere, în ordinea respectivă. Aceasta va converti toate fișierele de clasă AS3 în fișiere compatibile UTF-8 înainte de a rula compilamentul Flex AS3.
După ce se face conversia UTF-8, Consola de comandă va aștepta să faceți clic pe orice tastă, înainte de a relua. După ce faceți acest lucru, compilarea SWF va începe. Pentru operația de încercare, vor fi create 3 fișiere SWF în trialrun / word_scripts_sp_au_utf8 director.
Deschideți trialrun / word_scripts_sp_au_utf8 director și vedeți dacă fișierele SWF sunt acolo. Pe lângă fișierele de clasă .as, ar trebui să vedeți: lago.swf, nieve.swf, și hielo.swf.
Când rulați propriile liste de cuvinte pentru crearea SWF în lot, este posibil să aveți nume lungi de fișiere care trebuie redenumite în lot. Deoarece nu aveți liniuțe în numele claselor AS3, folosesc numerele pentru a le înlocui atunci când este necesar, apoi rulau un mic utilitar .bat găsit în utilitate / rename_long_swfs.bat.txt din dosarul de descărcare. Redenumiți extensia acestui fișier în .bat, apoi copiați-l în word_scripts_sp_au_utf8 folderul în care se află SWF-urile finalizate pentru a face această redenumire pe un grup de SWF-uri.
Sper că acest tutorial vă va ajuta pe unii dintre voi să vă bucurați de minuni și de adevărata fericire de programare care pot veni cu crearea de pachete SWF prin DOS. Pentru a vedea sute de SWF multimedia perfect create cu doar câteva clicuri este un sentiment destul de mare! Vă mulțumim foarte mult pentru faptul că ați citit acest tutorial și aștept cu nerăbdare orice comentarii sau întrebări pe care le puteți avea.
Notă: Merită remarcat faptul că ANT este adesea considerată o alternativă demnă pentru crearea de fișiere batch, în special pentru utilizatorii Mac. Check out Introducere în AntPile lui Jesse Freeman pentru a afla mai multe.