Pixeliser une lettre dans une image et la recréer

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Pixeliser une lettre dans une image et la recréer

Message par Kwai chang caine »

Bonjour à tous

"Trulouloulou, bombombom, Trulouloulou, bombombom, Ici LYON, la plaie du forum parle aux programmeurs, les bananes sont cuites, je répete, les bananes sont cuites, Trulouloulou, bombombom,Trulouloulou, bombombom" :D

Toujours dans mon histoire de réduction de clef par une base.
Je me suis lancé dans un challenge, et cette fois ça risque de me couter gros :cry:
http://www.purebasic.fr/french/viewtopi ... 8956#78956
En effet, il y a une banane dédicacée en jeu, et je ne peux me permettre de perdre, je n'en ai pas les "moyens"" :D

Donc voila les choses serieuses et l'enjeu annoncé, je vais vous exposer mon immense probleme :

Je voudrais trouver un code qui prend pixel à pixel une image qui en fait sera un caractere, pour la scanner et me faire un fichier de 0 et 1, ou encore mieux de 0 et la couleur du pixel et sa position dans la matrice de l'image.

http://purebasic.myftp.org/files/413/A.bmp
http://purebasic.myftp.org/files/413/A_blanc.bmp
http://purebasic.myftp.org/files/413/A.png

Ce fichier servira à recréer ce caractere dans un gadget image ou autre
J'ai choisi volontairement un fond foncé, car le code de MISHA a la facheuse tendance de ne pas trop reconnaitre les bords, et si je met mon A sur un fond blanc, bah quand la fenetre est skinée, on voit les bords blancs, quand on déplace le skin sur un fond noir :?
J'ai mis un A avec un fond blanc, ce sera peut etre plus facile pour un autre code. :wink:
J'ai mis aussi le A.png qu'il faut enregistrer sous c:\ pour le code qui est généré par le générateur de misha et que voici (Sortie par escape):

Code : Tout sélectionner

UsePNGImageDecoder()

Procedure OpenMaskedWindow_A(WinID, x, y, Title.s, imID)

 HwndA = OpenWindow(winID, GetSystemMetrics_(#SM_CXSCREEN), y, 56, 54, Title, #WS_POPUP)
 Memhandle = GlobalAlloc_(#GMEM_MOVEABLE,824)
 *Mem = GlobalLock_(Memhandle)
 UnpackMemory(?A_Mask, *Mem)
 Region = ExtCreateRegion_(0,816, *Mem)
 SetWindowRgn_(HwndA, Region, #True)
 Pic = CatchImage(imID,?A)
 Brush = CreatePatternBrush_(Pic)
 SetClassLong_(HwndA, #GCL_HBRBACKGROUND, Brush)
 ResizeWindow(WinID, x, y, #PB_Ignore, #PB_Ignore)
 GlobalUnlock_(Memhandle)
 GlobalFree_(Memhandle)
 DeleteObject_(Region)
 ProcedureReturn HwndA

 DataSection

  A:
  ;***********

  IncludeBinary "c:\A.png"

  A_Mask:
  ;***********

  Data.l $330434A ,$18820000,$50110000,$46C2000 ,$83424204,$62405290,$3A693008,$A28A46B9,$82208420,$4E024A65
  Data.l $2C78428B,$44082A12,$C0454C30,$7A5251A9,$85204494,$5389E9C0,$3AC29C04,$74B34925,$526151A ,$8540441 
  Data.l $CC1194F3,$28C489D2,$70214DA5,$4536149A,$F3084AB0,$CC08C194,$994F5489,$4A9C936C,$29A6B085,$F6107582
  Data.l $A518ACE9,$5033A953,$42A6229A,$6088A818,$540C4E93,$3085AB12,$9D361953,$21526C7 ,$6E29A1C7,$27503A73
  Data.l $4EA130A0,$5882B085,$6381A3C6,$42C79E51,$853E0AA1,$4558CB0 ,$4830948B,$A3A72C99,$A4AA4554,$558428F8
  Data.l $E8F5849C,$A6502AA4,$AAD0F1E ,$82292381,$EA563A3D,$13A346A4,$946810AB,$610A9822,$35824EA6,$74A9B13A
  Data.l $AD4E2936,$8A4D9842,$76108D60,$A3589D2A,$674EAB53,$332B2293,$C32AAB5B,$6B3E169C,$8510C75 ,$49307573
  Data.l $C2118C11,$2000A550

 EndDataSection

EndProcedure

OpenMaskedWindow_A(WinID, 100, 100, "A", imID)
Repeat : Evenement = WaitWindowEvent():Delay(1) :Until GetAsyncKeyState_(#VK_ESCAPE)
Alors j'ai ressorti ce super code de MISHA qui skin une fenetre, ça marche pour mon caractere, mais c'est peut etre un peu une massette pour tuer une fourmi. 8O
http://www.purebasic.fr/english/viewtop ... 8284#48284

En fait c'est grace et uniquement grace à ce code que vous avez le "plaisir" de me supporter tous les jours que dieux fait dans ce forum.
En effet c'est quand, j'ai vu ce que pouvais faire pure avec une fenetre que j'ai décidé d'opter pour ce language.
Pour ceux que j'enerve et qui voudrais se venger, j'ai l'adresse de MISHA :lol:

Alors je voudrais savoir si, je suis dans la bonne direction, si y'a beaucoup plus simple, ou si il existe un code déjà tout fait quelque part dans vos tiroir ou un lien.

Surtout ne dites rien à DJES, il doit pas savoir que vous m'aidez :lol:
En ce moment, il est un peu ronchon :cry:
Peut etre une indigestion de fruits exotique long et jaune :D
Je me fait du soucis pour son moral :D

Bref, Chhhuuu uuuut !!!c'est un secret entre vous et moi :lol:

Merci mille fois
Je vous remercie beaucoup de votre patience :oops:
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

J'ai lu ton post mais je ne sais pas trop où tu veux en venir, bon tu as fait une base pour réduire le nombre de caractères, ensuite tu cherches à skinner un caractère, c'est là où je te suis plus.

Tout ça pour faire quoi exactement.
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

Ou la la c'est tout un roman :roll:
Et c'est la réunion de plusieurs posts racontant l'histoire de KCC au pays de la clef la plus petite possible.

Je vais essayer de faire court, car je vais encore me faire engueuler :?
C'est pas ma faute si j'aime que les choses soit claires :oops:
Mais les gens y lisent que la moitié et apres y disent que je suis pas clair :?

Alors voila, j'ai une clef qui contient des chiffres et des lettres.
Je la convertie en chiffre de la table ASCII
J'ai donc plus que des chiffres.
Cet énorme chiffre, qui est evidemment en base10, je le converti en base100000 ou plus si possible.
J'ai constaté que plus la base est grosse plus le chiffre "basé" est petit :
http://www.purebasic.fr/french/viewtopi ... 8914#78914

Donc fort de cette constation, je "maidit", il faut que je créé une gigantesque base de 1000000 de caracteres voir plus, si c'est possible.
Hors nous n'avons à notre disposition que 255 code ANSI et un peu plus pour l'UNICODE, mais qui ne suffit pas à mon bonheur.

Alors "jemairedit" qu'a cela ne tienne, je vais utiliser la matrice d'un caractere pour creer cette base.
En creant des caracteres qui n'existent pas comme le double A par exemple
http://www.purebasic.fr/french/viewtopi ... 8857#78857
Ou, un peu comme le code QR que m'a gentillement présenté CASE
http://www.purebasic.fr/french/viewtopi ... 8817#78817
Les chinois y arrivent bien eux a reduire une phrase dans un caractere
http://www.purebasic.fr/french/viewtopi ... 8889#78889

La matrice etant apparement pour une police font de 24*13
http://www.purebasic.fr/french/viewtopi ... 8915#78915
ça aurait pu gazer.

Mais je ne suis pas assez callé, et je n'arriverais pas à creer une police tout seul, pour qu'un bloc-note puisse la lire et l'écrire.
Y'a les probleme de true type vectoriel etc.
Et en plus les editeurs de police true type, y'en a presque pas en gratuit :?
Puis, j'ai peur qu'il soit limité, et qu'il ne sache pas ecrire 100000000 de caracteres differents avec la meme police.

Voyant la galere arriver, je "maireredit" , ce que je vais faire, c'est créer mon miens de bloc-note à moi tout seul personnel privé :D
Oui mais, depuis 3 ans en purebasic, et 6 jours pour ce code que je galere, je suis toujours aussi nul, et la je fait appel au graphisme, ce qui veut dire que j'ai plus de chance de réussir à apprendre le russe à une huitre, que d'éssayer de m'en sortir tout seul :cry:

Donc voici mon cri de désespoir, je voudrais créer les caracteres avec un editeur de dessin, les sortir en BMP ou autre (j'suis pas raciste)
Puis les scanner et créer un fichier txt contenant les coordonnées x,y et couleur de chacun des pixels allumés (pas la peine de marquer les eteints, ça fera un fichier moins grand).
Comme ça mon editeur de texte pourra les recréer par exemple en faisant une combinaison de touche A + 2 = double A, A + 3 = TripleA

Et voila le tour est joué, j'aurais bien des millions de caracteres disponible donc une base qui passera de 62 http://www.purebasic.fr/french/viewtopi ... 8835#78835
à 10000000 :D

Nadine boudin "j'ai encore pas arrivé" à faire court, mais bon je trouve mon idée grandiose, bien sur elle est de moi :D
Et j'ai un grand méchant loup, qui ne l'aime pas et qui fait rien qu'a m'embeter :cry:
Il veux me manger avec des bananes :cry:
http://www.purebasic.fr/french/viewtopi ... 8908#78908
:lol:
Dernière modification par Kwai chang caine le sam. 09/févr./2008 12:55, modifié 3 fois.
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

Un truc de ce genre ?

ca te permet de faire une fenêtre de la forme que tu veux en fonction d'une image

meme je vois pas le rapport avec les caracteres ...

Code : Tout sélectionner

; Auteur : Le Soldat Inconnu
; Version de PB : 4
;
; Explication du programme :
; Pour dessiner une fenêtre avec une forme dépendant d'une image


Procedure SkinWin(Window, Image)
  Protected x, y, Region_Temp, Region_Totale, Largeur, Hauteur
  ; On applique le skin à la fenêtre
  Largeur = ImageWidth(Image) - 1
  Hauteur = ImageHeight(Image) - 1
  Region_Totale = CreateRectRgn_(0, 0, Largeur + 1, Hauteur + 1) ; on crée une region de la taille de la fenêtre
  StartDrawing(ImageOutput(Image))
    For X1 = 0 To Largeur
      For Y1 = 0 To Hauteur
        If Point(X1, Y1) = $FF00FF
          Y2 = Y1
          While X2 < Largeur And Point(X1, Y2 + 1) = $FF00FF
            Y2 + 1
          Wend
          Region_Temp = CreateRectRgn_(X1, Y1, X1 + 1, Y2 + 1) ; On retire le point de la region
          CombineRgn_(Region_Totale, Region_Totale, Region_Temp, #RGN_DIFF)
          DeleteObject_(Region_Temp)
          Y1 = Y2
        EndIf
      Next
    Next
  StopDrawing()
  
  SetWindowRgn_(WindowID(Window), Region_Totale, 1) ; On applique la region
  DeleteObject_(Region_Totale) ; On efface la region
EndProcedure


; Création de la fenêtre et de la GadgetList
If OpenWindow(0, 0, 0, 300, 300, "Skin", #PB_Window_BorderLess | #PB_Window_ScreenCentered) = 0 Or CreateGadgetList(WindowID(0)) = 0
  End
EndIf
; La fenêtre doit obligatoirement être avec le style #PB_Window_BorderLess

SetWindowColor(0, RGB(255, 0, 0))


; On crée une image qui va servir de skin (elle doit avoir la taille de la fenêtre)
CreateImage(0, 300, 300)
StartDrawing(ImageOutput(0))
  ; La couleur mauve $FF00FF ou RGB(255, 0, 255) représente la partie transparente de la fenêtre
  Box(250, 0, 50, 30, $FF00FF)
  Circle(200, 200, 50, $FF00FF)
  Circle(250, 230, 50, $FF00FF)
  Ellipse(50, 120, 40, 20, $FF00FF)
  LineXY(50, 50, 250, 100, $FF00FF)
StopDrawing()


Temps = ElapsedMilliseconds()

; On applique le skin à la fenêtre
; SkinWin(0, 0)
SkinWindow(WindowID(0), ImageID(0))

Temps = ElapsedMilliseconds() - Temps


; On place un bouton pour quitter
ButtonGadget(0, 0, 0, 100, 25, "Quitter")
; On affichage le temps nécesssaire pour créer le masque
TextGadget(#PB_Any, 0, 25, 100, 15, Str(Temps) + " ms")

Repeat
  Event = WaitWindowEvent()
  
  If Event = #WM_LBUTTONDOWN
    SendMessage_(WindowID(0), #WM_NCLBUTTONDOWN, #HTCAPTION, 0)
  EndIf
  
  If Event = #PB_Event_Gadget
    Select EventGadget() ; boutons, zone de texte, ...
      Case 0 ; On quitte le programme
        Event = #PB_Event_CloseWindow
    EndSelect
  EndIf
  
Until Event = #PB_Event_CloseWindow

End

Ce que tu veux, c'est affiché une image dans un ImageGadget ? mais une image sans fond, juste le caractère ?
J'ai décrypter ou pas ?
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Gillou
Messages : 373
Inscription : sam. 28/août/2004 17:35
Localisation : Bretagne, 22
Contact :

Message par Gillou »

Je t'ai fait ça en rapide pour lire une image et la transformer en code.

Perso, j'ai à peu prêt compris où tu voulais aller, mais par contre c'est le chemin que tu empreintes, qui m'est incompréhensible ;) Je dois être débile...

Bref voila le code, tu me dis si c'est ça que tu veux


Procedure.s GetImageCode(Image)
    W = ImageWidth (Image)
    H = ImageHeight (Image)
    LenW = Len ( Str (W))
    LenH = Len ( Str (H))
    code.s = Str (LenW)+ Str (LenH)+ Str (W)+ Str (H)
     StartDrawing ( ImageOutput (Image))
     For Y=0 To H
         For X = 0 To W
            Color = Point (X, Y)
             If Color = #Black
                code + "1"
             Else
                code + "0"
             EndIf
         Next
     Next
     StopDrawing ()
     ProcedureReturn code
EndProcedure

Procedure GetImageFromCode(code.s)
    LenW = Val ( Left (code, 1))
    LenH = Val ( Mid (code, 2, 1))
    W = Val ( Mid (code, 3, LenW))
    H = Val ( Mid (code, 3+LenW, LenH))
    start = 3+LenW+LenH
    Image = CreateImage ( #PB_Any , W, H)
     If IsImage (Image)
         StartDrawing ( ImageOutput (Image))
        pos = 0
         For Y=0 To H
             For X = 0 To W
                pos + 1
                pt.s = Mid (code, start+pos, 1)
                 If pt = "1"
                     Plot (X, Y, #Black )
                 Else
                     Plot (X, Y, #White )
                 EndIf
             Next
         Next
         StopDrawing ()
         ProcedureReturn Image
     EndIf
EndProcedure

ImageDir.s = "C:\"

Image = LoadImage ( #PB_Any , ImageDir + "A.bmp" )
If IsImage (Image)
    code.s = GetImageCode(Image)
     FreeImage (Image)
     If Len (code) > 0
        Image = GetImageFromCode(code)
         If IsImage (Image)
             SaveImage (Image, ImageDir + "A2.bmp" )
             FreeImage (Image)
         EndIf
     EndIf
EndIf
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

Comme ca, je dessine une fenêtre qui repésente l'alphabet

Code : Tout sélectionner

; Auteur : Le Soldat Inconnu
; Version de PB : 4
;
; Explication du programme :
; Pour dessiner une fenêtre avec une forme dépendant d'une image


Procedure SkinWin(Window, Image)
  Protected x, y, Region_Temp, Region_Totale, Largeur, Hauteur
  ; On applique le skin à la fenêtre
  Largeur = ImageWidth(Image) - 1
  Hauteur = ImageHeight(Image) - 1
  Region_Totale = CreateRectRgn_(0, 0, Largeur + 1, Hauteur + 1) ; on crée une region de la taille de la fenêtre
  StartDrawing(ImageOutput(Image))
    For X1 = 0 To Largeur
      For Y1 = 0 To Hauteur
        If Point(X1, Y1) = $FF00FF
          Y2 = Y1
          While X2 < Largeur And Point(X1, Y2 + 1) = $FF00FF
            Y2 + 1
          Wend
          Region_Temp = CreateRectRgn_(X1, Y1, X1 + 1, Y2 + 1) ; On retire le point de la region
          CombineRgn_(Region_Totale, Region_Totale, Region_Temp, #RGN_DIFF)
          DeleteObject_(Region_Temp)
          Y1 = Y2
        EndIf
      Next
    Next
  StopDrawing()
  
  SetWindowRgn_(WindowID(Window), Region_Totale, 1) ; On applique la region
  DeleteObject_(Region_Totale) ; On efface la region
EndProcedure


; Création de la fenêtre et de la GadgetList
If OpenWindow(0, 0, 0, 300, 300, "Skin", #PB_Window_BorderLess | #PB_Window_ScreenCentered | #WS_SYSMENU) = 0 Or CreateGadgetList(WindowID(0)) = 0
  End
EndIf
; La fenêtre doit obligatoirement être avec le style #PB_Window_BorderLess

SetWindowColor(0, 0)


; On crée une image qui va servir de skin (elle doit avoir la taille de la fenêtre)
CreateImage(0, 300, 300)
StartDrawing(ImageOutput(0))
  ; La couleur mauve $FF00FF ou RGB(255, 0, 255) représente la partie transparente de la fenêtre
  Box(0, 0, 300, 300, $FF00FF)
  DrawText(0, 0, "ABCDEFGHIJKLMNOPQRSTUVWXYZ", 0, $FF00FF)
StopDrawing()


; On applique le skin à la fenêtre
; SkinWin(0, 0)
SkinWindow(WindowID(0), ImageID(0))


Repeat
  Event = WaitWindowEvent()
  
  If Event = #WM_LBUTTONDOWN
    SendMessage_(WindowID(0), #WM_NCLBUTTONDOWN, #HTCAPTION, 0)
  EndIf
  
Until Event = #PB_Event_CloseWindow

End
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

Ouuuaaaah y neige des codes !! 8O

Merci beaucoup les copains
Je vous aime :D

Je chausse mes skis et je regarde ça tout de suite :D
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

Perso, j'ai à peu prêt compris où tu voulais aller, mais par contre c'est le chemin que tu empreintes, qui m'est incompréhensible Je dois être débile...
Au debut, j'ai cru que tout le monde etait bete, car ça doit faire au moins 5 fois que réexplique tout ce que j'ai dans le foutoir qui me sert de tete :?
Sans parler que j'ai éssayé de baragouiner ça en français d'en face, alors la.......

Puis connaissant vos capacité, un doute s'est installé :roll:

Et je viens de me rendre compte, qu'apparement tu as cerné le bleme.
Ma méthode est une méthode de saucisson.

Si ça se trouve, les matheux vont me sortir un code en 4 ligne réduisant ma clef de 100 caracteres à 2, avec un exponentiel de truc ou une courbe de schmurtz :?
Mais bon moi, j'suis sorti de la maternelle avec mon diplome en poche et faut que je fasse avec.
Et j'espere prouver au grand mechant loup, que ma methode elle est surement tordue, mais au moins elle marche, peut etre qu'elle est tellement tordue que je serais le seul a l'avoir inventé. :D

Bon arretons de rever, au boulot :?

Ton code est exactement ce que je voulais :D
Je vais y rajouter la couleur car comme me l'a judicieusement dit CASE ça me ferais encore noir de possibilité, encore des millions supplémentaires :D
Des millions, des millions, j'suis riche :D

@SOLDAT
Merci aussi de tes precieux codes.
Je vais les regarder apres manger, car ça fait depuis 8 heure que j'ai pas mordu quelque chose.
Et il faudrait pas que je perde un de mes precieux 150 kg :D

Mille merci à vous deux
J'suis pas seul, j'suis avec des CAID, je vais pouvoir y arriver.
Je vais lui montrer à ce mechant loup :?
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Message par djes »

Pour ceux qui n'ont pas suivi, c'est moi le méchant loup :twisted: :evil:




Tout ça parce que l'ai comparé à une banane :lol:
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

Ouuuaaah, y m'a trouvé le méchant loup 8O
Et pourtant, j'm'était drolement bien caché :?
Il est trop fort ce méchant loup :D
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

@SOLDAT
Ayai, j'ai revenu de grayave :D
Je sais c'est long, et encore j'ai pas fait ma petite sieste, tellement j'etais préssé d'éssayé tes supers codes 8)
Comme ca, je dessine une fenêtre qui repésente l'alphabet
Super cool, je vois deja des appllications à ce code, je le met bien de coté.
L'autre je l'avais déjà dans ma grande hotte

Quoi qu'il en soit merci beaucoup
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

mais par contre c'est le chemin que tu empreintes
Mon cher GILLOU, ta phrase m'a trotté dans la tete toute la nuit :roll:
Comme pour l'instant tu es le seul à m'avoir dit que tu comprenais à peu pres ce que je voulais faire mais que je m'y prenais comme un manche et ça je veux bien le croire :D

J'aurais aimé avoir ton avis sur la maniere dont tu t'y serait pris si tu avait eu l'idée de m..... que j'ai eue.
Parce que contrairement à ce que je pourrais faire croire, le temps pour moi est tres important et je n'aimerais pas me rendre compte que j'ai perdu une semaine de mes vacances à coder un truc qui est trop long ou ne marche pas.
Je suis quasi sur que mon principe doit marcher (n'est ce pas monsieur le loup :wink:), mais par contre c'est la maniere dont il faut que j'arrive au resultat dont je suis loin d'etre sur :roll:
Alors tu m'a mis le doute :roll:
Peut etre vaut il mieux mettre tout en data, ce serait plus rapide ???
Mais alors t'imagine la grosseur du prg si j'atteind 1000000 de caracteres ???

Ou bien tu aurais une autre idée, completement differente pour reduire une clef à quelques caracteres ?

Bref si toi ou quelqu'un de la famille lit cette lettre de detresse qu'il n'hésite pas a proposer meme une idée la plus folle, je suis pas borné, la seule chode qui m'interesse c'est le resultat, pas la methode :wink:

Encore merci à tous
Avatar de l’utilisateur
case
Messages : 1546
Inscription : lun. 10/sept./2007 11:13

Message par case »

Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

NADINE BOUDIN !!!!!!
Mais c'est de la balle ton truc :D

J'ai encore rien compris, mais c'est génial, merci case noel :D

Je vais étudier ça, décidément on me donne toujours un super code quand j'ai méga faim :?
A force tout le monde va croire que je mange tout le temps :?

J'avais pas mal avancé moi aussi, j'avais créé déja les caracteres doubles comme (A sur A) (B sur A), les encadrés A sur A (encadré donc), evidemment les traditionnels, et j'y avais rajouté les couleurs.
Cette nuit, j'avais créé le "Createur de caracteres", que j'ai paufiné ce matin, ma femme est pas la , alors c'est la fete, je fais, lit <--> pc, lit <--> pc, manger :? , lit <--> pc la vie paradisiaque du geek quoi, et ça pendant une semaine :D
Alors je compte torcher cette affaire pendant cette semaine, c'est pourquoi je suis un peu préssé.

Donc je t'embrasse tres fort et merci de ce super cadeau.
Des que j'ai trouvé un cheval, je le mord et je reviens pour etudier ton super grandiose code, je te tiens au courant.

Mille million de merci mon bon case 8)
Répondre