Justifier un texte et l'exporter dans une image - Besoin d'une fonction

chrislcf Messages postés 6 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 19 juin 2008 - 17 juin 2008 à 16:48
chrislcf Messages postés 6 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 19 juin 2008 - 19 juin 2008 à 14:48
Bonjour à tous,

Je découvre lentement ce site et je suis à la recherche d'un code source car n'étant pas programmeur je ne m'en sors pas. Néanmoins je n'ai pas complètement trouvé mon bonheur.

C'est pourquoi je suis à la recherche d'une âme charitable qui gère l'asp / vb .net pour créer un code source.

Il s'agirait de coder une fonction qui puisse justifier un texte et l'exporter dans une image.

Il serait top de pouvoir mettre en paramètre :
-le texte (string)
-largeur de l'image (cm)

Quant à la longueur de l'image elle pourrait être automatique ...

A première vue est-il possible de créer facilement une telle fonction ?

Merci d'avance.

2 réponses

chrislcf Messages postés 6 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 19 juin 2008
18 juin 2008 à 15:35
Nobody ?
0
chrislcf Messages postés 6 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 14:48
J'ai trouvé cette fonction :

Sub generationImageVersDisque(ByVal monTexte As String)

            ' Instanciation d'un objet Bitmap qui va jouer, en quelque sorte, le rôle de conteneur.
            ' On passe au constructeur les dimensions en pixels que l'on souhaite (largeur, hauteur)
            Dim monBitmap As Bitmap = New Bitmap(2000, 1000)
            ' Création d'un objet Graphics qui va être notre surface de dessin, on l'associe
            ' à notre objet Bitmap grâce à la méthode FromImage
            Dim monGraphic As Graphics = Graphics.FromImage(monBitmap)
            ' Instanciation de deux objets Brush qui vont nous permettre, respectivement,
            ' de "peindre" le fond, puis de "dessiner" le texte par dessus. Nous leur
            ' passons la couleur que l'on souhaite leur donner
            Dim monPinceau As New SolidBrush(Color.White)
            Dim monStylo As New SolidBrush(Color.Black)
            ' Ici nous nous créons un rectangle de la taille de notre surface de dessin avec
            ' l'objet Brush.
            monGraphic.FillRectangle(monPinceau, 0, 0, 2000, 1000)
            ' Objet Font qui contient la police et ses caractéristiques
            Dim maPolice As New Font("Arial", 8, FontStyle.Regular)
            ' Structure PointF qui est un ensemble de 2 coordonnées pour le début du texte
            ' sur la surface de dessin.
            Dim mesCoor As New PointF(5.0F, 5.0F)
            Dim Alignment As System.drawing.StringAlignment
            Alignment = StringAlignment.Far

            ' Rendu du texte : ici nous sommes en qualité optimale.
            ' Plus de détails sur le sujet dans la suite de ce tutoriel
            monGraphic.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit
            ' "Ecriture" du texte sur la surface de dessin, en paramètres, on passe, 
            ' dans l'ordre, le texte, la police, le pinceau, et l'emplacement.
            monGraphic.DrawString(monTexte, maPolice, monStylo, mesCoor)
            ' Enregistrement à la racine de l'application le fichier généré
            monBitmap.Save(Server.MapPath("monImage.jpg"), System.Drawing.Imaging.ImageFormat.Jpeg)
            ' Ce code crée un lien sur votre page pour que vous puissiez vérifier le résultat,
            ' mais il n'est pas nécessaire pour la création de l'image elle-même.
            Response.Write("[ Votre image]")

        End Sub


Le souci est que le texte sort de l'image. Il n'est sur qu'une seule ligne.

Qq aurait des idées pour optimiser ce code ?
0
Rejoignez-nous