2014-04-29 4 views
1

일반 텍스트 전용 드라이버를 사용하여 도트 매트릭스 프린터에 텍스트를 인쇄하고 모든 빈에 대해 한 칸의 공백 문자를 사용하여 데이터를 용지 열에 정렬합니다. 135 문자 폭의 용지에 문자를 인쇄합니다. 이것은 데이터가 사용자가 17CPI와 같은 다른 문자 크기를 선택하는 경우 열에 있어야한다는 의미에서 10CPI에서 작동합니다. 후자의 경우 정렬은 보존되지만 데이터는 예상 된 위치에 있지 않습니다. 예를 들어, 한 줄 (120 번째 문자)에 120 자리에 있어야하는 문자 인 반면, 10CPI에서는 17CPI에 실제로 줄 끝까지 인쇄됩니다.문자 크기 (피치)에 관계없이 도트 매트릭스 인쇄에서 데이터 정렬을 유지하는 방법

필자는 필자가 열 사이에서 사용하는 실제 공백 문자가 17CPI보다 작기 때문에 이런 문제가 발생한다는 것을 알고 있습니다.

그래서, 내 질문은 :

1) 내가 가서 피치가 10CPI보다 클 때마다 하나 이상의 공백 문자를 사용해야합니까? 나는 그것을 테스트 할 수는 있지만 그것은 좋은 습관이 아닙니다. 아니면 적절한 esc 명령으로 절대 수평 위치를 사용하려고합니까? 그러나 이것은 escp2 설명서에 따라 권장되지 않습니다.

2) 데이터의 각 행에 대해 프린터로 전송하는 문자열 안에 \ r \ n을 보내야합니까? 아니면 데이터 행만 보내고 끝에서 escp2 명령 CR을 보내야합니까?

미리 감사드립니다.

답변

0

1) 나는 실제로 최종 사용자가 선택한 문자 피치 (CPI)에 상관없이 페이지에 맞는 배열을 만들 수 없다고 결론을 내렸다. 이것은 미리 인쇄 된 팬 폴드 용지를 나타냅니다. 일단 사용자가 CPI를 변경하기로 결정하면 각 행 안의 텍스트 위치를 다시 구성해야합니다. 즉, 열 거리를 다시 구성해야합니다. 필자는 설정 섹션에서 인쇄 할 각 텍스트에 대해 줄 번호와 줄 번호를 제공하여 이러한 기능을 제공합니다.

2) 두 번째 작업이 끝납니다. 나는 2 차원 배열을 만들고 각 줄에 CR과 LF escp 명령을 보낸다.