Formatowanie tekstu za pomocą HTML i CSS, cz. 2

Autor: Marek Redesiuk, dodano: 19-12-2008
Kategoria: Programowanie i tworzenie

Formatowanie tekstu w dynamicznych polach tekstowych za pomocą zewnętrznych i wewnętrznych arkuszy styli CSS oraz znaczników HTML. Style CSS i znacznik img są implementowane od wersji Flash MX 2004.

Zarówno style jak i treść możemy zamieścić bezpośrednio we Flashu, jest to jednak metoda mniej wydajna pod względem późniejszej edycji styli czy tekstu dla dużej ilości plików, jednak ma też jedną zaletę, kompresja tekstu we Flashu jest lepsza niż w notatniku, co oznacza, że plik z tą samą ilością znaków w formacie *.swf zabiera mniej miejsca niż plik *.txt.

 

Przykładowy kod umieszczony wewnątrz Flasha:

 

this.createTextField("my_txt", this.getNextHighestDepth(), 0, 0, 350, 250);
var myStyle:TextField.StyleSheet = new TextField.StyleSheet();
myStyle.setStyle("title1", {
color:'#6495ED',
fontFamily:'"Courier New",Courier, monospace',
fontSize:'16',
fontWeight:'bold',
textAlign:'center',
display:'block'
}
);
myStyle.setStyle("title2", {
color:'#999999',
fontFamily:'"Times New Roman", Times, serif',
fontSize:'12',
fontStyle:'italic',
fontWeight:'normal',
textAlign:'center',
display:'block'
}
);
myStyle.setStyle(".tresc", {
color:'#990000',
fontFamily:'Verdana, Geneva, Arial, Helvetica, sans-serif',
fontSize:'10',
fontWeight:'normal',
textAlign:'left',
display:'block'
}
);
my_txt.styleSheet = myStyle;
my_txt.html = true;
my_txt.multiline = true;
my_txt.wordWrap = true;
my_txt.htmlText = "<title1>Formatowanie pól tekstowych.</title1>";
my_txt.htmlText += "<title2>Za pomocą CSS i HTML.</title2><br>";
my_txt.htmlText += "<p class='tresc'>Deklarowanie styli, wewnątrz Flasha wiąże się z innym ich zapisem, nazwa jest umieszczona w cudzysłowie, za którym znajduje się przecinek, wartości znajdują się wewnątrz pojedynczych cudzysłowów i kończone są przecinkami, oprócz ostatniej definicji. Nie używamy w nazwach właściwości myślników font-family, zastępujemy je dużym znakiem fontFamily.</p>";

Plik css_3

Deklarowanie styli, wewnątrz Flasha wiąże się z innym ich zapisem, nazwa jest umieszczona w cudzysłowie, za którym znajduje się przecinek, wartości znajdują się wewnątrz pojedynczych cudzysłowów i kończone są przecinkami, oprócz ostatniej definicji.

 

Nie używamy w nazwach właściwości myślników font-family, zastępujemy je dużym znakiem fontFamily. Nie trudno zauważyć, że możemy tworzyć własne znaczniki :) Tak w stylach wczytywanych jak i wewnętrznych. Jeżeli przed nazwą właściwości umieścimy kropkę (.title1) to możemy stylu używać jako klasy <p class='title1'>treść</p>.

 

Jeśli pominiemy kropkę (title1) możemy używać własnego znacznika <title1>treść</title1>. Poprzez znacznik <a> możemy również wywoływać określona funkcję, załóżmy, że ma scenie mamy movie clip o instancji my_mc, aby go zatrzymać lub wznowić odtwarzanie stosujemy taki kod:

 

this.createTextField("my_txt", this.getNextHighestDepth(), 0, 0, 350, 50);
my_txt.html = true;
my_txt.multiline = true;
my_txt.htmlText = "<p><a href="asfunction:asfStop,my_mc">Stop<a></p>";
my_txt.htmlText += "<a href='asfunction:asfPlay,my_mc'>Play<a>";
function asfStop(mc:String) {
this[mc].stop();
}
function asfPlay(mc:String) {
this[mc].play();
}

 

Plik css_4

Nadając wczytanemu do pola tekstowego plikowi *.swf własny <b>id</b> możemy nim sterować z poziomu filmu głównego:

 

 

this.createTextField("my_txt", this.getNextHighestDepth(), 0, 0, 350, 150);
my_txt.html = true;
my_txt.multiline = true;
my_txt.wordWrap = true;
my_txt.htmlText = "<p>Wczytany plik flash_2.swf</p><br>";
my_txt.htmlText += "<img src='flash_2.swf' align='left' id='my_mc'>";
stop_mc.onRelease = function() {
my_txt.my_mc.stop();
};
play_mc.onRelease = function() {
my_txt.my_mc.play();
};

 

Plik css_5

Życzę miłej zabawy z formatowaniem tekstów oraz udanych efektów tej pracy.

Autor, Marek Redesiuk www.bannerflash.pl. Pliki do pobrania (WinRAR 240KB)

Ocena 2.6/5 (52.01%) (453 głosów)

Komentarze:



    Dodaj komentarz:


    Temat:
    Twój nick:
    Komentarz:
     

    Prosimy o kulturę wypowiedzi. Komentarze zawierające niecenzuralne zwroty, bądź obrażające inne osoby będą usuwane. Kod HTML w wypowiedziach jest niedozwolony. Wydawca nie odpowiada za treść komentarzy.