Java Swing 응용 프로그램에서 인보이스를 인쇄하려고합니다. 나는 Printable
을 확장하고 public int print(Graphics g, PageFormat pf, int page)
메소드를 구현함으로써 그렇게한다.어떻게 Java2D에서 문자열을 클립핑하고 추가 할 수 있습니까? 결국 ...?
문자열에 문자열을 그리고 싶습니다. 문자열을 길게하면 클립을 붙이고 "..."로 끝내고 싶습니다. 어떻게 문자열을 측정하고 올바른 위치에서 클립 할 수 있습니까?
내 코드의 일부를 :
Font headline = new Font("Times New Roman", Font.BOLD, 14);
g2d.setFont(headline);
FontMetrics metrics = g2d.getFontMetrics(headline);
g2d.drawString(myString, 0, 20);
즉 내가 최대 120 픽셀로 myString
을 제한 할 수 있습니까?
metrics.stringWidth(myString)
을 사용할 수는 있지만 문자열을 클립해야하는 위치를 얻지 못합니다.
예상 결과가 될 수있다 : 당신이 문자열이 잘린 될 필요가 있음을 알게되면
A longer string that exc...
A shorter string.
Another long string, but OK