2011-04-06 4 views
5

셀과 관련된 XSL-FO 문제에 대한 해결책/해결 방법 (유사한 질문이 있지만)이 없습니다. 배경. 우리는 Apache FOP 0.25를 사용하고 있으며 최신 버전으로 신속하게 업그레이드 할 수 있으며 다른 PDF 프로세서는 현재로서는 불가능합니다.테이블 셀 배경을 설정할 때 XSL-FO로 테이블 테두리 덮어 쓰기/겹치기

사실, 셀에 배경색을 설정할 때 새로운 배경 채우기는 그렇지 않으면 볼 수있는 테이블의 테두리를 덮습니다 (0.5pt 솔리드). 나는 그것을 극복하기 위해 몇 가지 방법을 시도했지만 한 그들이 차선의 결과에 대한 모든 리드 : 경계를 설정

  • 에 1pt로 - 경계가 배경 컬러와 셀 함께 실행하는 경우에 따라 표시됩니다하지만 서로 다른 폭을 가지고 또는없이. 그것은 너무 뚱뚱하다.
  • 배경색이있는 각 표 셀에 테두리를 개별적으로 설정합니다. 그게 효과가 있지만 배경없이 셀에 설정된 테두리와 함께있는 테두리 사이의 간격을 봅니다. 아래 예제에서 셀 1.1과 셀 2.1의 세로 테두리 사이에는 눈에 띄는 간격이 있지만 2.1과 3.1 사이에는 보이지 않습니다. 이 문제를 해결하기 위해 어떤 실제적인 해결 방법

    __________________________ 
    |cell 1.1: background | 
    |cell 2.1: no background | 
    |cell 3.1: no background | 
    -------------------------- 
    

이 있습니까? table-cell 요소에 배경색을 설정하고 있는데, 맞아야합니다.

많은 감사

+0

혹시 문제가 해결 되었습니까 함께 작업입니다 채우기 패턴을? –

답변

5

좋은 국경 예를 들어 아파치 FOP

<fo:table border="1pt solid black"> 
     <fo:table-body border="inherit"> 
      <fo:table-row border="inherit"> 
      <fo:table-cell border="inherit" background-color="#F2F2F2" number-rows-spanned="2"> 
       <fo:block>data</fo:block> 
      </fo:table-cell> 
      <fo:table-cell border="inherit" background-color="#D9D9D9"> 
       <fo:block>data2</fo:block> 
      </fo:table-cell> 
      </fo:table-row> 
      <fo:table-row border="inherit"> 
      <fo:table-cell border="inherit" background-color="#C0C0C0"> 
       <fo:block>data3</fo:block> 
      </fo:table-cell> 
      </fo:table-row> 
     </fo:table-body> 
    </fo:table>