fo: change-bar-begin не является потомком fo: inline fop 1.1 - PullRequest
0 голосов
/ 06 ноября 2018

Я использую FOP 1.1 и пытаюсь использовать fo: change-bar-begin, но получаю следующую ошибку:

org.apache.fop.fo.ValidationException: «fo: change-bar-begin» не является допустимым потомком «fo: inline»!

В соответствии с Рекомендацией W3C, change-bar-begin и change-bar-end определяют «точки» и могут использоваться где угодно как потомки fo: flow или fo: static-content, в основном в любом fo: block или fo :. рядный

Пример кода:

<fo:block background-color="Tomato" text-indent="-57.5pt" start-indent="57.5pt">
<fo:inline background-color="aquamarine" font-size="10" font-family="Arial, sans-serif">1.</fo:inline>
<fo:change-bar-begin change-bar-offset="2mm" change-bar-color="red" change-bar-style="solid" change-bar-class="cc01"/>
<fo:inline background-color="LightSteelBlue" keep-with-previous="always" font-size="10" font-family="Arial, sans-serif" padding-left="48.39pt">Remove panel.</fo:inline>
<fo:change-bar-end change-bar-class="cc01"/>
</fo:block>

Что я делаю не так?

Спасибо!

Флорин

1 Ответ

0 голосов
/ 06 ноября 2018

Это выглядит нормально для меня, и вы правы в том, что fo:change-bar-begin разрешено где-либо как потомок fo:flow или fo:static-content. Так что это похоже на ошибку FOP.

В вашем примере fo:change-bar-begin на самом деле не является потомком fo:inline. Вы пытались поместить FO изменений в fo:inline?

FWIW, пример отформатированной панели изменений в «Обширном руководстве по XSL-FO и коллекции образцов» в https://www.antennahouse.com/antenna1/comprehensive-xsl-fo-tutorials-and-samples-collection/.

...