2012-03-19 5 views
0

ghostscript spliting pdf에 문제가 있습니다. 스크립트에서 두 번 고스트 스크립트를 실행하여 파일을 분할합니다. 임 하나의 파일에 대한 작업과 처음 PDF에서 corectly spliting하지만 두 번째 아무것도 일어나고있다. 새 파일을 만들지 않습니다.G로 PDF 문제를 분할합니다. GS 제한?

고스트 스크립트를 실행할 때 두 번째 오류가 발생합니다. "초기 장치를 열 수 없습니다."

답변

1

파일을 어떻게 나누고 있습니까? 스크립트를 게시하면 잘못된 것에 대한 단서를 제공하는 것이 더 쉬울 수도 있습니다. 그러나 '초기 장치를 열 수 없습니다'라는 오류는 존재하지 않는 장치를 선택하려고 시도했거나 -sOutputFile 명령을 잘못 입력했거나 어떤 이유로 든 잘못된 파일/디렉터리에 쓰려고 시도했음을 의미합니다.

스크립트로 실행 중이므로 같은 파일에 두 번 쓰려고 할 가능성이 있습니까? 파일이 아직 열려 있으면 실패합니다. PHP 간부 수출 TMPDIR = MY_DIR/tmp_cache_gs에 RUN IN

+0

, 수출 TMP = MY_DIR/tmp_cache_gs, 수출 TEMP = MY_DIR/tmp_cache_gs GS -sDEVICE =으로, pdfwrite -q -dNOPAUSE -dBATCH -sOutputFile = outXX.pdf -dFirstPage = '. \t \t \t \t $ start. ' -dLastPage = '. $ end.' in.pdf – user1171194

+2

그것이 무엇이든간에, 나는 그것을 이해하지 못한다. 그러나 당신의 위의 답에서 임시 디렉토리가 꽉 찼다 고 말하는 것 같습니까? 그렇다면 반드시 더 큰 디렉토리를 사용해야합니다. 마음에 드는 또 다른 가능성은 동시 Ghostscript 쓰레드를 실행하고, 모두 같은 임시 디렉토리에 쓰는 것입니다. 그렇게하면 같은 임시 파일 이름을 다시 사용하려고 시도하기 때문에 실패합니다 *. Ghostscript (pdfwrite 장치 사용)를 실행하려면 각 프로세스마다 별도의 임시 디렉토리를 지정해야합니다. – KenS

+0

문제는 대용량 파일입니다. 162 페이지의 PDF를 분할하는 방법. Dir TEMP는 작업 할 때 가득 찰니다. TMPDIR, TMP 및 TEMP를 다른 곳으로 변경하지만 24 페이지가 새로운 TMPDIR에서 작동하지만 162 페이지의 PDF는 작동하지 않습니다. – user1171194

관련 문제