Startseite › Foren › Deutsches LiveCode-Forum › printing to pdf
Schlagwörter: printing pdf
- Dieses Thema hat 17 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 2 Jahren von Klaus Major.
-
AutorBeiträge
-
-
September 18, 2022 um 18:11 Uhr #46545
Hallo zusammen, ich bins schon wieder….
Ich möchte eine Karte als Pdf-Datei speichern. Dies funktioniert bei mir auf dem PC (Windows mit Livecode installiert) auch als Standalone:
Answer folder put it into tPfad put tPfad & "/UserGuide.pdf" into tPDFPath open printing to pdf tPDFPath print card 1 of this stack into 0,0,575,800 close printing
Sobald ich die Standalone auf dem Laptop oder im Geschäft laufen lasse, funktioniert dies nicht mehr. Wenn ich dort den Fehler «mit try & catch error» anzeigen lasse wird mir die Fehlermeldung 709 bei der Zeile «open printing to pdf tPDFPath» angezeigt.
Wenn ich mit «answer Printer» den Drucker Abfrage und von dort aus die Pdf erstelle, kann ich den Pfad wählen und die Pdf wird nicht gespeichert.
Wäre toll wenn jemand hierfür eine Lösung weiss. Ich möchte später den ‘Answer Folder’Befehl mit einem festen Pfad als Variable ersetzen
Vielen Dank und Grüsse
Jens -
September 18, 2022 um 18:45 Uhr #46547
Hi Jens,
die Syntax ist korrekt.
Was sagt denn THE RESULT?... open printing to pdf tPDFPath print card 1 of this stack into 0,0,575,800 if the result <> EMPTY then answer the result end if ...
Eventuell hat Deine App keine Schreiberlaubnis im gewählten Ordner!?
Ich möchte später den ‘Answer Folder’Befehl mit einem festen Pfad als Variable ersetzen.
Hm, “feste” Pfade sind eigentlich nur mit den diversen -> specialfolderpath(xxx)
Codes machbar. Welchen “festen Pfad” hast Du denn im Auge?Gruß
Klaus
-
September 18, 2022 um 21:50 Uhr #46549
Hallo Klaus
THE RESULT sagt nichts – es kommt keine Meldung o.ä.
Im Geschäft weiss ich nicht in wie weit die Schreibrechte hier zum tragen kommen. Mit Makros in Excel kann ich ohne weiteres PDF-Dateien erstellen und speichern.
Bevor eine PDF erstellt und gespeichert wird, wird erst ein entsprechender Ordner generiert, in welchen die Datei dann hin gehört – das zumindest funktioniert. Und auf meinem Laptop sollte ich als Admin ja die Schreibrechte haben, dort wird aber auch nur der Ordner erstellt, nicht aber die PDF.Bei den “festen” Pfaden habe ich mich falsch ausgedrückt, sorry. Es sind die Pfade und PDF Namen von meinem letzten Post;) Der Pfad wird anfangs einmal hinterlegt, und sollte dann an sich nicht mehr geändert werden.
Hier, an dem PC funktioniert alles wie es soll (LC ist installiert, aber wird nicht geöffnet…)
Gruss
Jens -
September 18, 2022 um 21:55 Uhr #46550
Hm, mal die Reihenfolge ändern und den Pfad anzeigen lassen:
... answer tPDFPath open printing to pdf tPDFPath if the result <> EMPTY then answer the result end if print card 1 of this stack into 0,0,575,800 ...
Hier, an dem PC funktioniert alles wie es soll (LC ist installiert, aber wird nicht geöffnet…)
Was? Wie?
Warum sollte LC nicht oder doch geöffnet werden?
Sie sehen mich ratlos!? 😀 -
September 18, 2022 um 22:09 Uhr #46552
🙂
Ich hoffe ich drücke mich jetzt richtig aus:
Ich meinte die IDE(?). Also da wo ich die Programme schreibe. Dies ist hier am PC installiert. Wenn ich die Standalone hier starte öffne ich ja nur das Programm und nicht die LiveCode(IDE).
Die Standalone kann hier die PDF-Datei speichern.Im Geschäft habe ich kein LiveCode installiert, nur das von mir erstellte Programm.
Hier wird keine PDF_Datei gespeichertAuf dem Laptop habe ich zwar LiveCode installiert, dies startet aber seit dem letzten Windowsupdate nicht mehr. Auch hier wird keine PDF-gespeichert.
Ich hoffe dies war nun verständlicher
Grüsse
JensPS: Die Reihenfolge probiere ich gleich morgen aus…
-
September 19, 2022 um 10:39 Uhr #46561
Manchmal funktioniert der Automatismus zum inkludieren von Externals
und Widgets nicht, daher mal die “Inclusions” manuell auswählen in den
“Standalone Applicatiuon Settings”.Eventuell fehlt bei Deiner Standalone der PDF Printer?
-
September 19, 2022 um 19:10 Uhr #46576
Hallo Klaus
Leider hat alles nichts gebracht. In den Settings habe ich den Hacken bei PDF Printer noch nachträglich gesetzt, aber dies hatte keine Wirkung.
Zusätzlich habe ich es noch auf dem Laptop meiner Frau versucht, auch ohne Erfolg (windows, sie ist Admin)
Ich habe nun einen kleinen Stack geschrieben:on mouseDown pButtonNumber put specialFolderPath("desktop") & "/TestPDF.pdf" into tPDFPath try open printing to pdf tPDFPath print card 1 of this stack into 0,0,300,300 close printing catch Fehler answer fehler end try end mouseDown
Nun wird mir die Fehlermeldung “709,4,1” ausgegeben
Gruss
Jens -
September 19, 2022 um 19:26 Uhr #46577
Hm…
Fehler 709 = Printing: Unknown destinationKeine Schreibrechte?
Probiere mal, eine kleine Textdatei zu schreiben zum testen:... put specialFolderPath("desktop") & "/el_testo.txt" into tPath put "Ein Test" into url("file:" & tPath) answer the result ...
Falls der Answer Dialog nicht leer ist, gibt es vielleicht einen Hinweis.
Und bitte unbedingt auch den kompletten Pfad ANSWERn lassen, einfach zur Sicherheit! -
September 19, 2022 um 19:30 Uhr #46579
Und auch mal versuchen, die PDF in z.B. specialfolderpath(“documents”) zu speichern.
-
September 19, 2022 um 20:57 Uhr #46582
Das letzte kleine Skript hatte schon den specialFolderPath(“desktop”) als Speicherort hinterlegt.
Die “el_Testo.txt” Datei wird erstellt (im Geschäft & auf dem Laptop sowie auf dem PC)
Der Answer Dialog war überall leer.Was meintest Du genau mit “Und bitte unbedingt auch den kompletten Pfad ANSWERn lassen, einfach zur Sicherheit!”? – stände dies in dem ANSWER THE RESULT – Fenster?
Schreibrechte sollte ich auf meinem Laptop ja als Admin haben, genauso wie meine Frau auf ihrem.
…Ich habe jetzt das kleine PDF-Skript noch einem Kollegen geschickt, ich bin gespannt, es bei ihm funktioniert…
Gruss
Jens -
September 19, 2022 um 21:33 Uhr #46583
OK, ich versuche halt, nach jedem Strohhalm zu greifen…
Was meintest Du genau mit “Und bitte unbedingt auch den kompletten Pfad ANSWERn lassen, einfach zur Sicherheit!”? – stände dies in dem ANSWER THE RESULT – Fenster?
Damit meinte ich nur eine optische Kontrolle, ob irgend etwas daran offensichtlich falsch ist.
-
September 19, 2022 um 22:08 Uhr #46586
Hi Klaus
…ich hoffe es treiben noch ein paar Strohhalme vorbei 😉
Ich habe mir kurz noch die Pfade rausgeschrieben:
Geschäft: //bsfs05/home$/MeinName/Desktop/el_testo.txt
Laptop: C:/Users/MeinName/Desktop/el_testo.txt
PC: C:/Users/MeinName/Desktop/el_testo.txtIch bin mal auf das Feedback meines Kollegen gespannt…
-
September 20, 2022 um 18:38 Uhr #46611
Auch auf dem PC meines Kollegen hat es nicht funktioniert,
er hat auch die gleiche Fehlermeldung (709,4,1) bekommen! -
September 20, 2022 um 18:44 Uhr #46612
Hm, schick “das kleine PDF-Skript” rüber… 🙂
-
September 20, 2022 um 19:21 Uhr #46615
Danke 🙂
-
September 20, 2022 um 19:28 Uhr #46616
Bitte! “Leider” klappt es hier natürlich wie erwartet, keine Probleme…
-
September 25, 2022 um 20:09 Uhr #46751
So, ich habe nun endlich die Lösung gefunden.
Und zwar wird, wenn eine Standalone erstellt wird, im Windowsordner eine «revpdfprinter.dll» erstellt. Diese .dll-Datei muss sich zusammen mit dem Programm im selben Ordner befinden, dann funktioniert es!
Auf meinem PC, and dem ich die Stanalone schreibe und erstelle, braucht es die .dll nicht, dort kann ich das fertige Programm auf den Desktop ziehen und es läuft. Sobald ich einen anderen Computer nehme (Geschäft, Laptop) muss diese .dll dabei sein.
@Klaus: Danke für Deine Hilfe und Geduld. Da Du den ganzen Ordner hochgeladen hast, bin ich erst auf die Idee gekommen…Weiss vlt. von euch, ob man diese .dll in das Standalone beim erstellen integriert kann?!
Grüsse
Jens -
September 26, 2022 um 15:15 Uhr #46761
Ah, die DLL!?
Wär ich nie drauf gekommen… 😎Weiss vlt. von euch, ob man diese .dll in das Standalone beim erstellen integriert kann?!
Leider geht das nicht…
Die Schotten sollten solche Funktionalität direkt in die Engine einbauen,
das wäre super, naja, kommt vielleicht irgendwann noch mal…
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.