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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Tracer du texte sur un "chemin"


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut Tracer du texte sur un "chemin"
    Bonjour

    J'aimerais tracer un texte qui doit suivre un "chemin" défini par un Array de points

    Et par extension (mais 'est pas tout a fait la meme chose) un texte qui suivrait l'arc d'un cercle

    Des idées ?

    Merci de vos suggestions.

  2. #2
    Membre confirmé Avatar de deejay2221
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2006
    Messages : 98
    Par défaut
    Regarde du côté de Graphics.RotateTransform() pour la rotation des caractères. Pour le reste c'est des mathématiques.
    Si tu as plus de caractères que de points, tu va devoir calculer des moyennes de points. C'est pas mal de travail.

    Pour le reste, tu utilise Graphics.DrawString() pour dessiner tes caractères dans une boucle.

    Aussi non, tu peux surfer sur Google et par chance tu pourrais sûrement trouver une fonction ou petite bibliothèque avec toutes les fonctions pour faire ce que tu veux.

  3. #3
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Salut

    Précisément j'espèrais pouvoir eviter le dessin des des caracteres un a un avec calcul de rotation et positionnemrent individuel !!

    Je ne suis pas encore vraiment convaincu que rien n'est prévu pour cela

  4. #4
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Aussi non, tu peux surfer sur Google et par chance tu pourrais sûrement trouver une fonction ou petite bibliothèque avec toutes les fonctions pour faire ce que tu veux.
    Trouver des choses : pas tant que ca c'est un sujet un peu hors des sentiers battus

  5. #5
    Membre Expert Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Par défaut
    salut,

    En effet c'est peu commun, mais ma foi très intéressant.
    Précisément j'espèrais pouvoir eviter le dessin des des caracteres un a un avec calcul de rotation et positionnemrent individuel !!
    tu n'as pas besoin de faire ça. Tu devrais seulement gérer une pile en FIFO(ou PEPS pour les pur francophones). Je m'explique, tu n'auras que le positionnement de ton premier caractère à recalculer à chaque fois puisque les autre suivent, donc le 2ème caractère doit avoir la position précédente du 1er caractère...etc...
    Je sais pas si j'ai été assez clair, mais je le concevrait comme ça par rapport à ce que tu a écris.
    bon courage

  6. #6
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    tu n'as pas besoin de faire ça. Tu devrais seulement gérer une pile en FIFO(ou PEPS pour les pur francophones). Je m'explique, tu n'auras que le positionnement de ton premier caractère à recalculer à chaque fois puisque les autre suivent, donc le 2ème caractère doit avoir la position précédente du 1er caractère...etc...
    Je sais pas si j'ai été assez clair, mais je le concevrait comme ça par rapport à ce que tu a écris.
    bon courage

    Heu !

    Dans un cas limite ou il faut ecrire le texte sur un cercle je vois pas tres bien quelle est ta solution

    Bon dans mon cas ce ne sont pas des courbes mais des petites droites contigues que l'on trace avec un DrawLine

    Je pense devoir utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Graphics.MeasureCharacterRanges
    Et decouper mon texte en morceau de droite en essayant de centrer sur la droite la plus longue
    Apres il faut gerer l'orientation et il y a le transformatrix pour cela !

    Mais je ne sais pas encore bien si je dois utiliser le transformatrix au niveau Graphix ou au niveau Font

Discussions similaires

  1. [MySQL] Sauvegarder du texte (db mysql) CR, single-quote, double-quote, etc
    Par vandeyy dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 12/03/2007, 11h22
  2. Réponses: 5
    Dernier message: 15/04/2005, 14h22
  3. Problème sur Request.ServerVariables("QUERY_STRING"
    Par PrinceMaster77 dans le forum ASP
    Réponses: 3
    Dernier message: 25/03/2005, 11h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo