2010-12-22 2 views
0

라벨을 생성하는 웹 응용 프로그램을 작성하고 있습니다. 내가 타겟팅하는 라벨 프린터는 12mm 테이프를 사용하고 고객은 라벨을 3.25 "로 제한하려고합니다. iTextSharp를 사용하면 만들려는 문서의 크기를 지정할 수 있지만, iTextSharp 자동 확장 페이지 폭

Document document = new Document(new iTextSharp.text.Rectangle(234f, 33.84f)); 

234

포인트로 변환 "3.25이다. 폭과 높이 모두를 지정하고 33.84 포인트로 변환 12mm이기 때문에,이 최대 허용 크기에 문서를 설정한다. 높이를 설정하고 문서를 콘텐츠 양에 맞게 자동 확장 할 수있는 방법이 있습니까? 그렇다면 문서의 너비가 고객이 허용하는 최대 너비를 초과하는지 확인하는 방법이 있습니까? 제공 할 수있는 도움에 미리 감사드립니다.

답변

0

아니요, iText에서는 불가능합니다. 다른 어느 곳에서도 특히 좋은 아이디어는 아닙니다. 레드먼 (Redman)은 "PDF는 인쇄물 형식이다. 그것은 HTML이 아닙니다.

당신이 어느 정도이 해결하기 위해 할 수있는 몇 가지 요령이 있습니다

  1. 최대 법적 높이로 페이지를 만듭니다. (200) 당신의 단락에 일반 태그 ""* 72dpi = 14400 점.
  2. 은 추가 ".
  3. 이 마지막 단락의 바닥이 그려진 위치를 추적하는 태그 이벤트 핸들러를 만듭니다.
  4. 저장 PDF.
  5. 을 . 마지막 단락의 위치와 일치하는 페이지 하단을 설정합니다 PDFStamper
  6. 로 다시 열고 왼쪽 아래가 0,0에서 시작합니다, 그리고 오른쪽 상단 최종 PDF
  7. 저장됩니다 것을 기억

이 트릭은 총 출력이 200 "보다 작을 때만 작동합니다. 만약 당신이 그것을 넘어 서면, 당신은 여전히 ​​두 번째 페이지를 얻게 될 것이고, "바닥이있는 곳"코드는 그것을 위해 더 잘 준비되어야 할 것입니다.

PS : 나는 ... 그 완벽 그들은 인화 레이블을 맞지 않는

나는 전체 12mm X 3.25 인쇄
+0

생각 12mm X 3.25 "페이지의 번호를 가지고 뭐가 잘못 표시되지 않습니다 "레이블은 받아 들일 만하다. 그러나 일부에서는 길이가 3.25를 넘지 않아서 제거 될 것으로 예상되는 중요한 공백이있을 수있다." – Sean

0

필자가 아는 한 PDF는 인쇄 형식이므로 문서 너비와 높이를 설정해야합니다. 보고 도구는 일반적으로 기본 페이지 크기를 기본 프린터 페이지 크기로 설정하는 이유입니다.

콘텐츠의 크기를 계산하고 이에 따라 PDF를 만드는 것이 가장 좋습니다. 워크 플로의 양과 특성에 따라 고객이 인쇄하기 전에 미리 확인할 수있는 미리보기를 제공 할 수 있습니다.