Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Formattazione textbox.

  1. #1

    Formattazione textbox.

    Saluti a tutti! Premetto che ho provato a cercare nel forum con le keywords "Formattazione textbox" e non è venuto fuori nulla, quindi ho aperto un post.
    Ho una textbox dinamica in cui carico dall'esterno un file .txt che contiene, appunto, il testo da importare. Funziona bene, il testo lo importa egregiamente, ma... il problema sorge quando ho bisogno di formattare il testo: mi servirebbe cambiare colore, grassettare e corsivare (si può dire? mi fa ridere... ) solo alcune porzioni di testo. Come posso fare? C'è qualche tag specifico?

    Grazie mille a tutti!

    Nino.
    Qui c'è un aeroplano che si è schiantato control le montagne! -Big Lebowski-

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    195
    Ciao Big Chill,

    Flash supporta diversi tag dell'HTML, a patto che l'area di testo sia impostata per rendere il testo in quella maniera (è un piccolo pulsante con le parentesi angolari <> nel Pannello delle Proprietà).

    Prova a disegnare un'area di testo e a darle un nome istanza, ad esempio mioTesto, assicurati di aver attivato l'opzione per il testo in HTML e poi scrivi questo nel fotogramma:

    Codice PHP:
    mioTesto.htmlText "Ciao, ecco una parola in [b]grassetto[/b]." 
    Vedrai che il tag [B] è supportato, ma lo sono anche altri tag, cerca nella guida.

  3. #3
    Perfetto, grazie. Adesso però, quando carico il file, le lettere accentate e gli apostrofi escono come quadratini, credo perchè non ho incorporato nessun carattere. Come si fa? O meglio, quali dovrei selezionare tra quelli presenti nella lista di "Incorpora..." ? C'è qualche header particolare da inserire nel file per garantirne la codifica corretta? Grazie!

    Nino.
    Qui c'è un aeroplano che si è schiantato control le montagne! -Big Lebowski-

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    195
    Dipende dalla codifica del file di testo che stai caricando... Comunque ho preparato una soluzione e te la posto...

    Ho questa funzione che mi carica un file di testo esterno e mi riempie una textarea a mia scelta:
    Codice PHP:
    function loadText(fileNametextArea) {
    System.useCodepage true;
    var 
    myText:XML = new XML();
    myText.onLoad = function() {
    textArea.htmlText myText.toString();
    };
    myText.load(fileName);

    Poi ho uno o più pulsanti che mi richiamano la funzione in questo modo:
    Codice PHP:
    on (press) {
    loadText(“file.txt“_root.myTextarea)

    Questo presuppone che esista un'area di testo con nome istanza myTextarea posizionata sulla _root.
    Ho usato questo sistema perché così con la stessa funzione posso caricare il testo dove voglio, lo decido direttamente dallo script del pulsante.
    Inoltre probabilmente tu usi LoadVars mentre io ho usato XML, preferisco così perchè con XML evito molti problemi, ma non preoccuparti, i file di testo che carichi non devono essere necessariamente dei fogli XML ma possono essere dei file di testo qualunque.

  5. #5
    Perfetto, va alla grande! Ho solo applicato lo script per adattarlo al movieclip, così carica il file insieme al movieclip stesso.

    Grazie mille!
    Qui c'è un aeroplano che si è schiantato control le montagne! -Big Lebowski-

  6. #6
    Uhm... neanche a dirlo!

    Allora... tutto il procedimento è stato fatto in un filmato il quale funziona a perfezione. Esporto il filmato, lo provo e funziona.
    Adesso, faccio caricare questo filmato in un altro filmato (in un movieclip). Carica il file .swf (lo so perché si vedono le barre dello scroll) ma non si vede il testo. Cosa può essere? Premetto che i file sono tutti nella stessa directory.

    Grazie,
    Nino!
    Qui c'è un aeroplano che si è schiantato control le montagne! -Big Lebowski-

  7. #7
    Risolto! Dovevo solo applicare this. invece di _root. in quanto sto lavorando direttamente sull'oggetto... che cretino!

    Adesso però mi viene un dubbio: come far entrare in dissolvenza il testo? Non è sufficiente far entrare in dissolvenza il movieclip, perchè quello entra già in dissolvenza, solo che il testo appare 'di colpo' non appena caricato. C'è un modo per dissolvere?
    Qui c'è un aeroplano che si è schiantato control le montagne! -Big Lebowski-

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    195
    Ciao Big Chill,

    Se l'unica cosa che non si vede è il testo i motivi possono essere tanti...

    Primo: Il testo potrebbe non essere stato caricato per un problema legato ai percorsi.
    Quando provi il filmato scegli dal menu Debug la voce Elenco Variabili, dovresti trovare tra tutte le variabili quella che contiene il testo caricato, ha più o meno questo aspetto:
    Codice PHP:
    htmlText "<TEXTFORMAT LEADING=\"2\">... et cetera et cetera.... 
    Ti basta controllare che esista per eliminare questa tra le possibili cause.

    Secondo: Il testo è caricato ma l'area di testo non è stata riempita.
    Verifica di non aver usato riferimenti assoluti, come ad esempio _root.myTextArea. Questo tipo di riferimento trova la tua textarea quando il filmato è da solo, ma non la trova più se il filmato è contenuto dentro ad un'altra linea temporale (infatti la _root è rappresentata dalla linea temporale che fa da contenitore e non esiste più una _root nell'SWF caricato).
    Per verificare questo devi inserire due righe dentro la funzione, in questo modo:
    Codice PHP:
    function loadText(fileNametextArea) {
        
    System.useCodepage true;
        var 
    myText:XML = new XML();
        
    myText.onLoad = function() {
            
    _lockroot true///Questa linea-------------------
            
    _root.textArea.htmlText myText.toString();
            
    _lockroot false///Questa linea------------------
        
    };
        
    myText.load(fileName);

    _lockroot dice a Flash qualcosa del tipo anche se sto usando un riferimento assoluto ti prego di considerare la mia linea temporale come se fosse la _root, non importa se il filmato è caricato dentro ad un altro, dopo aver fatto quello che dovevamo fare possiamo restituire la _root al filmato principale (altrimenti ci potrebbero essere interferenze con altri eventuali script).

    Terzo: Il testo è caricato e si trova dentro alla casella di testo, ma Flash non è in grado di mostrartelo.
    Le caselle di testo dinamico hanno dei problemi con la resa dei caratteri, questi problemi si verificano se:
    • Stai usando una maschera per la casella di testo o stai usando la casella stessa come maschera (o se la casella di testo è contenuta in un altro oggetto che è mascherato o fa da maschera).
    • Stai usando un effetto avanzato sulla casella di testo (o se hai applicato un effetto al MovieClip o al Pulsante che contiene la casella di testo).
    • Hai ruotato o deformato la casella di testo (o l'oggetto che la contiene).

    Per vedere se il tuo problema è questo puoi provare ad incorporare i caratteri.
    Attenzione! Incorporare i caratteri fa crescere notevolmente il peso del tuo SWF, quindi è una cosa che va fatta con parsimonia.
    Solo per fare una prova scrivi una parola nella casella di testo e poi dal Pannello Proprietà li incorpori tutti.
    Se stai usando del testo normale, in corsivo e in grassetto ricorda che i caratteri da incorporare sono tre, infatti Flash ha bisogno di tutti i glifi nelle varie versioni, altrimenti non visualizzerà le parole. Per incorporare tutti i glifi in tutte le varianti devi scrivere nella casella di testo almeno un carattere per tipo, ad esempio:

    aaaa
    ovvero una lettera normale, una lettera in grassetto, una lettera in corsivo e una lettera in grassetto e corsivo.

    Poi puoi incorporare i caratteri.

    Fammi sapere come va a finire...

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    195
    Ah, hai risolto...

    per la dissolvenza l'unica soluzione è incorporare i caratteri, _alpha è una delle Proprietà che un campo di testo non può gestire se non ha incorporato i caratteri.
    Non serve che tu faccia altro, se il movieclip che contiene l'area di testo ha già la dissolvenza incorporando i caratteri il testo avrà lo stesso effetto del suo contenitore.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.