Comment modifier les attributs(couleur et police) d’une partie de texte à l’aide de ‘AttributedString’

Author:

classe, iterator, set, java, swing, awt, JFrame
{filelink=9436}

  import java.awt.*;
  import java.awt.font.TextAttribute;
  import java.text.*;
  import javax.swing.*;

/*
 *  Dessiner un texte et modifier
 *  sa police et sa couleur
 */

  public class AttributsText
		{
		 public static void main(String[] args)
		 {
		   JFrame f = new JFrame("Les Attributs des Textes - Police et Couleur")
		   {
				public void paint(Graphics g)
				{
				Graphics2D g2 = (Graphics2D)g;
				String texte = "Exemples Java";
				Dimension d = getSize();
				g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
				RenderingHints.VALUE_ANTIALIAS_ON);

				// Création de deux polices différentes
				Font police1 = new Font("Serif", Font.PLAIN, 48);
				Font police2 = new Font("Monospaced", Font.PLAIN, 48);

				// Créer un objet de la classe 'AttributedString'
				AttributedString str_attribut = new AttributedString(texte);

				// Appliquer une police à l'ensemble du texte
				str_attribut.addAttribute(TextAttribute.FONT, police1);

				// Modifier la police d'une partie du texte(index 2 à 7)
				str_attribut.addAttribute(TextAttribute.FONT, police2, 2, 7);
				// Modifier la couleur d'une partie du texte(index 2 à 7)
				str_attribut.addAttribute(TextAttribute.FOREGROUND, Color.red, 2, 7);
				g2.drawString(str_attribut.getIterator(), 40, 80);
				}
		};
		f.setSize(400,150);
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setLocationRelativeTo(null);
		f.setVisible(true);
	   }
}

A Voir sur le même Sujet:

  • exemple java couleur texte
  • fonction en java pour changer le couleur d'un string
  • java changer le couleur du texte
  • Comment changer couleur Jframe en netbeans
  • changer couleur d'un text dans textarea java
  • changer la couleur d'un string java
  • java colorer chaine arbre
  • police texte java
  • modifier la couleur et la police de jframe
  • comment positionner un phrase en pdf avec java

Leave a Reply

Your email address will not be published. Required fields are marked *