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

AWT/Swing Java Discussion :

AWT dans un environnement sans interface graphique


Sujet :

AWT/Swing Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 28
    Points : 19
    Points
    19
    Par défaut AWT dans un environnement sans interface graphique
    Voila mon pb :
    J'ai réalisé une petite librairie qui permet d'écrire dans des fichiers PDF, mais voila pour faire un certain calcul (calcul de la longueur d'un texte en pixel) je suis obligé d'utiliser la librairie AWT et j'ai peur que ma librairie ne fonctionne pas dans un univers sans serveur X, qu'en pensez vous?

    Les import de mon fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
       import java.awt.Font;
       import java.awt.FontMetrics;
       import sun.font.FontDesignMetrics;

    Si sa ne fonctionne pas avez vous des idées pour calculer la longueur en pixel d'un texte.

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Il faudrait voir la documentation de chaque méthode/classe utilisé pour savoir cela. Mais le plus simple serait de lancer ton programme en mode "headless", c'est à dire sans serveur graphique. Pour cela il suffit de définir la variable "java.awt.headless" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java -Djava.awt.headless=true -jar TonAppli.jar
    a++

    PS : Tu ne devrais pas importer la classe sun.font.FontDesignMetrics. Elle fait partie des classes privés de Sun et n'est pas du tout standard !

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 28
    Points : 19
    Points
    19
    Par défaut
    Je vais essayer ça.

    Merci bien

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 28
    Points : 19
    Points
    19
    Par défaut
    Bon bah j'ai des problème avec la classe "sun.font.FontDesignMetrics".

    Alors je sais pas pas comment faire, car je souhaite calculer la longueur d'un texte en pixel et c'est la seul solution que j'ai trouvé. Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    public static int getStringPixelSize(String value, String fontName,
    			int fontSize, boolean bold, boolean italic) {
     
    		int fontOptions;
    		// Construction de l'option d'affichage
    		if (bold) {
    			fontOptions = Font.BOLD;
    			if (italic) {
    				fontOptions += Font.ITALIC;
    			}
    		} else {
    			if (italic) {
    				fontOptions = Font.ITALIC;
    				if (bold) {
    					fontOptions += Font.BOLD;
    				}
    			} else {
    				fontOptions = Font.PLAIN;
    			}
    		}
     
    		Font font = new Font(fontName, fontOptions, fontSize);
    		FontMetrics fontMetric = new FontDesignMetrics(font);
    		return fontMetric.stringWidth(value);
    	}
    Donc si quelqu'un à une méthode différente pour trouver la longueur en pixel, je suis preneur.

    Merci d'avance.

  5. #5
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par peyo_le_fou Voir le message
    Bon bah j'ai des problème avec la classe "sun.font.FontDesignMetrics".
    Comme je l'ait dit tu n'as pas à utiliser cette classe directement !

    Tu dois obtenir une instance de FontMetrics à partir de l'objet Graphics sur lequel tu vas dessiner, comme dans cet exemple de la FAQ : Comment connaître la taille de l'image d'un texte ?

    a++

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 28
    Points : 19
    Points
    19
    Par défaut
    Cool
    Ca marche!!!

    Merci bien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Programme sans interface graphique et évenements.
    Par necralbert dans le forum Langage
    Réponses: 1
    Dernier message: 31/08/2007, 00h16
  2. [VB6] Programme sans interface graphique
    Par yuan dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 30/05/2006, 19h29
  3. ActiveX dans un projet sans interface graphique
    Par Nalfouille dans le forum MFC
    Réponses: 6
    Dernier message: 04/01/2006, 17h30
  4. [Kylix] Programme sans interface graphique
    Par pewpew2001 dans le forum EDI
    Réponses: 1
    Dernier message: 06/10/2005, 19h46

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