Hele scriptet er placeret på en keyframe i seperart layer. Tekstfeltet er placeret på et nedenstående layer. Den samlede movie hentes i (Level 1) med LoadMovie funktion fra "Mainstage" (0)
Prøv at smide linjen "loader.load("../../mytext/03.txt", 1);" op som linje 2. - og drop også det sidste ", 1" - du behøver ikke at loade ind i levels, da du jo henter teksten ind i tekstobjektet.
Er din sti til tekstfilen rigtig? Kan du ikke bare ligge den i samme mappe som din fla/swf?
Husk også at navngive dit tekstfelt (altså "mitTekstFelt").
Linjen "mitTekstFelt.text = this.txt;" kan du slette eller udkommentere, da du allerede har sat indholdet.
Linjen "mitTekstFelt._y = bottom_y - mitTekstFelt._height" behøver du heller ikke, hvis du allerede selv har lavet dit tekstfelt (som du forresten skal lave dynamisk) og placeret det der hvor det skal være....
Det oprindelige spørgsmål var dette: Er det ikke muligt i et dynamisk tekstfelt hvor tekst trækkes ind fra en .txt fil, at aligne dette tekst til bunden af selve tekstfeltet?
Vertical alignment: Bottom (!?!)
Jeg fatter intet af det.. nu ser mit forsøg sådan her ud:
Hedder 03.txt "03.TXT" på din harddisk? Stierne til tekstdokumenter osv. er case sensitive..... For fejlen ligger helt sikkert i kaldet af dokumentet, hvis du får en error opening url....
Som Barklund skriver i min reference, så må meningen vel være at denne load funktion skal kobles med align scriptet.. men lige hvordan? Det er IKKE grundet case sensitive i hvert fald.
Starter forfra? Nej.. jeg har slet ikke kunnet få loadet noget tekst med Barklunds load.funktion der specielt er skrevet til MX. Aner ikke hvorfor, men den viser bare ingen tekst i modsætning til dette script der fint virker (skrevet til Flash 4) http://www.virtual-fx.net/tutorials/html/loadtextfile.htm
Du skal bare fjerne slutparenteserne fra sætningerne sådan: navnetPaaDitTekstFelt.text = "Juhuuu, det virker"; navnetPaaDitTekstFelt.text = "Æv, bæv, buhh";
Hmm.. det er det sidste script jeg er interesseret i.. men jeg forstår det ikke. Når jeg sætter det som kode på en keyframe og tester det få jeg denne: Error opening URL "file:///D|/03.txt"
FLA, SWF og 03.txt fil ligger samme sted. Men hvad er det er i scriptet angiver hvad i tekstfilen der skal læses? I tekstfilen står "text" med lad os kalde den "mytext" for ikke at blande begreberne sammen.
Ok - der er umiddelbart to ret væsentlige fejl her...
For det første loader du ikke med det korrekte navn. Din tekst fil hedder 'text03.txt' men du loader kun '03.txt'.
Dvs. enten ændrer du navnet på tekstfilen til 03.txt eller også skal du ændre i scriptet til loader.load("text03.txt");
Det var grunden til du fik en error ved at loade.
Derudover har du fået blandet instance og variabel navnene sammen... I MX har tekstfelter både mulighed for at få variabelnavn og et instancenavn. Det første refererer til indholdet af tekstfeltet, det andet er navnet på selve objektet som er hele tekstfeltet.
Derfor skal du fjerne 'tekstFelt' fra variabel feltet i property inspectoren til instancename feltet (til venstre). Så virker alt godt :)
Jeg sender lige en mail med .fla der ser ud som jeg beskriver...
Hehe! ja! den er lidt lang og har været længe undervejs.. men alle er jo velkomne til at byde sig til med hjælp og guldkorn. Kig på den, hvis og når du får tid og lyst.
Tusind Tak for denne gang.. venter lige og ser om _K poster et svar også.
Der er lige en enkelt lille ting. Den fadebox funktion jeg har indlagt i FLA filen opfører sig lidt underligt. (Siden testes fra nettet) Når jeg klikker linket går der et stykke tid før teksten kommer frem, men som et glimt uden at fade. Men anden gang jeg klikker linket fader teksten fint nok frem - som om den kræves at skulle være preloadet.. eller?
Grunden til tekasten lige vises er nok fordi du ikke har embedded fonten i tekstfeltet. Hvis du gør det kan du også scripte dig ud af faden og helt droppe dit 'fade' lag sådan :
Så mister du selvføleglig lidt af idéen, da du bruger verdana i lille størrelse og nok helst vil bevare den cripsness der kommer af ikke at embedde fonten...
Alternativt kan du scripte dig ud af det med en pixelfont...
Hmm.. det virker super godt med dit fade script, men jeg kan på ingen måde undgå at teksten blir blured når jeg embedder fonten. Også selv om jeg har forsøgt med adskillige pixel fonte.
Jeg er klar over at tekst ikke må placeres på X/Y decimaler, men hvordan ved jeg nøjagtigt hvor teksen placeres i tekstfeltet når dette er dynamisk og scalere sig selv? Selve tekstfeltet er placeret på lige koordinator.
Jeg har lige forsøgt med en pixelfont, og det ser ud til at virke perfekt!? Selve tekstfeltet bliver jo ikke skaleret, det flyttes til ny _y position og tilpasser sig tekstens størrelse - det er det eneste...
Er du sikker på du bruger hele top-left pixel koordinater samt rigtig størrelse af pixelfonten?
Alternativt kan du sikres at det altid er 100% sikkert fastsat ved at udvidde lidt i onLoad funktionen således:
loader.onLoad = function() { tekstFelt.wordwrap = true; tekstFelt.autoSize = true; tekstFelt.text = this.mytext; tekstFelt._y = bottom_y-tekstFelt._height; var x = tekstFelt._x; var y = tekstFelt._y; tekstFelt._x = Math.round(x); tekstFelt._y = Math.round(y); };
Det burde sikre fonten bliver vist som den skal...
Hmm.. hvilken pixil font har du brugt? Jeg syntes nu stadig at det blurer - også med din script add-on. Det står ikke knivskarpt i hvert fald. Format options står alle sat til 0 - tekstFeltes placering er X:615 Y:10 (det er hvad du mener med top-left pixel koordinator?)
Teksten burde stå helt perfekt - det eneste jeg kan forestille mig er, at du ex bruger fontstørrelse 9 og fonten er beregnet til 8 eller lignende... andet kan jeg ikke sige - det ser smukt ud her!?
Prøv evt at lave et helt nyt tekstfelt og forsøg med fontstørrelserne.
Det var tekskFeltet der var problemet. Jeg lavede blot et nyt tekstFelt så stod teksten skarpt. Jeg kender godt til brugen af pixelfonts og deres faste pkt. str. Men Flash er for mærkeligt og skrøbeligt. Håber at en Flash 7 vil være i stand til at styrer skrift langt bedre.
Det handler mest om, at man istedet bør Uni-code sine eksterne tekstfelter. En mere besværlig men sikker løsning.
Kun når følgende to påstande er sande bør man ændre codePage:
" 1. Non-Unicode text is loaded into the Flash Player, from either an external text file or a server script. 2. The external text happens to be encoded with the same code page that is currently set on the end-user operating system running the Flash Player. "
Umiddelbart giver det positivt resultat, dog KUN hvis punkt 2 er helt 100 % sikker - ellers kan du få problemer. Det handler mest om hvem din målgruppe er og hvor seriøs en løsning du vil lave.
Hvis det er professionelt vil jeg nok foreslå at URL encode skidtet, men det kan du jo gøre med et enkelt tryk i et eller andet html program som ex Macromedia Homesite.
Det virker med Æ,Ø,Å ... men jeg kan ikke se @ eller + tegn. Hvorfor ik'?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.