Avatar billede Slettet bruger
04. juni 2007 - 17:06 Der er 11 kommentarer og
1 løsning

Usynlig tekst

Hej eksperter!

Jeg laver via en kode et tekstfelt og fylder med en skrivemaskineeffekt en streng ind i det. Desværre bliver teksten usynlig! Jeg har prøvet at trace den, og feltets text-attribut er indeholder det der skal stå.
Hvad kan forsage, at teksten ikke bliver synlig?
Koden er relativt lang, så jeg vil foretrække at holde spørgsmålet på et teoretisk plan.
Avatar billede Slettet bruger
04. juni 2007 - 17:07 #1
*og feltets text-attribut indeholder
Avatar billede docks Nybegynder
04. juni 2007 - 17:26 #2
textField.embedFonts = true;

prøv at embedde fonten?

Er det lavet med individueller movieClips for hvert enkelt bogstav eller bliver alle bogstave fyldt i samme tekstfelt?
Avatar billede Slettet bruger
04. juni 2007 - 17:28 #3
Alle fyldes i samme tekstfelt. Jeg prøver lige embed, men det virkede heller ikke før jeg angav et bestemt TextFormat...
Avatar billede Slettet bruger
04. juni 2007 - 17:32 #4
Koden der genererer tekstfeltet:

class MESSAGE {
   
    private var TARGET;
   
    public function MESSAGE(p_NAME:String, p_DEPTH:Number, p_X:Number, p_Y:Number, p_WIDTH:Number, p_HEIGHT:Number, p_TITLE:String, p_MAIN:String) {
        // Setup
        _root.createEmptyMovieClip(p_NAME, p_DEPTH);
        TARGET = _root[p_NAME];
        TARGET.ALPHA = new Number(0);
        TARGET.COUNTER = new Number(0);
        TARGET.TITLE = new String(p_TITLE);
        TARGET.MAIN = new String(p_MAIN);
        // Background
        TARGET.lineStyle(1, 0x00FF00);
        TARGET.beginFill(0x005500, 75);
        TARGET.moveTo(p_X, p_Y);
        TARGET.lineTo(p_X+p_WIDTH, p_Y);
        TARGET.lineTo(p_X+p_WIDTH, p_HEIGHT);
        TARGET.lineTo(p_X, p_HEIGHT);
        TARGET.endFill();
        // Title
        TARGET.createTextField("HEADLINE", 0, 10, 10, p_WIDTH-20, 20);
        TARGET.TITLE.selectable = false;
        // Main
        TARGET.createTextField("MAIN", 1, 30, 10, p_WIDTH-20, p_HEIGHT-40);
        TARGET.MAIN.selectable = false;
        // Start
        TARGET._alpha = TARGET.ALPHA;
        TARGET.TITLE.embedFonts = true;
        TARGET.TITLE.text = "";
        TARGET.MAIN.embedFonts = true;
        TARGET.MAIN.text = "";
        TARGET.onEnterFrame = function() {
            if (this.ALPHA < 100) {
                this._alpha = this.ALPHA += 5;
            }
            if (this.COUNTER < this.TITLE.length) {
                this.TITLE.text += this.TITLE.charAt(this.COUNTER);
                this.TITLE.setTextFormat(_root.TITLE);
            }
            if (this.COUNTER < this.MAIN.length) {
                this.MAIN.text += this.MAIN.charAt(this.COUNTER);
                this.TITLE.setTextFormat(_root.TITLE);
            }
            if (this.COUNTER < Math.max(this.TITLE.length, this.MAIN.length)) {
                this.COUNTER++;
            } else if (this.ALPHA == 100 && this.COUNTER == Math.max(this.TITLE.length, this.MAIN.length)) {
                delete this.onEnterFrame;
            }
        }
    }
   
    public function DELETE() {
        TARGET.onEnterFrame = function() {
            this._alpha = this.ALPHA -= 5;
            if (this.ALPHA == 0) {
                this.removeMovieClip();
            }
        }
    }
   
}


_root:

var TITLE:TextFormat = new TextFormat();
TITLE.bold = true;
TITLE.color = 0x00FF00;
TITLE.font = "Arial Black";
TITLE.size = 14;
var MAIN:TextFormat = new TextFormat();
MAIN.bold = true;
MAIN.color = 0x00FF00;
MAIN.font = "Arial";
MAIN.size = 12;
Avatar billede Slettet bruger
04. juni 2007 - 17:32 #5
Der fik du lige hele koden... Men den er godt nok lang :S
Avatar billede Slettet bruger
04. juni 2007 - 17:33 #6
Den får et tekstfelt til at fade frem, når en ny instans oprettes. Der er jo meget godt, men teksten bliver slet ikke skrevet..
Avatar billede Slettet bruger
06. juni 2007 - 09:00 #7
For pokker da, er der ingen, der kan hjælpe mig?
Avatar billede andersbro Nybegynder
06. juni 2007 - 11:50 #8
Som docks skrev, har du embedded fonten i dit bibliotek og givet den linkage navn? Ellers kan du ikke se nogen tekst.
Avatar billede Slettet bruger
07. juni 2007 - 17:08 #9
Hvorfor skal jeg dog embed Arial? :D
Avatar billede Slettet bruger
07. juni 2007 - 17:10 #10
Det plejer jeg da ikke at gøre. Desuden virker det heller ikke, når jeg ikke anvender noget specifikt TextFormat, men i stedet lader Flash bruge default.
Avatar billede Slettet bruger
09. juni 2007 - 15:19 #11
Hm. Intet svar?
Avatar billede Slettet bruger
10. juni 2007 - 20:12 #12
Nå.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester