2014-06-18 2 views
0

인쇄 할 내용에 따라 다양한 높이의 .DOC (Aspose 단어 사용)을 프로그래밍 방식으로 작성하고 있습니다. 롤 용지로 인쇄됩니다 (열전 사 프린터 참조)."Aspose Words"가 포함 된 연속 용지 (롤 용지)에 가변 높이의 .DOC 인쇄

어떤 종류의 접근 방식을 취해야합니까? 저는 두 가지 방법을 생각했습니다 : 최소한의 높이를 가진 용지를 만들고 위쪽과 아래쪽 여백이 없으므로 페이지가 같은 페이지에 있거나 페이지 높이를 동적으로 바꿀 수 있습니다.

모든 솔루션을 환영합니다. 물론 어떻게해야합니까? 그러나 각 페이지 나누기 (응용 프로그램 제어 외부의 하드웨어/드라이버 기능)와 같은 일부 이벤트에서 용지를자를 수 있기 때문에 문서를 고유 한 페이지 (필요한 경우 길게)에 넣는 것을 선호합니다.

답변

0

페이지를 늘려서 한 페이지 만 넣으면 성공할 수있었습니다. 그러나 Aspose Words는 Aspose Words API에서 마지막 페이지의 남은 공간을 측정하는 방법이없는 것 같기 때문에 다음과 같이 작업했습니다.

PageCount에 페이지 수를 곱한 값을 정의했습니다. 유용한 페이지 높이 (마진을 뺀)를 적용하면 남은 공간을 조정하여 각 시도에서 유용한 페이지 높이를 2로 나누고 일반 바이너리 검색 알고리즘의 기초와 같이 늘리거나 줄이려 고 시도합니다.

바이너리 알고리즘의 기초가 어떻게 로그 스케일을 가지는지, 더 나쁜 경우에는 10 개 미만의 비용으로 페이지에 맞 춥니 다. (내 유용한 높이는 30cm를 초과하지 않을 것입니다. 최악의 경우 1 미터는 약 14 회 정도의 비용이들 것입니다).