Я вывожу XML-документ в PDF, используя XSL: FO (XEP). Все работает очень хорошо, за исключением случаев, когда я вводю кавычки.По какой-то причине фразы с кавычками не «текут».Это лучше всего видно на картинке:
Исходный XML выглядит так:
<seg>Item. Dixit quod P[etrus] Gauta loqutus est
publice Bernardo, domino del Mas, contra
ipsum testis in hunc modum <quote>Bernarde del Mas,
est ne bonum quod aliquis qui detexerit nos eat vivus
super terram?</quote> Et propter illa verba, ipse testis cum
familia sua exivit de Manso.</seg>
<seg>Item. Dixit quod Iordanus de Quiders
dixit <quote>Nuper ipsi testis modo apparebit quis
expeditus erit citius vos qui provenistis alios in
confessione</quote>. Et abiuravit heresim et
iuravit et cetera. Testes: Arnaldus, prior Sancti
Saturnini; et magister P[etrus] de Caramag;
et frater B[ernardus], inquisitor.</seg>
XSL: FOдостаточно просто.Элемент <quote>
заменяется на "
<xsl:template match="quote">
<fo:inline><xsl:text>"</xsl:text><xsl:apply-templates/><xsl:text>"</xsl:text></fo:inline>
</xsl:template>
Он активируется простым fo:flow
(а остальная часть текста передается с проблемами с нулевым потоком):
<!-- content flow -->
<fo:flow flow-name="xsl-region-body" font-family="Times" font-weight="normal" font-size="10pt">
<xsl:apply-templates/>
</fo:flow>
Есть ли специальный способ обработки кавычек в строке?
---- ДОБАВЛЕНО ----
Это шаблон, который обрабатывает элемент <seg>
, превращая каждый вновый абзац.
<xsl:template match="seg">
<xsl:for-each select=".">
<fo:block
font-family="Times" font-weight="normal" line-height="12pt" line-stacking-strategy="font-height" keep-together="always"
font-size="10pt" space-before="10pt" space-after="10pt" text-align="justify" end-indent="120pt">
<xsl:apply-templates/>
</fo:block>
</xsl:for-each>
</xsl:template>
Заранее спасибо.