
Ich möchte EPS-Bilder einbinden, die aus Matlab-Plots generiert wurden (PDF wird von Matlab als ganze Seite generiert, daher EPS), die Konvertierung schlägt jedoch fehl und hinterlässt ein leeres PDF-Bild. Die Meldung lautet:
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
Der Inhalt der Protokolldatei
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
Ich habe vor Kurzem Miktex installiert und aktualisiert und mit LuaLatex kompiliert.
Hier ist der Inhalt der EPS, falls erforderlichhttps://pastebin.com/1Rq86vVC
Was ist daran falsch? Ich habe keine Ahnung, was ich dagegen tun soll.
Aktualisieren
Zunächst einmal möchte ich sagen, dass ich kompiliere mit --shell-ecape
(von TexStudio)
Process started: lualatex.exe --shell-escape -synctex=1 -interaction=nonstopmode
Ich habe den Vorschlag von Christian Shenk ausprobiert. Der Befehl lautet
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
Ich habe versucht, es im Befehlsprozessor auszuführen. Es erstellt eine 0-Byte-PDF-Datei und bleibt hängen.
Aktualisierung 2
Ich habe ausgeführt
epstopdf --outfile=images/kkk-eps-converted-to.pdf images/kkk.eps
Und ich habe zusätzliche Informationen erhalten
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
Ich habe keine Ahnung, wie ich das beheben kann. Es wird etwas über „Helvetica-BoldOblique“ erwähnt, aber die Bilder verwenden diese Schrift nicht, sondern normale Helvetica.
Antwort1
- Über
-n
die Option
Christian schlug vor, die Option zu verwenden, -n
um Einblick in den verwendeten Befehl zu erhalten, z. B.
epstopdf -n --outfile=images/kkk-eps-converted-to.pdf images/kkk.eps
Was du hast ist
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
und es blieb hängen, weil es auf die Eingabedatei/den Eingabestream wartete (Lektion hier gelernt:https://github.com/MiKTeX/miktex/issues/393#issuecomment-543080026).
Also, laufen
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
wird tun.
Error: /invalidfont in /findfont
Ich vermute, Sie haben die erforderlichen Schriftarten nicht in Ihrem MiKTeX installiert. Stellen Sie sicher, dass Sie alle hier genannten Pakete habenhttps://github.com/MiKTeX/miktex-packaging/issues/112installiert haben, und versuchen Sie es erneut.
EDIT: Ich hatte keine Probleme mit der Konvertierung Ihrer Datei. Dann habe ich nur helvetic
das Paket deinstalliert und bekam den folgenden Fehler:
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
Daher helvetic
war ein fehlendes Paket die Hauptursache Ihres Problems.
Ich habe auch ein Problem erstellt (eigentlich einen Vorschlag für eine mögliche Verbesserung):https://github.com/MiKTeX/miktex/issues/429.
Antwort2
Ich habe dieses Problem gelöst:
Schritt 1:Entfernen Sie das gesamte MikTeX auf Ihrem Computer über die Systemsteuerung, nachdem Sie den gelöschten Ordner mit dem Namen MikTeX in C:\Programme (x86) entfernt haben, um Fehler beim Zurücksetzen aufgrund des gleichnamigen Ordners zu vermeiden (die Deinstallation ist ohne Neustart des Computers abgeschlossen)
Schritt 2:Installieren Sie MikTeX unten neu (Sie müssen keine Programm-Editoren wie Texstudio, Texmaker, Viettex usw. installieren), dieser Fehler ist auf die Grundlage von MikTeX zurückzuführen
Link zum Herunterladen der MikTeX-Datei: Klicken Sie hierHier
Nach dem Download entpacken Sie die Installationsdatei mit dem Namen setup-2.8.3553.exe im Verzeichnis MikTeX /setup
Schritt 3:Installieren Sie die Datei setup-2.8.3553.exe wie gewohnt und denken Sie daran, „Complete MikTeX“ anzukreuzen, um die Vollversion zu installieren.
Hinweis zur Anwendung:
Hinweis 1: Die Reihenfolge der bestellten Pakete ist von oben nach unten wie folgt zu ordnen:
\usepackage {graphicx}
\usepackage {epstopdf}
\ usepackage {Unterfigur}
Hinweis 2: Stellen Sie vor dem Ausführen von TeX-Dateien sicher, dass Sie die beschädigten PDF-Dateien gelöscht haben, da zuvor ein Fehler aufgetreten ist (lassen Sie einfach eine EPS-Bilddatei übrig).
Kopierrecht:https://nhcan.wordpress.com/2020/04/05/loi-khi-bien-dich-file-latex-co-hinh-anh-dinh-dang-eps/
Antwort3
Dieses Problem ist auf ein bekanntes Problem mit dem aktuellen MiKTeX-Paket zurückzuführen. Siehe https://github.com/MiKTeX/miktex-packaging/issues/112
Ein möglicher Workaround, der bei mir funktioniert hat, ist die Installation des Pakets „helvetica“ (plus aller anderen Schriftarten, die vom Matlab-Code verwendet werden) mithilfe der MiKTeX-Konsole.