XSL-FO Восстановленный текст в сноске

Я пытаюсь правильно отобразить сноску внутри PDF-файла с помощью Apache FOP.

<fo:block text-align="right">
    <fo:bidi-override unicode-bidi="embed" direction="rtl">
        <fo:inline>שלום</fo:inline>
        <fo:footnote>
            <fo:inline alignment-baseline="hanging">1</fo:inline>
            <fo:footnote-body>
                <fo:block>
                    <fo:bidi-override unicode-bidi="embed" direction="rtl">
                        <fo:inline>שלום</fo:inline>
                    </fo:bidi-override>
                </fo:block>
            </fo:footnote-body>
        </fo:footnote>
        <fo:inline>.</fo:inline>
    </fo:bidi-override>
</fo:block>

По какой-то причине текст сноски (внизу страницы) выглядит перевернутым:

введите здесь описание изображения

Не уверен, что я делаю неправильно...


person Mickael Marrache    schedule 04.01.2019    source источник
comment
FWIW, я попробовал ваш FO с AH Formatter, и текст сноски вышел в порядке, обратном тому, что вы показываете. Так что похоже, что это может быть ошибка FOP. Кроме того, FWIW, fo:inline в вашем образце является избыточным.   -  person Tony Graham    schedule 05.01.2019
comment
Спасибо! Я создал проблему. Между тем, есть ли способ имитировать сноску без использования XSL-FO ‹сноска›? Нравится, чтобы текст отображался в нижнем колонтитуле?   -  person Mickael Marrache    schedule 05.01.2019


Ответы (1)


  1. (плохо) Подход к решению: удалить (внутренний) атрибут direction="rtl", но это, вероятно, «сломает другие вещи».
  2. (лучший) подход (но, возможно, нечитаемый/забавный на вашем языке, извините, когда):

    <fo:inline>םולש</fo:inline>
    

... но больше всего путаницы (для меня и, возможно, «движка») поднимают вложенные элементы <fo:bidi-override/>...

  1. подход будет:

    <fo:block text-align="right">
      <fo:bidi-override unicode-bidi="embed" direction="rtl">
        <fo:inline>שלום</fo:inline>
      </fo:bidi-override>
      <fo:footnote>
        <fo:inline alignment-baseline="hanging">1</fo:inline>
        <fo:footnote-body>
          <fo:block>
            <fo:bidi-override unicode-bidi="embed" direction="rtl">
              <fo:inline>שלום</fo:inline>
            </fo:bidi-override>
          </fo:block>
        </fo:footnote-body>
      </fo:footnote>
      <fo:inline>.</fo:inline>
    </fo:block>
    

(переставьте внешний <fo:bidi-override/>.)

person xerx593    schedule 02.02.2019