2014-10-15 7 views
0

매우 큰 이미지를 사용자 지정 프린터로 보내려고합니다. 메모리 제한과 그 이미지가 풀 컬러로 처리된다는 사실 때문에 이미지는 프린터로 보내기 위해 더 작은 섹션으로 덩어리로 만들어 져야합니다. 모든 이미지는, 내가 별도로 인쇄해야 같은 크기 (또는 피드/cutMedia 옵션)가되므로, 자신의 옵션을 각각 여러 작업 인 경우중간 파일을 사용하여 C++에서 여러 파일을 인쇄하는 컵

(대신 jobId = cupsPrintFiles의) 각 이미지에 대한

jobId = cupsPrintFile(...) 설정 프린터로 보내지거나 여러 사용자가 작업을 보내고있는 경우 이러한 작업이 현재 작업의 청크 사이를 이동할 위험이 있습니다.

필자가 생각해 볼 수있는 유일한 해결책은 인쇄 작업을 프린터 대신 파일로 보내고 모든 옵션을 사용하고 모든 필터를 거쳐 만든 다음 모든 인쇄 작업을 만들어 보낸다는 것입니다 단일 작업으로 프린터에 일괄 처리 할 수 ​​있습니다. ...

이 두 단계를 모두 수행 할 수 있습니까? 나는 ...

1) 전 C를 통해이 작업을 수행하려면 어떻게 ++ 코드를 내가

lpoptions -o File="/home/me/abcd.prn" 

을 설정하면 "파일로 인쇄"... 할 수 있지만,

?

2) 동일한 인쇄 세션 중에 다른 파일 abcd1.prn, abcd2.prn, abcd3.prn을 어떻게 만들 수 있습니까?

3) abcd1.prn, abcd2.prn, abcd3.prn 파일을 동일한 인쇄 세션 중에 C++ 코드를 통해 REAL 프린터로 보내려면 어떻게해야합니까? 하나의 직업으로?

위의 단계 중 하나라도 수행 할 수 있습니까?

내 생각 - 파일로 인쇄하려면 백엔드를 작성한 다음 프린터로 파일을 가져 오려면 다른 백엔드를 작성하십시오.

답변

0

2dir 백엔드를 사용하여 here에서 가져온 다음 파일을 읽고 연결합니다. "파일로 인쇄"또는 단일 작업으로 프린터로 보낼 수있는 파일을 가져옵니다.

사용자 정의 백엔드로 보내려면 cups 옵션을 사용하고 설치되지 않은 경우 2dir 백엔드를 사용하는 프린터를 설치하기 위해 코드를 통해 실행되는 스크립트를 작성했습니다.