2013-09-11 2 views
2

Я добавил подчеркивание к тексту в файле fabric.js и работает как следующее изображение. Но подчеркивание немного далеки от текста, я изменил атрибут lineHeight, подчеркивание может быть более близким текстом, но проблема также в том, что высота управления выбором тоже изменилась. См. Фотографии ниже.fabric.js - text underline и lineHeight

Это первый, я изменил lineHeight = 0.2 и добавил подчеркивание, хорошо, но контроль над выборами стал странным. Во-вторых, я использовал default lineHeight, но подчеркивание немного далека от текста. Итак, как добавить подчеркивание текста близко без проблемы выбора?

Я тестировал, узнал, что эта проблема связана с originX = 'left' и originY = 'top', если originX = 'center' все в порядке.

enter image description here

enter image description here

+0

lineHeight непосредственно влияет на блок управления; это в основном 'fontSize * lineHeight'. Нет встроенного способа изменения вертикального смещения линии отделки. Но строка в вашем примере слишком низка и выглядит как какая-то ошибка. Пожалуйста, сделайте простой jsfiddle, показывая эту проблему. – kangax

+0

вот он - http://jsfiddle.net/hellomaya/5XCTt/1/, отчет о выпуске в github находится здесь - https://github.com/kangax/fabric.js/issues/835 – Tom

+0

Так что строкаHeight не интерпретируется как высота текстовой строки, но скорее как масштабный коэффициент. В противном случае fontSize * lineHeight ошибочно получает высоту блока управления. Эта ошибка исправлена ​​в последней версии dev. – Tom

ответ

0

Попробуйте этот код надеюсь, что он будет работать лучше для вас.

<input type="button" id="undrline" value="Underline" class="underline" > 

$("#undrline").click(function() { 
alert("underline"); 
var obj = canvas.getActiveObject(); 
if (!obj) return; 
obj.setTextDecoration('underline'); 
canvas.renderAll(); 
}); 
+0

Я попробую, спасибо. Эта ошибка исправлена ​​в последней версии. – Tom