Font font = Font("Arial", Font.BOLD, 35);
JLabel label = new JLabel("57");
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.LINE_AXIS));
panel.add(label);
이렇게하면 위와 아래에 여분의 공간이있는 JLabel이 만들어집니다. setVerticalAlignment(SwingConstants.TOP)
을 시도했지만 작동하지 않습니다. 다시 말하지만, JLabel을 맨위로 정렬하고 싶지는 않지만 JLabel 내부의 텍스트는 꼭대기에 정렬해야합니다. FontMetrics
에 설명 된대로 내 레이블, 문양의 공칭 상승과 최대 상승의 차이에 다이어그램 포인트 JLabel의 수직 정렬이 예상대로 작동하지 않습니다.
한 줄을 깜빡입니다. label.setFont (font); – arpanoid
그 이유 중 일부는 기호가 숫자보다 위쪽으로 확장되고 레이블의 텍스트 크기와 레이블의 크기가 결합되어 여러 글꼴 메트릭을 고려해야한다는 것입니다. http://upload.wikimedia.org/wikipedia/commons/3/39/Typography_Line_Terms.svg 질문에 대한 답변이 아니지만 도움이 될 수 있습니다. –
+1 사진 포함; 'RenderingHints' (http://download.oracle.com/javase/6/docs/api/java/awt/RenderingHints.html)의 가치를 간과하지 않습니다. – trashgod