2017-01-28 4 views
0

У меня это очень долго Направо-налево арабский пункт:Как я могу сделать РТЛ текст продолжить левую часть ниже

https://fiddle.jshell.net/09b6xoaa/4/

Но я бы ожидать, что, когда линия слишком долго будет продолжите левую часть ниже («конец строки это должно быть на второй строке»), а не сломать линию в правом конце строки («начало строки rtl»), которая должна быть началом линия.

Кажется, я не могу найти ответ на такое поведение, которое, как мне кажется, является очень простым поведением. Что я делаю неправильно? Спасибо!

17-01-28 12:16 Обновленное описание и скрипку ссылка

Update: Кажется, что моя проблема лежит в библиотеке Python (weasyprint) для рендеринга HTML в PDF, который не имеет поддержки RTL
Спасибо всем!

+0

Знаете ли вы, арабский? не нужно нарушать так, как вы думаете. –

+0

Я этого не делаю. Но скажем, я хочу. Имеет ли смысл нарушать это так? Является ли это возможным? – apradan

+0

см. Обновленный ответ, это может помочь вам понять, как слова текут справа налево. –

ответ

1

Для правых налево скриптов, как, как арабские, длинные тексты сломаются в правильном положении по умолчанию (как для слева направо).

Пожалуйста, смотрите следующий персидский (например, как арабский) текст, который я встраивать эквивалентные Engligh слова рядом с каждым номером таким образом, что вы можете следить за словами, как они написаны в HTML коде и представлены в выходной веб-страницы:

<p dir="rtl" > 
 
کلمه اول - کلمه دوم - کلمه سوم - کلمه چهارم - کلمه پنج - کلمه شش - کلمه هفت - کلمه هشت - کلمه نه - و انتهای جمله. 
 
</p> 
 

 
<p dir="rtl" > 
 
کلمه اول first- کلمه دوم second - کلمه سوم third - کلمه چهارم fourth - کلمه پنج five - کلمه شش six - کلمه هفت seven - کلمه هشت eight - کلمه نه nine - و انتهای end جمله. 
 
</p> 
 

 
<p dir="rtl" > 
 
    کلمه اول firstWord- 
 
    کلمه دوم secondW - 
 
    کلمه سوم thirdW - 
 
    کلمه چهارم fourthW - 
 
    کلمه پنج fiveW - 
 
    کلمه شش sixW - 
 
    کلمه هفت sevenW - 
 
    کلمه هشت eightW - 
 
    کلمه نه nineW - 
 
    و انتهای end جمله. 
 
</p>

Пожалуйста, обратите внимание, что право-налево тексты должны быть выровнены вправо по умолчанию.

+0

Но мой вопрос ... как я могу сделать разрыв строки на левой стороне? Потому что, если направление направо налево, не имеет смысла ломаться справа. Это похоже на предложение вроде этого: https://fiddle.jshell.net/09b6xoaa/3/ Я что-то упускаю? – apradan

+0

У вас есть особый случай, который хочет переломить разрыв линии в специальном положении, или вы просто хотите, чтобы RTL lang как арабский был заторможен в правильном положении? если он второй (и я думаю, что, как вы говорите, его основной случай), то вы не беспокоитесь об этом, его нормально по умолчанию. вы должны установить только выравнивание текста. и вам будет полезно знать, что text-align: left будет рассматриваться как право для языков rtl! (поверьте мне, я знаю арабский) –

0

я думаю, что это то, что вы ¨R ищете

#rtl{ 
 
    word-wrap: break-word; 
 
}
<p id="rtl" >arabic valuearabic valuearabic valuearabic valuearabic valuearabic valuearabic valuearabic value2<b> arabic label2 </b> ar value1 <b>ar_label1</b></p>

+0

не очень. Взгляните на: https://fiddle.jshell.net/09b6xoaa/2/ Конец строки, которая в направлении RTL будет самой левой частью строки. Я ожидаю, что эта часть будет идти по следующей строке (ниже). – apradan

+0

https://fiddle.jshell.net/09b6xoaa/4/ – apradan

+0

Спасибо, кажется, я отформатировал строку неправильно. – apradan

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