2012-06-13 3 views
3

FOP에서 XSL-FO를 사용하여 pdf 파일을 생성하려고합니다.XSL-FO 테이블 고정 높이

고정 된 높이의 테이블을 표시하고 싶습니다. 테이블은 여러 페이지로 나눌 수 있으며 모든 페이지에서 같은 높이를 사용하고 싶습니다.

한 페이지의 고정 된 높이를 정의 할 수없는 것 같습니다.

나는 테이블과 테이블 바디의 높이, 최소 높이, 최대 높이를 설정하려고 시도했지만 아무 것도 고려되지 않은 것 같습니다. 나는 또한 운이없는 다른 XSL-FO 프로세서를 사용해 보았습니다.

작은 샘플 : 당신이 등 높이, 글꼴 크기 ...에 대해 개별적으로 <fo:table-cell에 작업해야 FOP에서

<?xml version="1.0" encoding="UTF-8"?> 
<xsl:stylesheet version="1.1" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format"> 
    <xsl:template match="/"> 
     <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> 
      <fo:layout-master-set> 
       <fo:simple-page-master master-name="simpleA4" page-height="29.7cm" page-width="21cm" margin-top="1cm" margin-bottom="1cm" margin-left="2cm" margin-right="2cm"> 
        <fo:region-body margin-bottom="20mm"/> 
        <fo:region-after extent="10mm"/> 
       </fo:simple-page-master> 
      </fo:layout-master-set> 
      <fo:page-sequence master-reference="simpleA4"> 
       <fo:flow flow-name="xsl-region-body"> 
        <fo:block> 
         <fo:table table-layout="fixed" width="100%" height="10cm" border-style="solid" border-width="0.02cm"> 
          <fo:table-column column-width="20%"/> 
          <fo:table-column column-width="20%"/> 
          <fo:table-column column-width="60%"/> 
          <fo:table-body> 
           <fo:table-row> 
            <fo:table-cell> 
             <fo:block>Col1</fo:block> 
            </fo:table-cell> 
            <fo:table-cell> 
             <fo:block>Col2</fo:block> 
            </fo:table-cell> 
            <fo:table-cell> 
             <fo:block>Col3</fo:block> 
            </fo:table-cell> 
           </fo:table-row> 
          </fo:table-body> 
         </fo:table> 
        </fo:block> 
       </fo:flow> 
      </fo:page-sequence> 
     </fo:root> 
    </xsl:template> 
</xsl:stylesheet> 
+0

행 수가 다른가요? – mzjn

+0

예 ... 그리고 그들 각자의 높이도 ... 만약 그들에 breakline이 있다면. – david

답변

1

.

  1. 각 페이지
  2. 그 공간
  3. 에 장착 할 수있는 테이블의 행 수를 계산하기위한 테이블을 제공합니다 공간에 메모를 : 다음을 수행해야 루프에서
  4. 각 페이지는
  5. 테이블의 헤더는 첫 번째 페이지 를 구축 할 것입니다 마음 모자에 계속 보유 할 행의 수를 제공하는 각 페이지에 새 테이블을 만들고 테이블의 다른 페이지들 반드시 을 헤드리스로 구성해야합니다.