Wenn ich nun aber mehrere Figures als pdf drucken will benutze ich eine FOR-Schleife um die ps-Datei zu erstellen:
Code:
for i = 1:3 print(['-f', num2str(i)], '-dpsc', FileName, '-append');
end
ps2pdf('psfile', char(FileName), 'pdffile', char(FileNamePDF), 'gspapersize','a4');
Bei einer Figure klappt der Druck wunderbar. Doch bei mehreren Figures kann ich die erstellte ps-Datei nicht mit Irfan View öffnen. Da kommt ein Ghostscript-Error. Und der PDF-Druck mit ps2pdf funktioniert ebenfalls nicht.
IrfanView ist upgedatet, sowie alle Plugins installiert, Ghostscript ebenfalls.
Verfasst am: 13.12.2012, 09:52
Titel: Re: Mehrere Figures in pdf drucken
Hallo Slamdunker23,
Was genau is "ps2pdf"?
GhostScript updaten bringt nur dann etwas, wenn auch die neueste Version aufgerufen wird, und nicht die, die mit Matlab mitinstalliert wird.
Welcher GhostScript-Fehler erscheint denn und was bedeutet "funktioniert nicht" genau?
Decode Error!
Can't Load Ghostscript or Ghostscript error.
Install Ghostscript from:
...
Das erscheint, wenn ich die erstellte ps-Datei mit IV öffnen will.
Wenn ich versuche diese ps-Datei mit ps2pdf in Matlab umzuwandeln erscheint folgender Fehler:
??? Error using ==> ps2pdf at 141
Problem converting PostScript. System returned error: -1.Failed to convert to output format; Ghostscript
status: -100.Error: /undefined in -7106MRefined
Operand stack:
10115 7106 -10067
Execution stack:
Wie schon gesagt, wenn die ps-Datei nur eine Figure enthält, klappt alles wunderbar!
Oder habt ihr mir eine bessere Variante, wie ich mehrere Figures in Matlab in ein PDF drucken kann?
Vielen Dank!
Gruß, Daniel
gast1
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 21.12.2012, 10:13
Titel: gleiches Problem wie slamdunker23
habe genau das gleiche problem wie slamdunker23.
es funktioniert nur wenn ich den print-befehl zuerst ohne "ps2pdf" laufen lasse und somit der "zwischenspeicher" in current folder mit der postscript datei gefüllt ist.
bitte MATLAB helft uns weiter!
Error using ps2pdf (line 141)
Problem converting PostScript. System returned error: -1.Failed to convert to output format; Ghostscript
status: -100.Error: /undefinedfilename in (tempScript.ps)lename
Ich könnte mir vorstellen, dass der erste Durchlauf, für das erste Bild OHNE append erfolgen muss.
Denn append sagt ja aus, dass die DAtei schon existiert - tut sie aber nicht, du erstellst sie ja gerade erst.
Code:
print('-f1', '-dpsc', FileName);
for i =2:3 print(['-f', num2str(i)], '-dpsc', FileName, '-append');
end
ps2pdf('psfile', char(FileName), 'pdffile', char(FileNamePDF), 'gspapersize','a4');
ich habe 2 for-Schleifen.
momentan steht das "ps2pdf" zwischen beiden for-schleifen (weil ich eben dort die charts abfange)
komischerweise, wenn ich das "ps2pdf" hinter die beiden for-Schleifen setze, funktionert es. aber dann habe ich nicht die gewünschten charts, weil ich aus der 2. for schleife (j) übergehe.
gast1
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 21.12.2012, 11:37
Titel:
... bzw. ich übergehe die Charts nicht, sie werden halt alle nach den for.schleifen in ein einziges PDF-File geschrieben.
vielleicht kann ich mich damit arrangieren..
gast1
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 21.12.2012, 12:25
Titel:
wenn ich zwischen die beiden for-schleifen eine leeres-Figure einbaue und speicher, funktioniert es einwandfrei. nur habe ich dann eben auf der ersten seite immer einen leeren chart.
plot(0);
saveas(gcf, 'tempScript', 'ps');
close all;
wäre es möglich das File 'tempScript' danach wieder zu leeren aber nicht zu löschen?
vielen Dank im Voraus für Deine/Eure Hilfe.
Das funktioniert seit Matlab 5.3 unter Windows 2000 bis Matlab 2011b unter Windoes 7/64 zuverlässig (eine neuere Version habe ich nicht).
Gruß, Jan
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.