6
votes

ActionScript: Comment faire pivoter un champ de texte?

Comment faites-vous pivoter un champ de texte dans ActionScript 3.0? Dès que je change la propriété de rotation du champ de texte, elle ne s'affiche pas.

Par exemple: P>

var txtFld:TextField = new TextField();
txtFld.x = 100;
txtFld.y = 100;
txtFld.width = 300;
txtFld.height = 300;
txtFld.text = "Test String";
txtFld.rotation = 90;
addChild(txtFld);


0 commentaires

6 Réponses :


8
votes

Pour voir du texte tourné, vous devez intégrer la police.


0 commentaires

4
votes

Quelque plus d'informations prenant en charge Christophe Herreman: ActionScript - Texte tournant


0 commentaires

5
votes

Une alternative est, pour copier le champ de texte dans un bitmapdata à l'aide de bitmapdata :: Dessinez puis créez un bitmap contenant le résultat, et Ajout de celui-ci à la liste d'affichage, au lieu de l'original Textfield ...

Cela a le grand avantage, que vous n'avez pas besoin d'intégrer la police, ce qui réduit les fichiers SWF ... OTOH, vous perdrez toute l'interactivité de la Textfield` et le SWF aura besoin de plus de RAM lors de la lecture. , mais ce dernier n'est pas trop important ...

Pour le texte à regarder lisse, définissez bitmap :: lissage à true ... aussi, il aide, si vous rendez votre image à une résolution plus élevée .. . Pseudo-anti-anti-aliasing, pour ainsi dire ... Lorsque vous dessinez le texte, passez une matrice à la matrice par facteur 2 et réduisez le bitmap par facteur 2 .. . De cette façon, ça va chercher mieux ...

salut

back2dos


0 commentaires

0
votes
var txtFld:TextField = new TextField();
txtFld.x = 100;
txtFld.y = 100;
txtFld.width = 300;
txtFld.height = 300;
txtFld.text = "Test String";

txtFld.embedFonts = true; // to embed the font ... now roation works

txtFld.rotation = 90;
addChild(txtFld);

0 commentaires

1
votes

Je voulais juste ajouter mon expérience à cette question. J'ai aussi voulu faire pivoter le texte.

Au début, j'ai intégré la police en utilisant uniquement ActionScript. P>

var textFormat:TextFormat = new TextFormat(font.fontName);

textField = new TextField();
textField.defaultTextFormat = textFormat; //must be before setting the text
textField.embedFonts = true; //needed to rotate fonts
textField.autoSize = TextFieldAutoSize.CENTER;
textField.antiAliasType = flash.text.AntiAliasType.ADVANCED;
textField.text = ("TESTING")
this.addChild(textField);


0 commentaires

1
votes

C'est ce qui a fonctionné pour moi.

dans CS5, je devais modifier un réglage dans la boîte de dialogue d'emboîtement de la police pour le fonctionnement.

Pour afficher la boîte de dialogue d'embarcation de la police, que ce soit sur le bouton Intégrez le bouton dans le panneau de caractères, ou double-cliquez sur un symbole de police dans la bibliothèque.

Ensuite, sélectionnez la police que vous souhaitez pouvoir faire pivoter et cliquez sur l'onglet ActionScript.

Enfin, vérifiez la case à cocher Exporter pour ActionScript. Laissez les valeurs par défaut et cliquez sur OK.

ci-dessous est le code que j'ai utilisé: xxx

si, puis appliquez la rotation sur ce champ comme, je suis toujours voir la police.


0 commentaires