Подтвердить что ты не робот

XSL FO встроенное выравнивание

Мне нужно получить выравнивание текста вправо и влево в одной строке. Это должно быть возможно, но я не могу найти способ. Я использую Apache FOP для преобразования xml в pdf.

Может кто-нибудь помочь мне получить это право?

4b9b3361

Ответ 1

Elegance не было заявленным требованием, но это должно соответствовать счету:

<fo:block text-align-last="justify">
  LEFT TEXT
  <fo:leader leader-pattern="space" />
  RIGHT TEXT
</fo:block>

Это работает, оправдывая последнюю строку текста в блоке, чтобы текст начинался слева от строки и заканчивался справа. Лидер, который обычно используется на страницах Содержания, растягивается, чтобы заполнить пробел между левым и правым текстом. Обычно он используется как <fo:leader leader-pattern="dots" />, который создает период периодов, но в этом случае он просто обеспечивает пробел.

Ответ 2

Это сделает трюк:

<fo:table>
  <fo:table-column />
  <fo:table-column />

  <fo:table-body>
    <fo:table-row>
      <fo:table-cell>
        <fo:block>LEFT TEXT</fo:block>
      </fo:table-cell>
      <fo:table-cell>
        <fo:block text-align="right">RIGHT TEXT</fo:block>
      </fo:table-cell>
    </fo:table-row>
  </fo:table-body>
</fo:table>

Ответ 3

<fo:inline-container vertical-align="top" inline-progression-dimension="49.9%">
    <fo:block>left content</fo:block>
</fo:inline-container>
<fo:inline-container vertical-align="top" inline-progression-dimension="49.9%">
    <fo:block>right-content</fo:block>
</fo:inline-container>

Проверено, работает с FOP 2.0

Ответ 4

Это возможно, я не уверен, что такое точный результат, но вы пробовали:

<fo:block-container>
   <fo:block text-align="left">text</fo:block>
   <fo:block text-align="right">text</fo:block>
</fo:block-container >

Я не делал XSLFO через некоторое время, но я могу, конечно же, рекомендовать Stylus Studio для разработки XSL-FO (и в целом XML). Отладка и предварительный просмотр в приложении сохранили мою задницу во время окончания срока. Вы также можете заставить Stylus работать с процессором Apache FOP.

PS: Я бы дважды проверял, правильно ли настроен Apache FOP и т.д. дома.

Ответ 5

У меня нет времени прямо сейчас, чтобы проверить это, но проверьте http://www.w3.org/TR/xsl/#fo_float

плавайте один правый плавающий другой слева - я бы дал ему шанс, если бы я искал то, что вы описываете

вы также можете использовать таблицу

если вы не выровнены по правому краю, а вы имеете в виду оправданный...

Ответ 6

Я создаю два блока, а на втором блоке я устанавливаю этот атрибут:

margin-top="-4mm"

или то, что ваш размер шрифта и нижний край (просто чтобы они выглядели в одной строке)