TextHitInfo Example

In this section, we are providing you an example based on class TextHitInfo. In the given example, when you click the element of the string, TextHitInfo class will displayed the position of character on the console.

TextHitInfo Example

In this section, we are providing you an example based on class TextHitInfo. In the given example, when you click the element of the string, TextHitInfo class will displayed the position of character on the console.

TextHitInfo Example

TextHitInfo Example

     

In this section, we are providing you an example based on class TextHitInfo. In the given example, when you click the element of the string, TextHitInfo class will displayed the position of character on the console.

The method hitTestChar() returns a TextHitInfo to the specified point. A string is defined. The Font class represents the font. The class FontRenderContext measures the text.

 

 

 

Here is the code of TextHitExample.java

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.font.*;

public class  TextHitExample extends JPanel {
  private TextLayout textLayout;
  private int X = 45, Y = 85;

  public TextHitExample() {
  addMouseListener(new MouseAdapter() {
  public void mouseClicked(MouseEvent event) {
  TextHitInfo  textHit = textLayout.hitTestChar(event.getX()- X,
   event.getY()- Y);

  System.out.println(textHit);
  }
  });
  }
  public void paint(Graphics g) {
  Graphics2D g2d = (Graphics2D) g;
  String text = "Java is an Object Oriented Programming Language";
  Font font = new Font("Arial Narrow", Font.PLAIN, 20);

  if (textLayout == null) {
  FontRenderContext fontRenderContext =g2d.getFontRenderContext();
  textLayout = new TextLayout(text, font, fontRenderContext);
  }
  textLayout.draw(g2d, X, Y);
  }
  public static void main(String[] args) {
  JFrame frame = new JFrame("Show Text Hit");
  frame.getContentPane().add(new TextHitExample());
  frame.setSize(440200);
  frame.show();
  }
  }

Output will be displayed as:

If you click the element J, the position i.e.0 is displayed on the console as given. Similarly on clicking P, the position i.e. 27 is displayed.

Download Source code