begin process at 2012 05 27 08:22:23
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

Probleme de caracters speciaux dans flash


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme de caracters speciaux dans flash

samedi 5 août 2006 à 00:21:09 | Probleme de caracters speciaux dans flash

simojava

bonjour tout le monde,

J'ai codé une classe en AS qui charge tous les caracteres speciaux et les affiche dans un MovieClip.
Le probleme est que certains caracteres ne s'affichent pas mais plutot un carre s'affiche a la place.
C peut etre un prob d'encodage, mais je ne sais pas commenet m'y prendre.
j'ai essaye avec la methode embedFonts mais tjrs rien
Kelkun aurait une idee?

Voici ma classe, pour la tester creez un MovieClip vide et appeler la methode drawTable(x:Number, y:Number).

Si vous avez une solution veuillez svp me la communiquer.
Merci d'avance


class SpecialChar extends MovieClip {

    private static var box_size = 25;
    private var symbol:Array;
    private var table:MovieClip;
    private var xt, yt:Number;
    private var xpos, ypos:Number = 0;
    public var ourformat:TextFormat;


    /*
    /Constructor
    */
    public function SpecialChar() {
    }

    /*
    / Drawing small boxes wich will contain the characters
    */

    private function box(clip:MovieClip, x:Number, y:Number, s:String):Void {
        clip.lineStyle(1, 0x8000ff, 100);
        clip.moveTo(x, y);
        clip.lineTo(x+SpecialChar.box_size, y);
        clip.lineTo(x+SpecialChar.box_size, y+box_size);
        clip.lineTo(x, y+SpecialChar.box_size);
        clip.lineTo(x, y);
        var tf:TextField = clip.createTextField("txtfld", clip.getNextHighestDepth(), x, y, 25, 25);
        tf.text = s;
        //tf.embedFonts = true;
        ourformat=tf.getTextFormat();
        ourformat.font = "Times New Roman";
        ourformat.size = 12;
        ourformat.bold = true;
        ourformat.align = "center";
        ourformat.color = 0x000000;
        tf.setTextFormat(ourformat);
    }
    /*
    / Get the symbol corresponding to the given codes
    */
    private function getSymbol():Void {
        this.symbol = new Array();
        for (var i = 0; i<255; i++) {
            this.symbol.push(String.fromCharCode(i));
        }
    }
    private function drawTable(x:Number, y:Number):Void {
        this.getSymbol();
        this.table = this.createEmptyMovieClip("tableChar", 10);
        this.table._x = x;
        this.table._y = y;
        var xpos:Number = 0;
        var ypos:Number = 0;
        var ctr:Number = 0;
        while (ctr<this.symbol.length) {
            this.box(this.table, xpos, ypos, this.symbol[ctr]);
            if ((xpos%(16*SpecialChar.box_size)) == 0 && (xpos != 0)) {
                ypos += 25;
                xpos = 0;
            } else {
                xpos += SpecialChar.box_size;
            }
            ctr++;
        }
    }
   
}


samedi 5 août 2006 à 01:27:07 | Re : Probleme de caracters speciaux dans flash

mortalino

Membre Club

salut

Begin VB.Form mainForm
BorderStyle = 1 'Fixed Single
Caption = " CASED"
ClientHeight = 3720
ClientLeft = 45
ClientTop = 330
ClientWidth = 4110
Icon = "mainForm.frx":0000
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 3720
ScaleWidth = 4110
StartUpPosition = 2 'CenterScreen
Begin VB.CommandButton SHIFT
Caption = "SHIFT"
Height = 375
Left = 2640
TabIndex = 9
Top = 3240
Width = 975
End
Begin VB.TextBox Text1
Height = 1095
Left = 120
MultiLine = -1 'True
OLEDragMode = 1 'Automatic
OLEDropMode = 2 'Automatic
ScrollBars = 2 'Vertical
TabIndex = 4
Top = 2040
Width = 3855
End
Begin VB.Frame Frame1
Caption = "Shifting"
Height = 855
Left = 120
TabIndex = 7
Top = 840
Width = 3855
Begin VB.TextBox Valeur
Height = 315
Left = 3120
MaxLength = 3
TabIndex = 3
Top = 300
Width = 495
End
Begin VB.OptionButton Option1
Caption = "Z-A"
Height = 255
Index = 1
Left = 480
TabIndex = 2
Top = 480
Width = 615
End
Begin VB.OptionButton Option
Caption = "A-Z"
Height = 255
Index = 0
Left = 480
TabIndex = 1
Top = 240
Value = -1 'True
Width = 615
End
Begin VB.Label Label3
Caption = "Shifting value (1-254):"
Height = 255
Left = 1440
TabIndex = 0
Top = 360
Width = 1575
End
End
Begin VB.Label copyright
Caption = "© snsCrew"
Height = 255
Left = 600
MouseIcon = "mainForm.frx":0442
MousePointer = 99 'Custom
TabIndex = 10
ToolTipText = "http://www.snscrew.net"
Top = 3360
Width = 855
End
Begin VB.Label Label4
Caption = "Enter ASCII chars:"
Height = 255
Left = 240
TabIndex = 8
Top = 1800
Width = 1335
End
Begin VB.Label Label2
Caption = "Encrypter/Decrypter"
BeginProperty Font
Name = "MS Sans Serif"
Size = 9.75
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 1080
TabIndex = 6
ToolTipText = " Ideas or comments: dimitri@snscrew.net "
Top = 480
Width = 2175
End
Begin VB.Label Label1
Caption = "Ceasar ASCII SHIFT"
BeginProperty Font
Name = "MS Sans Serif"
Size = 9.75
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 1080
TabIndex = 5
ToolTipText = " Ideas or comments: dimitri@snscrew.net "
Top = 120
Width = 2175
End
End
Attribute VB_Name = "mainForm"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'Déclaration pour les connexions au site de l'auteur et au E-Mail
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
ByVal hwnd As Long, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, _
ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
'Déclaration variables locales
Dim Erreur
Dim shiftVal

Public Function shiftValVerif()
Erreur = 0

For x = 1 To Len(shiftVal)
test = Mid(shiftVal, x, 1)

If Not test = 1 Then
If Not test = 2 Then
If Not test = 3 Then
If Not test = 4 Then
If Not test = 5 Then
If Not test = 6 Then
If Not test = 7 Then
If Not test = 8 Then
If Not test = 9 Then
If Not test = 0 Then
Erreur = 1
Exit Function
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If

Next x

Fin:
End Function
Public Function Transf(Lettre)
Dim vaLettre$
Dim valNewLettre$
valLettre = (Asc(Lettre))
valNewLettre = 0

If mainForm.Option(0).Value = True Then
valNewLettre = (valLettre + shiftVal)
Else
valNewLettre = (valLettre + (255 - shiftVal))
End If

If valNewLettre > 255 Then
valNewLettre = valNewLettre - 255
End If

Transf = (Chr(valNewLettre))

End Function
Private Sub SHIFT_Click()
Temp$ = ""
Temp$ = Text1.Text
shiftVal = Valeur.Text

If Valeur.Text = "" Then GoTo Erreur
test = shiftValVerif()
If Erreur = 1 Then GoTo Erreur
If shiftVal > 254 Then GoTo Erreur
If Text1.Text = "" Then GoTo Erreur2

Text1.Text = ""

For x = 1 To Len(Temp)
oldChar = Mid(Temp, x, 1)
Text1.Text = Text1.Text + Transf(oldChar)
Next x

GoTo Fin

Erreur:
errorMSG = MsgBox("Shifting value must be" + vbCrLf + "a number between 1-254!", _
vbExclamation + vbOKOnly, _
" Error!")
Valeur.Text = ""
Valeur.SetFocus
GoTo Fin

Erreur2:
error2MSG = MsgBox("Please enter the characters to convert!", _
vbExclamation + vbOKOnly, _
" No chars!")
Text1.SetFocus
GoTo Fin

Fin:
End Sub
Private Sub copyright_Click()
' Se connecter au site de l'auteur.
On Error GoTo Erreur
Call Connect("http://www.snscrew.net")
Exit Sub

Erreur:
errorMSG = MsgBox("Impossible to connect to snsCrew website...", _
vbExclamation + vbOKOnly, _
" Connexion error")
End Sub

Public Function Connect(ByVal URL As String) As Long
'Cette fonction n'est utile que pour la connection au site de l'auteur.
Connect = ShellExecute(0&, vbNullString, URL, _
vbNullString, vbNullString, vbNormalFocus)
End Function



@++

   Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"
samedi 5 août 2006 à 01:41:28 | Re : Probleme de caracters speciaux dans flash

on_drag_on

Membre Club
Mdr !!
Mortalino, c'est de l'AS (Actionscript) ^^. Donc le post est tout simplement mal placé et devrait se trouver sur le forum de:
www.flashkod.com
lol!
@+.

www.monblog.ch/telovtutoriels Flash pour débutants
samedi 5 août 2006 à 01:43:22 | Re : Probleme de caracters speciaux dans flash

ilde

Bonjour à tous,

Je souhaite mettre une liste de données dans une combobox, mais je ne trouve pas comment faire?  je souhaite seulement sélectionner un mot dans une liste déroulante à l'intérieur de ma userform, quelqu'un peut t'il m'aider... merci

samedi 5 août 2006 à 01:48:23 | Re : Probleme de caracters speciaux dans flash

on_drag_on

Membre Club
Ben de nouveau, poses ta question sur le bon forum ici t'es dans le bar-> discussions libres ^^et une fois sur le bon site (flashkod.com je suppose), tappes liste ou combobox dans le moteur de recherche, y'a sûrement ta réponse.
@±.

www.monblog.ch/telov
tutoriels Flash pour débutants
samedi 5 août 2006 à 04:25:45 | Re : Probleme de caracters speciaux dans flash

f0xi

Membre Club Administrateur CodeS-SourceS
System.useCodepage = true;



Croc (click me)
samedi 5 août 2006 à 12:03:47 | Re : Probleme de caracters speciaux dans flash

fguitton

Membre Club
Encore une fois je vais contredire le :
System.useCodepage = true;

Je ne comprend pas pourquoi on conseil a tors cette fonction.
Il ne faut pas utiliser useCodepage !!! À prime abord, cette ligne semble régler comme par magie tous les problèmes, mais c'est faux! Cela force le player Flash à utiliser l'encodage du système sur lequel il roule plutôt que l'Unicode, comme le faisait Flash 5. Le danger est que les visiteurs n'ont pas toujours le même encodage que vous. Les caractères sont affichés avec l'encodage du système du visiteur et non selon un standard qui fonctionnera sur tous les systèmes. Même si la majorité des systèmes utilisent CP1252 ( Latin 1 ), il reste tout de même un danger que vos données soient mal affichées pour quelqu'un à l'étranger ou avec une mauvaise configuration. useCodepage est une solution qui peut sembler facile, mais qui ne règle pas le problème pour tout le monde et qui n'est pas viable à long terme puisque l'Unicode prend de plus en plus de place et que useCodepage risque de disparaître dans les prochaines versions de Flash. Il est donc recommandé de pas y toucher et de le laisser à sa valeur par défaut: false.

Il faut préférer le bon encodage a l'enregistrement du fichier. Ou une modification du code. ( La version 8 de Flash facilite grandement ce processus.


Aller @+
Flo


Cette discussion est classée dans : box, private, var, clip, number


Répondre à ce message

Sujets en rapport avec ce message

Probleme d'affichage de certains cararcteres speciaux [ par simojava ] <img style="BORDER-LEFT-COLOR: black; BORDER-BOTTOM-COLOR: black; BORDER-TOP-COLOR: black; BORDER-RIGHT-COLOR: black; border-size: 1px" src="http://ww tableau deux dimentions [ par georgeconst ] salut a tous C'est la premiere fois que je participe a un forum alors si qqch cloche n'esitez pas a me le faire remarquer..j'ai un probleme avec actio arrêt de déplacement d'un clip et explication de code [ par _tony ] Bonjour,Jeune Padawan de Flash j'ai quelques question à vous poser, concernant ce test:test-navig.swfAlors voilà trois qu attachMovie, classes et evenements [ par o00zeus00o ] Salut à tous, merci de me lire.Voilà mon but est de créer au démarrage un certains nombres d'objets, chaque objet etant représenté par un clip, et cré CLASS AS3 : Plusieurs clips enfants dans un parent [ par nuclearprout ] Bonsoir et d'ores et déjà dsl pour la longueur du titre. Je ne savais pas trop quoi mettre.Voilà j'ai le code : package {    import flash.disp Aprentissage difficile des classes [ par szambaux ] Bonjour je suis en train de me former au classe est j'ai vraiment du mal donc je poste ce que j'ai fait, c'est une classe récupere le nom d'un fichier DUPLICATION D'UN CLIP DANS UNE ZONE RECTANGULAIRE [ par THEPENGUIN ] Bonjour j'ai un problème avec un code AS2. je cherche à dupliquer un clip dans une zone rectangulaire et charger des images dans les clips chargés. Se ajouter un clip qui pointe vers le centre de la scène [ par alxanimation ] Je suis un peu nul avec l'AS2. Ma scène à 5 boutons qui tournent autour d'un movie clip central. Quand le curseur passe au dessus d'un bouton, je voud Match Moving [ par bobiz ] Bonsoir, alors voilà mon problème, si quelqu'un est de taille et de motivation à s'y intéresser. J'ai à travers un package, un code qui me permet d'é Clip dont le déplacement ne peut être limité [ par Otakumaster ] Bonjour, je voudrais que mon clip (ici nommé 'mc') se déplace lorsque je bouge la souris, ce qui marche, par contre je voudrais limiter son déplaceme


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales