IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Les Défis DELPHI - Générer de jolis fichiers ASCII !

Les défis DELPHI

Date de publication : 28 décembre 2007

Par l'Equipe DELPHI (Les Défis DELPHI)
 

Le 5ème défi proposé par l'équipe Delphi est la création d'une application qui à partir d'un texte en entrée, d'une police de caractères, d'une largeur et d'une hauteur saura générer un art ASCII dans un fichier texte.
L'art ASCII consiste à réaliser des images uniquement à l'aide des lettres et caractères spéciaux contenus dans le code ASCII (1).

            
Sinequa

I. Sujet du défi
I-A. Pré-requis
I-B. Les objectifs du défi
II. Le défi: topic
III. Sources du défieur


I. Sujet du défi

Le 5ème défi proposé par l'équipe Delphi est la création d'une application qui à partir d'un texte en entrée, d'une police de caractères, d'une largeur et d'une hauteur saura générer un fr art ASCII dans un fichier texte.

L'utilisateur devra saisir un texte avec la police de caractères de son choix.

L'utilisateur devra également spécifier le nombre de caractères utilisés pour la largeur et la hauteur de l'art ASCII que l'application va lui générer.

L'application devra être capable de générer un fichier ASCII dessinant le texte saisi par l'utilisateur avec sa police de caractères utilisée.

Le fichier généré ne pourra utiliser que des caractères ASCII non étendus et supérieur ou égal à 32. La police de caractères utilisée pour visualiser les fichiers générés est :
Police de caractères

			        Font.Charset = ANSI_CHARSET
			        Font.Color = clWindowText
			        Font.Height = -11
			        Font.Name = 'Courier New'
			        Font.Style = []
			
Le fichier généré possèdera le nombre de caractères saisi pour la largeur et pour la hauteur par l'utilisateur.

Et comme rien ne vaut un exemple... Imaginons celui-ci :
exemple en art ASCII / deux polices différentes / largeur 80 caractères / hauteur 25 caractères

PPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZ  DELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELP  
COMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMD  HIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDE  
ELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPH  VELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELO  
IDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDE  VELOPPEZCOMDELPHID  PPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZ  
EVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVE  LOPPEZCOMDELPHIDEV  COMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMD  
ELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELO  PPEZCOMDELPHIDEVEL  ELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPH  
OPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPP  EZCOMDELPHIDEVELOP  IDEVE         L          O        P     PEZCOM D             ELPH         IDEVEL  
PEZCOMDEL      PHI   DE   VE       LO   P        P       EZC  OMD      ELPHIDEVE  OPPEZCO       MD   EL  PHID       E     VEL    OPP   E   Z  COMDELP       HIDEVE  
LOPPEZCO        MD   E    LP        H            I        DE  VE        LOPPEZCO  LOPPEZC   OM  DE   LP  HIDE   VE  LO    PPE    ZCO   MD     ELPHIDE   VE  LOPPEZ  
MDELPHID        EV        EL        O            P        PE  ZC        OMDELPHI  COMDELP     HIDEV     ELOPP     EZCO     M    DELP   HI     DEVELOP     PEZCOMDE  
DEVELOP         PEZ      CO    M    D            E   L    PH  I         DEVELOPP  LPHIDEV     ELOPPE    ZCOMD     ELPH     I    DEVE   L      OPPEZCO     MDELPHID  
EZCOMDE         LPHI    DEV         E   LO  PP   E  ZCO   MD  E         LPHIDEVE  EVELOPP      EZCOMD  ELPHID      EVE          LOPP       E  ZCOMDEL     PHIDEVEL  
LOPPEZC       OMDELP    HID       EVE   LO  PP   E  ZCO   MD  E       LPHIDEVELO  OPPEZCO      MDELP    HIDEV      ELO  P       PEZC     OMD  ELPHIDE     VELOPPEZ  
PPEZCOM     DELPHID     EVE     LOPPE   ZC  OM   D  ELP   HI  D     EVELOPPEZCOM  COMDELP      HIDE     VELOP      PEZ  CO   MD ELPH   IDEVE  LOP  PE     ZCOMDELP  
DELPHID    EV   EL       OP   PEZ   C   OM  DE   L   P    HI  D    EV   ELOPPEZC  HIDEVEL   OPP EZC      OMDE   LPH     ID   EV ELOP   PEZCO  MDE  LP   HI  DEVELO  
OMDELPH         I         D         E   VE  LO   P        PE  Z         COMDELPH  PPEZCOM    DE  L   PH  IDEV     E         LOP  PEZ   COMDE       LP    H   IDEVE  
IDEVELOPP      EZ   COM   DE       LP   HI  DE   V      ELOP  PEZ      COMDELPHI  LOPPE                                   Z CO           MD                  ELPHI  
DEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCO  MDELPHIDEVELOPPEZCOMDELPHIDE  DEVEL                              OPPEZCOMD           EL       P          HIDEV  
VELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMD  ELPHIDEVELOPPEZCOMDELPHIDEVE  ELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOP  
LOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDEL  PHIDEVELOPPEZCOMDELPHIDEVELO  PEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZC  
PPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPH  IDEVELOPPEZCOMDELPHIDEVELOPP  OMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDE  
EZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHID  EVELOPPEZCOMDELPHIDEVELOPPEZ  LPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHI  
DELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELP  DEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVE 
HIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDE  LOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPP 
VELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELO  EZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCOMDELPHIDEVELOPPEZCO 
			

I-A. Pré-requis

Pour réaliser ce défi, une simple édition personnelle de Delphi suffit. Pas besoin d'avoir les bibliothèques spécifiques aux versions Pro/Entreprise/Architecte !

Certaines versions personnelles de DELPHI sont disponibles au téléchargement dans la page Freeware de la rubrique DELPHI de www.developpez.com !

Il peut être nécessaire de savoir farfouiller sur le site de www.developpez.com dans la rubrique DELPHI et plus particulièrement dans la faq F.A.Q. DELPHI, dans les SOURCES DELPHI, dans les tutoriels DELPHI et dans les forums DELPHI.


I-B. Les objectifs du défi

Le logiciel doit comporter les éléments suivants :
  1. Créer l'interface utilisateur de l'application
  2. Respecter le sujet du défi :
    1. L'utilisateur devra saisir un texte avec la police de caractères de son choix.
    2. L'utilisateur devra également spécifier le nombre de caractères utilisés pour la largeur et la hauteur de l'art ASCII que l'application va lui générer.
    3. L'application devra être capable de générer un fichier ASCII dessinant le texte saisi par l'utilisateur avec sa police de caractères utilisée.
    4. Le fichier généré ne pourra utiliser que des caractères ASCII non étendus et supérieur ou égal à 32. La police de caractères utilisée pour visualiser les fichiers générés est :
      Police de caractères
      
      									Font.Charset = ANSI_CHARSET
      									Font.Color = clWindowText
      									Font.Height = -11
      									Font.Name = 'Courier New'
      									Font.Style = []
      								
      
  3. Laissez libre court à votre imagination et proposez vos propres fonctionnalités.
Les participant doivent respecter les règles du défi, et le déroulement du défi et plus précisément que "l'utilisation de composantes ou bibliothèques autres que celles fournies en standard par Borland sont interdites, qu'elles soient commerciales, freewares, open-source etc. ..."


II. Le défi: topic

Comme pour tous les défis, ce défi s'est déroulé sur le forum DELPHI.

Vous pouvez désormais retrouver sur cette page l'archive du sujet concernant ce défi.


III. Sources du défieur

Si vous souhaitez télécharger les sources du projet
Télécharger
miroir


            

(1) Extrait de fr Wikipedia.

Valid XHTML 1.1!Valid CSS!

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2007 Whiler. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.