es meine Codes ist, extraCmds := []string{"-q", "-dBATCH", "-dNOPAUSE", "-dSAFER", "-sDEVICE=pcxmono", fmt.Sprintf("-r%v", dpi), // -r600 "-sOutputFile=BBB%03d.pcx", "WO-BC-CARE.pdf", } s, _ := exec.Command("gs", extraCmds...).Output() reslt := string(s) log.Println(reslt)
immer Fehler beim Aufruf ghostscrip von exec.Command von golang
zeigen Fehler, 2017/03/21 09:24:48 Error: /undefinedfilename in --findlibfile-- Operand stack: () Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval- - 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- fa lse 1 %stopped_push --nostringval-- 1864 1 3 %oparray_pop --nost ringval-- Dictionary stack: --dict:1200/1684(ro)(G)-- --dict:0/20(G)-- --dict:78/200(L)-- Current allocation mode is local Last OS error: No such file or directory
klingt nicht ps Bibliothek finden, aber nicht wissen, wie zu setzen gs Pfad mit exec.Command. danke für den Vorschlag im Voraus.
[Update], löste ich das Problem über die Aktualisierung von gs von 9.20 bis 9.21. Ein weiterer Fallstrick benötigt Aufmerksamkeit während der Verwendung von Golang exec.Command. Es ist kein Zitat in Parametern, sagen "BBB%03d.pcx"
. Sie müssen stattdessen BBB%03d.pcx
verwenden.
danke. was ich benutze ist gs 9.20 auf window os. (Ich kopiert gswin32c in gs :)) – Mujiang
und laden Sie die Kopie von der offiziellen Website https://ghostscript.com/download/gsdnld.html. irgendwelche Informationen, die Sie wollen? – Mujiang
Nun, die Windows-Version von Ghostscript hat alle Ressourcen in die Binärdatei kompiliert, so dass es keine fehlende Bibliotheksdatei sein kann. Also zurück zu; 'drücke die Befehlszeile aus, die du an execommand übergibst, und versuche das über die Windows-Befehlsshell'. Wenn das Ihnen einen Fehler gibt, können Sie einen Link auf die Eingabedatei und die Befehlszeile und ich kann es versuchen. Wenn es dir keinen Fehler gibt, dann ist es etwas mit 'exec.Command' zu tun, mit dem ich dir nicht helfen kann. Oh, ich würde wahrscheinlich auch nicht '-q' verwenden, da das Unterdrücken von Informationen beim Debuggen nicht hilfreich ist. – KenS