2017-12-14 33 views
0

XMLをR4iツールでxslでスタイリングしてPDF出力に変換しています。 図形ノード(A3サイズにする必要があります)を除いて、PDF文書は完全にA4サイズである必要があります。 XMLに図形ノードが含まれている場合は、新しいA3ページになければなりません。残りのXML文書は引き続きA4になります。図形タグはどのレベルにあってもよい。どのようにxslを使ってこれを達成できるのですか? サンプルXML: - あなたはXSL-FOスタイルシートを編集する必要があるので、A4の特定ノードをA3サイズで表示する方法

<content> 
     <refs> 
     <dmRef> 
      <dmRefIdent/> 
     </dmRef> 
     </refs> 
     <description> 
     <description> 
      **<figure id="fig-0003"> 
       <title>XXXX</title> 
        <graphic id="fig-0003-gra-0001" infoEntityIdent="b.png"/> 
        <graphic id="fig-0003-gra-0002" infoEntityIdent="b.png" /> 
      </figure>** 
     </description> 
     <levelledPara id="par-0001"> 
      <figure id="fig-0002"> 
       <title>XXXX</title> 
        <graphic id="fig-0003-gra-0001" infoEntityIdent="a.png"/> 
        <graphic id="fig-0003-gra-0002" infoEntityIdent="a.png" /> 
      </figure>   
     </levelledPara> 
     <levelledPara id="par-0002"> 
     </levelledPara> 
     <levelledPara id="par-0003"> 
      <para> 
       <internalRef internalRefId="fig-0003" internalRefTargetType="ir01"/> XXXX </para> 
      </levelledPara> 
      **<figure id="fig-0003"> 
       <title>XXXX</title> 
        <graphic id="fig-0003-gra-0001" infoEntityIdent="b.png"/> 
        <graphic id="fig-0003-gra-0002" infoEntityIdent="b.png" /> 
      </figure>** 
     </description> 
    </content> 

答えて

1

マジコンは、XSL-FOを使用しています。

この.xsltファイルは、ページサイズのために、このようなステートメントが含まれています。あなたは新しいシンプル・ページ・マスターとA3のための新しいページシーケンスマスターを作成する必要が

<fo:simple-page-master master-name="cover" page-height="297mm" page-width="210mm" margin="0mm"> 

<fo:page-sequence-master master-name="index"> 
    <fo:repeatable-page-master-alternatives> 
    <fo:conditional-page-master-reference master-reference="page_odd" page-position="any" blank-or-not-blank="not-blank"/> 
    <fo:conditional-page-master-reference master-reference="page_blank" page-position="any" blank-or-not-blank="blank"/> 
</fo:repeatable-page-master-alternatives> 
</fo:page-sequence-master> 

。その後figureノードが新しいマスターにリンクされている必要があります提案を

<fo:page-sequence master-reference="A3"> 
+0

ありがとう:

figureノードを処理テンプレートの一部で

は、ページシーケンスマスターをリンク指示がありました。ポジションとレベルに関係なく、A3マスタ参照をすべてのFigureノードにどのようにリンクできますか?図形テンプレートに改ページがあります。通常の改ページはコンテンツノードにあります。 –

+0

@AnkurMukherjee A4 fo:page-sequenceとは独立したA3 fo:page-sequenceを生成することは困難です。通常の方法でスタイルシートを作成すると、2つのA3 fo:page-sequenceはA4 fo:page-sequenceの下にネストされます。その場合、[PSMI](https://cranesoftwrights.github.io/resources/psmi/index.htm)テクニックを使用すると便利です。私はいつもこのスタイルシートをXSL-FOのポストプレッシャーに使用します。 – tmakita

+0

R4iがどのXSLFOプロセッサを使用しているのかわかりません。現在のバージョンのAntennahouse Formatterを使用している場合は、PSMIなしでページシーケンスをネストできます。 – Hobbes

関連する問題