Matlab 플롯에서 생성된 EPS 이미지를 포함하고 싶습니다(PDF는 Matlab에서 전체 페이지로 생성되므로 EPS가 발생합니다). 그러나 변환이 실패하고 빈 PDF 이미지가 남습니다. 메시지는 다음과 같습니다.
MiKTeX GPL Ghostscript
9.25: Unrecoverable error, exit code 1
Sorry, but "MiKTeX EPS-to-PDF Converter" did not succeed. The log file hopefully contains the information to get MiKTeX going again: C:\Users\Andrey\AppData\Local\MiKTeX\2.9\miktex\log\epstopdf.log
로그 파일의 내용
2019-12-03 06:29:05,797+0100 INFO epstopdf - starting with command line: epstopdf --outfile=images/kkk-eps-converted-to.pdf images/kkk.eps
2019-12-03 06:29:06,456+0100 FATAL epstopdf - Invalid argument
2019-12-03 06:29:06,457+0100 FATAL epstopdf - Info:
2019-12-03 06:29:06,457+0100 FATAL epstopdf - Source: Libraries\MiKTeX\Core\Stream\FileStream.cpp
2019-12-03 06:29:06,457+0100 FATAL epstopdf - Line: 68
최근 Miktex를 설치 및 업데이트하고 LuaLatex로 컴파일했습니다.
필요한 경우 EPS의 내용은 다음과 같습니다.https://pastebin.com/1Rq86vVC
뭐가 문제야? 나는 그것에 대해 무엇을 해야할지 전혀 모른다.
업데이트--shell-ecape
우선 나는 (TexStudio에서) 컴파일을 하고 싶습니다.
Process started: lualatex.exe --shell-escape -synctex=1 -interaction=nonstopmode
나는 Christian Shenk의 제안을 시도했습니다. 명령은
mgs.exe -q -sDEVICE=pdfwrite -dSAFER -dAutoRotatePages=/None -dPDFSETTINGS=/prepress -dMaxSubsetPct=100 -dSubsetFonts=true -dEmbedAllFonts=true -sOutputFile=images/kkk-eps-converted-to.pdf - -c quit
명령 프로세서에서 실행해 보았습니다. 0바이트 PDF 파일을 생성하고 중단됩니다.
업데이트 2
나는 처형했다
epstopdf --outfile=images/kkk-eps-converted-to.pdf images/kkk.eps
그리고 추가 정보를 얻었습니다
Error: /invalidfont in /findfont
Operand stack:
Helvetica-BoldOblique
Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-
- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 2015 1 3 %oparray_pop 2014 1 3 %oparray_pop --nostringval-- 1998 1 3 %oparray_pop 1884 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- 1967 1 3 %oparray_pop
Dictionary stack:
--dict:973/1684(ro)(G)-- --dict:0/20(G)-- --dict:123/200(L)--
Current allocation mode is local
어떻게 고칠 수 있는지 전혀 모르겠습니다. "Helvetica-BoldOblique"에 대해 언급되어 있지만 이미지에서는 이를 사용하지 않고 일반 Helvetica를 사용합니다.
답변1
-n
옵션 정보
-n
Christian은 사용된 명령에 대한 통찰력을 얻기 위해 옵션을 사용할 것을 제안했습니다 .
epstopdf -n --outfile=images/kkk-eps-converted-to.pdf images/kkk.eps
당신이 얻은 것은
mgs.exe -q -sDEVICE=pdfwrite -dSAFER -dAutoRotatePages=/None -dPDFSETTINGS=/prepress -dMaxSubsetPct=100 -dSubsetFonts=true -dEmbedAllFonts=true -sOutputFile=images/kkk-eps-converted-to.pdf - -c quit
입력 파일/스트림을 기다리기 때문에 중단되었습니다(여기에서 배운 교훈:https://github.com/MiKTeX/miktex/issues/393#issuecomment-543080026).
그래서 달리는 중
mgs.exe -q -sDEVICE=pdfwrite -dSAFER -dAutoRotatePages=/None -dPDFSETTINGS=/prepress -dMaxSubsetPct=100 -dSubsetFonts=true -dEmbedAllFonts=true -sOutputFile=images/kkk-eps-converted-to.pdf - -c quit < images/kkk.eps
할 것입니다.
Error: /invalidfont in /findfont
MiKTeX에 필요한 글꼴이 설치되어 있지 않은 것 같습니다. 여기에 언급된 패키지가 모두 있는지 확인하세요.https://github.com/MiKTeX/miktex-packaging/issues/112설치하고 다시 시도해 보세요.
편집: 파일 변환에 문제가 없었습니다. 그런 다음 패키지만 제거했는데 helvetic
오류가 발생했습니다.
Error: /invalidfont in /findfont
Operand stack:
Helvetica-BoldOblique
Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 2015 1 3 %oparray_pop 2014 1 3 %oparray_pop --nostringval-- 1998 1 3 %oparray_pop 1884 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- 1967 1 3 %oparray_pop
Dictionary stack:
--dict:973/1684(ro)(G)-- --dict:0/20(G)-- --dict:123/200(L)--
Current allocation mode is local
Last OS error: No such file or directory
MiKTeX GPL Ghostscript 9.25: Unrecoverable error, exit code 1
Sorry, but "MiKTeX EPS-to-PDF Converter" did not succeed.
The log file hopefully contains the information to get MiKTeX going again:
C:\Users\user\AppData\Local\MiKTeX\2.9\miktex\log\epstopdf.log
따라서 누락된 helvetic
패키지가 문제의 근본 원인이었습니다.
또한 문제를 만들었습니다(실제로는 가능한 개선을 위한 제안).https://github.com/MiKTeX/miktex/issues/429.
답변2
나는 이 문제를 해결했습니다:
1 단계:C:\ Program files(x86)에서 MikTeX라는 삭제된 폴더를 제거한 후 제어판을 사용하여 컴퓨터에 존재하는 전체 MikTeX를 제거하면 동일한 이름의 폴더로 인해 재설정 시 오류가 발생하지 않습니다(컴퓨터를 다시 시작하지 않고도 제거가 완료됨).
2 단계:아래 MikTeX를 다시 설치하세요(texstudio, Texmaker, viettex 등의 프로그램 편집기를 설치할 필요가 없습니다). 이 오류는 MikTeX 기반 때문에 발생합니다.
MikTeX 파일 다운로드 링크: 클릭여기
다운로드 후 압축을 풀면 됩니다. MikTeX /setup 디렉토리에 setup-2.8.3553.exe라는 설치 파일이 있습니다.
3단계:평소와 같이 setup-2.8.3553.exe 파일을 설치하고 전체 버전을 설치하려면 Complete MikTeX를 선택해야 합니다.
사용 시 참고 사항:
참고 1: 패키지 선언 순서는 위에서 아래로 다음과 같이 주문됩니다.
\ 사용패키지 {graphicx}
\ 사용패키지 {epstopdf}
\ 사용패키지 {하위 그림}
참고 2: TeX 파일을 실행하기 전에 실행 오류로 인해 출력된 손상된 PDF 파일을 삭제했는지 확인하십시오(꼬리 .eps 이미지 파일만 남겨두기).
복사 권리:https://nhcan.wordpress.com/2020/04/05/loi-khi-bien-dich-file-latex-co-hinh-anh-dinh-dang-eps/
답변3
이 문제는 현재 MiKTeX 패키지의 알려진 문제로 인해 발생합니다. 보다 https://github.com/MiKTeX/miktex-packaging/issues/112
나에게 도움이 된 가능한 해결 방법은 MiKTeX 콘솔을 사용하여 "helvetica" 패키지(및 Matlab 코드에서 사용되는 다른 글꼴)를 설치하는 것입니다.