2009-09-25 2 views
0

Кто-нибудь когда-либо успешно использовал java.awt.font.LineBreakMeasurer, чтобы нарисовать текст, обертывающий текст, который имеет java.awt.font.TextAttribute.TRACKING (также известный как интервал между буквами), установленный на шрифте?TextAttribute.TRACKING и LineBreakMeasurer

я создать шрифт с помощью:

Map<TextAttribute, Object> map = new HashMap<TextAttribute, Object>(); 
map.put(TextAttribute.SIZE, 18); 
map.put(TextAttribute.TRACKING, .04); 
Font f = Font.createFont(Font.TRUETYPE_FONT, new File ("C:/arialbd.ttf")); 
f = f.deriveFont(map); 

все выглядит хорошо, когда оказывается на изображение и отслеживания 0. но когда отслеживание установлено > 0, все рисуется правильно, но разрывы строк не меняются. текст просто исчезает со стороны изображения.

ответ

0

Я никогда не пробовал его ни с чем, кроме шрифта по умолчанию, но старый технический совет Multi Line Text показывает один из способов использования LineBreakMeasurer. Поскольку вы не опубликовали свой код, я не могу сказать, является ли ваш код одинаковым или другим.

В следующий раз сообщение SSCCE будет полезно, чтобы мы могли видеть, что вы делаете.

+0

Я использую пример прямо из java-документа, который похож на пример Multi4 в указанной вами ссылке. если вы замените создание шрифта (3-я строка в конструкторе) кодом выше, вы увидите эффект. – 2009-09-27 17:02:40

+0

У меня нет доступа к файлу шрифта. Кажется, вы думаете, что проблема связана с атрибутом Tracking. Так что это проблема со всеми шрифтами или только с этим шрифтом или их комбинацией? Во всяком случае, мне больше нечего предложить, извините. – camickr

 Смежные вопросы

  • Нет связанных вопросов^_^