| | |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| | |
 | SOLIDWORKS NEXT | Episode 3: Von CAD Zu Code - Nahtlose Konstruktion und virtuelle Roboterprogrammierung, ein Webinar am 15.09.2026
|
|
Autor
|
Thema: PDF-Datei erstellen (1845 mal gelesen)
|
KMassler Ehrenmitglied V.I.P. h.c. CAD Admin + Mädchen für Alles...

 Beiträge: 2675 Registriert: 06.11.2000 SolidWorks Start 1999 ** CSWP 01/2008 ** ------------------ Zuletzt beruflich: - SWX2020 SP5; - SAP/PLM+ECTR; - DriveWorks Pro; - Programmierung: VBA, aktuell Visual Studio 2022/VB.Net ------------------ ab 2024 (privat): Onshape und anderes
|
erstellt am: 15. Mai. 2002 14:51 <-- editieren / zitieren --> Unities abgeben:         
Hallöchen mal wieder...  ich hätt' da mal ein Problem: Ich habe mir mit GhostScript und GhostView sowie einem postscript- Druckertreiber für unseren Plotter eine Umgebung geschaffen, mit der ich aus beliebigen Anwendungen heraus PDF-Dateien erstellen kann (Drucken in PS-Datei, umwandeln mit GhostScript über Explorer-Kontext-menü), die vorgehensweise ist sehr schön beschrieben in http://www.rvs.uni-hannover.de/people/einhorn/makepdf/ . So weit, so gut. Im Prinzip funktioniert auch alles . Leider muß man aber immer im Drucker-Dialog die Papiergröße und evtl. die Ausrichtung einstellen, ekelhaft lästig . Nun habe ich versucht, ein VB-Makro zu erstellen, das mir diese Arbeit abnimmt und immer das aktuelle Blatt in der richtigen Größe in eine PS-Datei druckt. Es gelingt mir aber nicht, die Papiergrösse einzustellen! Das Programm sieht bisher so aus (mit fest verdrahteten Parametern): ... Sub main() Set swApp = CreateObject("SldWorks.Application") Set Part = swApp.ActiveDoc printer = "PS-File: HP DesignJet 750C/PS" printFileName = "c:\test_SWP.ps" ' Setup the printer and print Part.printsetup(swPrintOrientation) = vbPRORLandscape 'Papersize 8 = A3, Papersize 9 = A4, aber A0 bis A2? Part.printsetup(swPrintPaperSize) = 8 Part.PrintOut2 1, 1, 1, True, printer, 1#, True, printFileName End Sub ... die PS-Datei wird auch erstellt, ich finde aber ums Verr... nicht die richtigen Werte für die Papiergrössen A0 bis A2 bei dem Befehl Part.printsetup(swPrintPaperSize) = ??? Auch mit dem Wert 256 für benutzerdefinierter Größe und den anschließenden Zeilen (egal mit welchen Werten) Part.printsetup(swPrintPaperWidth) = 841 Part.printsetup(swPrintPaperLength) = 594 kommt nix dabei raus. Immer wenn ich Werte nehme, mit denen VB oder SWX nix anfangen kann, habe ich dann die Papiergröße Letter (die gehört sowieso verboten). Weiß zufällig jemand die richtigen Werte für die fehlenden Papiergrößen oder eine andere Lösung für mein Problem? ------------------ Klaus Massler Alois Kober GmbH http://www.al-ko.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)

 Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 15. Mai. 2002 15:46 <-- editieren / zitieren --> Unities abgeben:          Nur für KMassler
|
KMassler Ehrenmitglied V.I.P. h.c. CAD Admin + Mädchen für Alles...

 Beiträge: 2675 Registriert: 06.11.2000 SolidWorks Start 1999 ** CSWP 01/2008 ** ------------------ Zuletzt beruflich: - SWX2020 SP5; - SAP/PLM+ECTR; - DriveWorks Pro; - Programmierung: VBA, aktuell Visual Studio 2022/VB.Net ------------------ ab 2024 (privat): Onshape und anderes
|
erstellt am: 13. Jun. 2002 13:58 <-- editieren / zitieren --> Unities abgeben:         
Hallo Stefan, danke für den Tipp! Die Auswahl des Papierformates etc. klappt jetzt, aber..! Seltsames Phänomen: Wenn ich eine Zeichnung neu öffne und das Programm laufen lasse, wird kein Ausdruck bzw. keine PS-Datei erzeugt-Ein Fehler tritt auch nicht auf. Wenn ich bei der Zeichnung einmal den Druck-Dialog öffne und wieder schließe (ohne zu drucken oder irgend etwas einzustellen) und anschließend das Programm wieder laufen lasse, dann funktionierts und die PS-Datei wird erstellt-in der richtigen Größe, Ausrichtung etc.-und zwr beiliebig oft, bis ich wieder eine andere Zeichnung öffne, dann ist es wieder aus. Zum Drucken verwende ich den Befehl Part.PrintOut2 1, 1, 1, False, printer, 0#, True, printFileName printer enthält den Druckername und printFilename den Namen der zu stellenden PS-Datei. Auch wenn ich vor dem 'part.printout2'-Befehl ein 'Part.PrintDirect' einfüge, funktioniert der 'part.printout2'-Befehl- nur muß ich dann natürlich die Frage nach dem Dateinamen wegklicken, also nicht praktikabel. Irgendetwas muß bei mir fehlen, was mit dem Öffnen und Schließen des Druck-Dialoges passiert-ich finde nur nicht, was das sein kann.
------------------ Klaus Massler Alois Kober GmbH http://www.al-ko.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)

 Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 13. Jun. 2002 14:05 <-- editieren / zitieren --> Unities abgeben:          Nur für KMassler
|
KMassler Ehrenmitglied V.I.P. h.c. CAD Admin + Mädchen für Alles...

 Beiträge: 2675 Registriert: 06.11.2000 SolidWorks Start 1999 ** CSWP 01/2008 ** ------------------ Zuletzt beruflich: - SWX2020 SP5; - SAP/PLM+ECTR; - DriveWorks Pro; - Programmierung: VBA, aktuell Visual Studio 2022/VB.Net ------------------ ab 2024 (privat): Onshape und anderes
|
erstellt am: 13. Jun. 2002 14:16 <-- editieren / zitieren --> Unities abgeben:         
Wow das flutscht heute! Ich komme ja mit Lesen und Schreiben kaum noch nach! Herzlichen Dank (schon wieder) für den Hinweis. Eigentlich wollte ich noch 1-2 Wochen warten bis ich SP 3.0 einbaue, aber im Moment häufen sich die Gründe für ein Update. Mal sehen, wann ich mich dazu aufraffe (noch dazu, wo das Wetter jetzt endlich viel zu schön ist, um am Wochenende noch arbeiten zu gehen). Ich melde mich auf jeden Fall, wenn ich weiß, ob das Problem damit gelöst ist. CU ------------------ Klaus Massler Alois Kober GmbH http://www.al-ko.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KMassler Ehrenmitglied V.I.P. h.c. CAD Admin + Mädchen für Alles...

 Beiträge: 2675 Registriert: 06.11.2000 SolidWorks Start 1999 ** CSWP 01/2008 ** ------------------ Zuletzt beruflich: - SWX2020 SP5; - SAP/PLM+ECTR; - DriveWorks Pro; - Programmierung: VBA, aktuell Visual Studio 2022/VB.Net ------------------ ab 2024 (privat): Onshape und anderes
|
erstellt am: 28. Jun. 2002 10:25 <-- editieren / zitieren --> Unities abgeben:         
|
ThiloT Mitglied Dipl.-Ing.

 Beiträge: 50 Registriert: 16.10.2000
|
erstellt am: 28. Jun. 2002 11:05 <-- editieren / zitieren --> Unities abgeben:          Nur für KMassler
Klappt eigentlich das Einbetten von TrueType-Fonts mit Ghostview? Soweit ich weiß werden die Schriftzeichen bei der Ausgabe über den Druckertreiber in Bitmaps umgewandelt, und im PDF-Dokument dann wieder zusammengesetzt. War z.B. bei älteren Versionen von NIKNAK so. Mittlerweile (heißt jetzt Jaws PDF) kann es jedoch die Zeichen-Bitmaps wieder in TT-Fonts zurückersetzen - sprich wenn ich die PDF-Datei zoome ist die Schrift nicht "pixelig". Kann Ghostview das auch? Gruß, Thilo
------------------ CAD, FEM: http://www.acesgmbh.de SolidWorks-Tools: http://www.ecocom.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KMassler Ehrenmitglied V.I.P. h.c. CAD Admin + Mädchen für Alles...

 Beiträge: 2675 Registriert: 06.11.2000 SolidWorks Start 1999 ** CSWP 01/2008 ** ------------------ Zuletzt beruflich: - SWX2020 SP5; - SAP/PLM+ECTR; - DriveWorks Pro; - Programmierung: VBA, aktuell Visual Studio 2022/VB.Net ------------------ ab 2024 (privat): Onshape und anderes
|
erstellt am: 28. Jun. 2002 11:09 <-- editieren / zitieren --> Unities abgeben:         
Hallo Thilo, keine Ahnung. Aber das läßt sich ja feststellen: Schick mir doch irgendein Dokument mit TrueType-Fonts (Word, Excel... aber bitte ohne Macros), ich erzeuge dann mit GS die PDF-Datei und schicke sie Dir zurück. ------------------ Klaus Massler Alois Kober GmbH http://www.al-ko.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ThiloT Mitglied Dipl.-Ing.

 Beiträge: 50 Registriert: 16.10.2000
|
erstellt am: 28. Jun. 2002 11:59 <-- editieren / zitieren --> Unities abgeben:          Nur für KMassler
Nimm doch einfach eine X-beliebige Zeichnungsvorlage von SolidWorks und setze da eine Anmerkung rein. Am besten 3x kopieren und den Kopien andere Schriftarten zuweisen (etwas eher ungewöhliches, Bauhaus, Futura, Comic etc.) und als PDF drucken. Nicht dass ich dir keine Datei zuschicken will, aber sonst habe ich Schriftarten drin die Du nicht auf Deinem PC hast. Dann die PDF-Datei im Acrobat-Viewer mal ranzoomen. Sind die Schriften bei großer Vergrößerung auch noch glatt an den Rändern? Danke! Thilo
------------------ CAD, FEM: http://www.acesgmbh.de SolidWorks-Tools: http://www.ecocom.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KMassler Ehrenmitglied V.I.P. h.c. CAD Admin + Mädchen für Alles...

 Beiträge: 2675 Registriert: 06.11.2000 SolidWorks Start 1999 ** CSWP 01/2008 ** ------------------ Zuletzt beruflich: - SWX2020 SP5; - SAP/PLM+ECTR; - DriveWorks Pro; - Programmierung: VBA, aktuell Visual Studio 2022/VB.Net ------------------ ab 2024 (privat): Onshape und anderes
|
erstellt am: 28. Jun. 2002 12:14 <-- editieren / zitieren --> Unities abgeben:         
Hi Thilo, Zitat: Original erstellt von ThiloT: Nimm doch einfach eine X-beliebige Zeichnungsvorlage von SolidWorks und setze da eine Anmerkung rein. ...
Warum auch einfach, wenns umständlich geht, hätt ich auch dran denken können  Also langer Rede kurzer Sinn: Sieht prima aus (s. Anage)
------------------ Klaus Massler Alois Kober GmbH http://www.al-ko.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ThiloT Mitglied Dipl.-Ing.

 Beiträge: 50 Registriert: 16.10.2000
|
erstellt am: 28. Jun. 2002 13:14 <-- editieren / zitieren --> Unities abgeben:          Nur für KMassler
|