2017-01-13 1 views
1

겹쳐지고있는 이미지 테두리에서 강조 표시되어 다른 셀 테두리보다 두껍게 보입니다. 나는 모든 셀에 테두리를 적용하는 데 사용했다 코드는 다음과 같습니다테두리가 겹치는 경우 테두리 동작이란 무엇입니까? (표 셀, 셀 셀)

cell.setUseVariableBorders(true); 
cell.setBorderWidthLeft(1); 
cell.setBorderWidthBottom(1); 
cell.setBorderWidthRight(1); 
cell.setBorderWidthTop(1); 

enter image description here

+1

2 개의 셀이 거기에 닿으므로 테두리가 두 배로 넓어 지므로 두 개의 테두리가 서로 닿아 있습니다. 문제는 그들이 서로를 밀어내는 것만큼 겹치지 않는다는 것입니다. 어떤 셀이 접촉 중인지 설정할 수 있으면 셀의 아래쪽 또는 오른쪽에 대한 테두리를 제거 할 수 있습니다. 그래서 셀 2는 셀 1을 만지고 그 다음에 셀 2의 왼쪽에 테두리를 추가하지 않습니다. 하지만 셀 2는 어떤 셀보다 아래에 있지 않으므로 상단 테두리를 유지하십시오. – gabeio

+0

그들은 서로 겹치지 않아 다른 것에 인접하여 배치되어 다른 것들보다 두꺼운'경계 '를 보입니다. –

+0

그래, 절대적으로 @jackjay. itext5와 함께 작동하는 해결책은 무엇입니까? –

답변

0

당신이 설명하는 효과를 일으킬 두 가지가 있습니다. 당신은 경계의 폭이 내부를 않고 싶어합니다 cell.setUseVariableBorders(true);를 사용하는

  1. . 인접한 두 개의 셀에 서로 인접한 테두리가있는 경우 너비가 1 인 사용자 단위가 2 개인 두 테두리가 생기고 너비가 2 사용자 단위 인 테두리로 표시됩니다.
  2. cell.setUseVariableBorders(true); 줄을 제거하면 두 개의 경계선이 그려지지만 겹칠 것입니다. 기술적으로 2 개의 겹쳐진 1 개의 사용자 단위 두께의 테두리는 1 개의 사용자 단위 두께의 단일 테두리로 보이는 것이지만 일부 PDF 뷰어는 겹쳐져있는 테두리를 약간 두껍게 만듭니다.

어떻게 해결할 수 있습니까?

글쎄, iText에서 새로운 것 같아 iText 7로 전환하지 않으시겠습니까? iText 7에서는 테두리가 겹치는 문제가 해결되었습니다. 그걸로 부족의 경우 iText를 7로 전환 할 수 없다면이 모든 Chapter 5 of the iText 7 "building blocks" tutorial

에 설명되어 있지만,이 iText 5와 붙어있어, 당신은 라인 cell.setUseVariableBorders(true);를 제거해야하고, 중복 국경 중 하나를 제거 .

+0

cell.setUseVariableBorders를 제거한 후에도 (true); 줄, 그것은 itext 5와 동일한 동작을 보이고있다. –

+0

이것은 내가 설명한 것처럼 뷰어에 의해 발생할 수있다. 내가 제안한 해결책은 남아 있습니다 : 인접한 셀 중 하나의 테두리를 제거하거나 iText 7로 업그레이드하십시오. –

+0

itext7에서 제대로 작동하지만이 버전은 itext5와 호환되지 않습니다. –