OOTB PDF 재 작성기 구성 요소를 사용하려고하지만 일부 시나리오에서는 작동하지 않는 간단한 사용 사례를 위해 PDF를 생성 할 수 있습니다.page2fo.xsl을 통해 PDF 생성을 위해 xml을 트래버스하는 동안 다른 노드를 읽습니다.
시나리오 1 : 페이지에 단일 노드에 데이터가 저장된 경우 PDF를 생성 할 수 있습니다. 시나리오 2 : 페이지가 여러 노드를 참조 할 때 PDF를 생성 할 수 없습니다.
<xsl:template match="jcr:content">
<xsl:if test="@articleTitle">
<fo:block font-size="30pt"
text-align="start" font-family="DinProLight">
<xsl:value-of select="@articleTitle" />
</fo:block>
</xsl:if>
<xsl:if test="@publishDate">
<fo:block font-size="18pt" color="#777777" text-align="start" font-family="georgia;"
font-style="italic" padding-bottom="9px">
<xsl:value-of select="concat(substring(@publishDate,9,2),'-',substring(@publishDate,7,2),substring(@publishDate,0,5))" />
</fo:block>
</xsl:if>
<xsl:if test="@authorPath">
<fo:block font-size="18pt" color="#777777" padding="3px" text-align="start">
<!--Below Code works fine -->
<fo:external-graphic src="url('sling://etc/designs/XXXX/images/logo.jpg')" content-type="content-type:image/jpeg"/>
<!--Below Code Fails -->
<xsl:value-of select="sling://content/XXXX/en/perspectives/tst_artcl/jcr:[email protected]"/>
</fo:block>
</xsl:if>
<xsl:if test="@noOfViews">
<fo:block font-size="11pt" color="#777777" text-align="right" font-family="arial" padding-bottom="9px" border-bottom="1px solid #777777">
<xsl:value-of select="concat(@noOfViews,' Views')" />
</fo:block>
</xsl:if>
<xsl:apply-templates />
</xsl:template>
에 대해 나는 완전히 질문을 이해할 수 없습니다. 두 개의 서로 다른 콘텐츠 구조에 대해 동일한 xsl을 사용할 것으로 예상됩니까? – santiagozky
기본적으로 내 콘텐츠 구조에는 내부에 다른 콘텐츠가 포함되어 있습니다. 예 : 다른 노드에서 오는 주소 및 다른 노드에서 오는 연락처 정보를 갖는 직원 바이오 페이지. – apurvc
Apache FOP에서 해결할 수없는 몇 가지 다른 유스 케이스를 발견 했으므로 PDF 생성 방법을 변경했습니다. 필자는 phantomjs를 사용하여 pdf를 즉시 생성했습니다. – apurvc