2013-08-14 7 views
2

Я пытаюсь использовать иврит, который является «справа налево», «по умолчанию l» слева направо »задает всю пунктуацию. Любые идеи о том, как изменить« слева » ?. направо»на„справа налево“в текстовом элементе fabricJSFabricJS Право налево Направление текста

+0

Мы не поддерживаем RTL-текст на данный момент. Возможно, вы можете просто отменить текстовую строку перед тем, как создать из нее 'fabric.Text'? – kangax

+0

Невозможно использовать свойство стиля оригинального элемента? – arty

+0

@kangax, спасибо за ваш ответ. Проблема с обратным направлением текста заключается в том, что я использую иврит с диакритическими символами, которые идут в направлении языка. Возможно, есть еще одна работа? Или, возможно, файл, который я могу редактировать, чтобы разрешить RTL? И как вы думаете, RTL скоро получит поддержку? – alutz33

ответ

1

вы можете добавить RTL к холсту, это решит вашу проблему Используя ткань, у вас есть 2 элементы холста так:

для визуальная часть: Попробуйте следующее:

<canvas dir="rtl" ></canvas> 

И если вы хотите создать образ из этого холста, добавить RTL в верхний холст:

$(".upper-canvas").css("direction","rtl"); 

Я использую иврит и она прекрасно работает, может быть кто-то может добавить это к исходному коду.

0

Вы можете использовать атрибут «TextAlign» и установить его на правой

например

var text = 'this is\na multiline\ntext\naligned right!'; 
var alignedRightText = new fabric.Text(text, { 
    textAlign: 'right' 
}); 
+0

выравнивание и направление текста - это два разных понятия. Выравнивание определяет, где находится вся строка. влево или вправо. он определяет границы LINE. , но направление определяет, будут ли СЛОВА В ЛИНИИ отсортированы справа или слева. это означает, что если свойство direction установлено вправо, то курсор всегда находится на самом краю. –

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