| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Request a special discount on NVIDIA RTX 5000 Ada Generation GPU !, eine Pressemitteilung
|
Autor
|
Thema: FreePDF XP und Makros (8579 mal gelesen)
|
Martin_0103 Mitglied
Beiträge: 181 Registriert: 05.02.2003 3,4 GHz - Quadro 4000 - 12 GB RAM - WIN7 - IV2015
|
erstellt am: 01. Nov. 2004 13:48 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, wir haben vor Tagen auf "FreePDF XP" umgestellt. Im Inventor war der Wunsch per Makro und Button automatisch die PDF Datei 1:1 auf der jeweiligen Blattgröße zu erstellen. Ich habe mich hier im Forum informiert und einen Teil eines Makros von "chefe" verwandt und abgeändert. Hier das neue Makro: Sub AutoSave() 'PDF 1:1 vom aktuellen Blatt End Sub
Public Sub PDF_1_1_vom_aktuellen_Blatt() 'Erzeugt eine PDF Datei 1:1 vom aktuellen Blatt 'Get the active document and check whether it's drawing document If ThisApplication.ActiveDocument.DocumentType = kDrawingDocumentObject Then Dim oDrgDoc As DrawingDocument Set oDrgDoc = ThisApplication.ActiveDocument ' Set reference to drawing print manager ' DrawingPrintManager has more options than PrintManager ' as it's specific to drawing document Dim oDrgPrintMgr As DrawingPrintManager Set oDrgPrintMgr = oDrgDoc.PrintManager ' Set the printer name ' comment this line to use default printer or assign another one oDrgPrintMgr.Printer = "FreePDF XP" End If ' Set the paper size and orientation. On Error Resume Next Select Case oDrgDoc.ActiveSheet.Size Case kA4DrawingSheetSize oDrgPrintMgr.PaperSize = kPaperSizeA4 oDrgPrintMgr.ScaleMode = kPrintCustomScale oDrgPrintMgr.[Scale] = 1 Case kA3DrawingSheetSize oDrgPrintMgr.PaperSize = kPaperSizeA3 oDrgPrintMgr.ScaleMode = kPrintCustomScale oDrgPrintMgr.[Scale] = 1 Case kA2DrawingSheetSize oDrgPrintMgr.PaperSize = kPaperSizeA2 oDrgPrintMgr.ScaleMode = kPrintCustomScale oDrgPrintMgr.[Scale] = 1 Case kA1DrawingSheetSize oDrgPrintMgr.PaperSize = kPaperSizeA1 oDrgPrintMgr.ScaleMode = kPrintCustomScale oDrgPrintMgr.[Scale] = 1 Case kA0DrawingSheetSize oDrgPrintMgr.PaperSize = kPaperSizeA0 oDrgPrintMgr.ScaleMode = kPrintCustomScale oDrgPrintMgr.[Scale] = 1 Case Else ' Andere Werte. Debug.Print "ungültiges Papierformat" GoTo Fettich End Select 'Set the paper orientation On Error Resume Next Select Case oDrgDoc.ActiveSheet.Orientation Case kLandscapePageOrientation oDrgPrintMgr.Orientation = kLandscapeOrientation Case kPortraitPageOrientation oDrgPrintMgr.Orientation = kPortraitOrientation Case Else ' Andere Werte. Debug.Print "ungültige Orientierung" GoTo Fettich End Select Fettich: oDrgPrintMgr.SubmitPrint End Sub Das Ganze funktioniert aber "nur" bis DINA2 - die Formate DINA1 und DINA0 gehen nicht!? Inventor druckt auf ein A4 Hochformat. Wenn ich statt dem Makro über Drucken und dort Eigenschaften Drucker und Blattgröße gehe, geht es.
Ich habe absolut keine Ahnung von VBA, vielleicht ist es eine Kleinigkeit die ich übersehen habe... Dank Euch schon mal für die Hilfe! Gruß Martin
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
VOSTA1 Mitglied techn. Angestellter
Beiträge: 108 Registriert: 23.12.2002
|
erstellt am: 10. Nov. 2004 11:54 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
|
freak-tom Mitglied PDM-/CAD-Admin
Beiträge: 347 Registriert: 07.03.2006 Productstream Professional Pro 2011 / Jobserver / Replikator Productstream Professional Office 2011 Productstream Professional Pro 2010 / Jobserver / Replikator Productstream Professional Office 2010 Solid Works 2018 DraftSight 2019 SAP ECTR
|
erstellt am: 06. Sep. 2006 13:00 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
|
pd65 Mitglied
Beiträge: 83 Registriert: 01.06.2004 Windows 7 pro (64); IV 2009 pro; SP2
|
erstellt am: 06. Sep. 2006 13:14 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
Hallo zusammen, das ganze liegt an FreePDF, auch mit dem Patch für A1 und A0 im Apple-Treiber lässt sich keine dieser Blattgrößen über die Inventor API ansprechen. Im Handbetrieb funktionierts, soviel ich mich erinnern kann. Abhilfe: PDF-Creator, auch Freeware und kann von Haus aus A1 und A0. Im Augenblick drucken wir große PDFs noch mit Skalierung auf A2, wollen aber beim nächsten Inventor-Upgrade umstellen auf PDF-Creator. Grüße Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
VBSpawn Mitglied Programmierer
Beiträge: 514 Registriert: 23.08.2005 Sorgfältige Planung ersetzt niemals pures Glück. -------------- SWX 2005/2006 SE 14-17 AIP 9-11 WinXP+ SP2 --------------
|
erstellt am: 06. Sep. 2006 14:13 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
Hi zusammen, also ich hab das einwenig anders gemacht. Ich lasse mir pro Blatt eine Postscript Datei erzeugen merge die PS-Dateien dann zu einer einzigen Postscript Datei und diese Datei wird dann durch den FreePDF gejagt. Wenn ich micht richtig erinnere hat der ?Apple Color? nämlich kein A0, A1 Format eine OCE 5200 PS schon. Gruß Micha ------------------ http://classicvb.org/petition/ Zitat: Interpunktion und Orthographie des Postings sind frei erfunden. Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rtend12 Mitglied Dipl.-Ing. (FH) Maschinenbau / Konstrukteur
Beiträge: 436 Registriert: 21.07.2004 Catia V5 (R16SP5, B18SP5) VB.Net 2003
|
erstellt am: 06. Sep. 2006 22:33 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
Hallo VBSpawn, ich drucke wie du zuerst in ps-Datei und dann per FreePdf in pdf. Habe bisher den Apple-Treiber verwendet. Hatte bisher max. A2-Zeichnungen, weshalb bei mir das Problem nicht vorkam. Hab jetzt mal den OCE-Treiber probiert, Ergebniss siehe Anhänge. Was läuft da falsch? Größe, Ausrichtung passt, aber die Position auf dem Blatt ist eher suboptimal. Gedruckt mit fullscale. Wenn ich auf bestfit umstelle ist zwar die ganze Zeichnung drauf, dann kann ich aber aus der A2 einen Großteil aussenrum wegschneiden. Hast du eine Ahnung? Kann amn die Druckränder irgendwie einstellen? Gruß Reinhard Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
VBSpawn Mitglied Programmierer
Beiträge: 514 Registriert: 23.08.2005 Sorgfältige Planung ersetzt niemals pures Glück. -------------- SWX 2005/2006 SE 14-17 AIP 9-11 WinXP+ SP2 --------------
|
erstellt am: 07. Sep. 2006 08:17 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
|
rtend12 Mitglied Dipl.-Ing. (FH) Maschinenbau / Konstrukteur
Beiträge: 436 Registriert: 21.07.2004 Catia V5 (R16SP5, B18SP5) VB.Net 2003
|
erstellt am: 07. Sep. 2006 08:59 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
|
VBSpawn Mitglied Programmierer
Beiträge: 514 Registriert: 23.08.2005 Sorgfältige Planung ersetzt niemals pures Glück. -------------- SWX 2005/2006 SE 14-17 AIP 9-11 WinXP+ SP2 --------------
|
erstellt am: 07. Sep. 2006 09:50 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
Hi, also ich verwende die Oce G9050-S PostScript. Dann in einer Schleife für jedes Blatt z.b.: .PaperSize = 14339 'kPaperSizeA2 .ScaleMode = 13827 .[Scale] = 1 Allgemein: .PrintRange = PrintRangeEnum.kPrintSheetRange .SetSheetRange =(Index, Index) .Orientation = kLandscapeOrientation oder kPortraitOrientation mein ergebniss sieht wie die beigefügte Datei aus. achja .. und ich Drucke über Apprentice nicht über VBA Gruß Micha
------------------ http://classicvb.org/petition/ Zitat: Interpunktion und Orthographie des Postings sind frei erfunden. Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rtend12 Mitglied Dipl.-Ing. (FH) Maschinenbau / Konstrukteur
Beiträge: 436 Registriert: 21.07.2004 Catia V5 (R16SP5, B18SP5) VB.Net 2003
|
erstellt am: 07. Sep. 2006 13:03 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
Hallo, mit zwei Druckertreibern geht es. Code:
If blatt.Size = kA0DrawingSheetSize Then oDrgPrintMgr.Printer = "HP DesignJet 750C/PS" oDrgPrintMgr.PaperSize = kPaperSizeA0 ElseIf blatt.Size = kA1DrawingSheetSize Then oDrgPrintMgr.Printer = "HP DesignJet 750C/PS" oDrgPrintMgr.PaperSize = kPaperSizeA1 ElseIf blatt.Size = kA2DrawingSheetSize Then oDrgPrintMgr.PaperSize = kPaperSizeA2 ElseIf blatt.Size = kA3DrawingSheetSize Then oDrgPrintMgr.PaperSize = kPaperSizeA3 ElseIf blatt.Size = kA4DrawingSheetSize Then oDrgPrintMgr.PaperSize = kPaperSizeA4 End If
Anscheinend geht A4-A0 mit einem Druckertreiber nicht, oder weiß jemand einen Treiber? Gruß Reinhard Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Peter Mitglied Ing
Beiträge: 1 Registriert: 23.10.2000
|
erstellt am: 07. Sep. 2006 16:13 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
Hallo rtend12, Zitat: Original erstellt von rtend12: ..Anscheinend geht A4-A0 mit einem Druckertreiber nicht, oder weiß jemand einen Treiber?
sowohl der APLWCSB1.PPD aus Freepdf (Apple Color) als auch der GHOSTPDF.PPD aus Ghostscript sind bis A0 optimiert. Bei Ghostscript ist der Treiber als installierbare *.inf dabei. installiert wird der Ghostscript so: Bei den Druckereigenschaften von beliebigem PDF Drucker unter dem Reiter erweitert/advanced einen neuen Treiber auswählen, anschliessend Datenträger/have disk klicken, in das Verzeichnis gs\gs8.x\lib wechseln und ghostpdf.inf auswählen. man kann sich auch selber eine PDF-PPD erstellen, dazu gibts gute Anleitungen. diese PPD Treiber werden nach C:\WINDOWS\system32\spool\drivers\w32x86\3\ installiert. Windows macht aus diesen *.PPD"Vorlagen" dann *.BPD (Binary PostScript Printer Description File) und benutzt diese. Wenn die *.BPD aus irgendeinem Grund >A2 nicht unterstützt oder mit lokalen registry-eintellungen kollidiert, nützt der beste Treiber (PPD) nichts sofern er die *.BPD nicht bei der Installation ersetzt. Die BPD´s können dann von Hand in o.g. Verzeichnis gelöscht werden und Windows erstellt beim ersten Druck aus der PPD eine aktuelle BPD. Das funktioniert nicht auf allen Maschinen vermutlich wegen der lokalen reg-settings. Das stabilste Setup scheint der PDFCreator für seinen PDFCREAT.PPD Treiber zu haben, dieser Treiber kann auch für FreePDF verwendet werden. Wenn PDFcreator installiert ist, bei FreePDF in den Druckereigenschaften bei Erweitert im Treiber-Dropdownfeld anwählen und >übernehmen klicken. Im gleichen Dialog unter >Standartwerte >Papiergröße nachschauen ob die Formate da sind. Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Craine Mitglied
Beiträge: 1 Registriert: 26.08.2008
|
erstellt am: 26. Aug. 2008 16:05 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
Hallo an euch, ich versuche mich gerade an der Einrichtung von ein paar Makros an meinem Arbeitsplatz. Dazu habe ich mir hier so einiges durchgelesen, komme aber leider auf kein funktionierendes Ergebniss. Speziell geht es um das [u]Automatische PDF drucken[/u]. Ich arbeite derzeit mit dem Inventor 2008 benutze jedoch durch eine kleine Umstellung in meiner Firma endlich mal das Vault. Dort kann ich zwar DWFs erstellen, jedoch brauch die keiner in meiner Firma. PDFs sind gefragt. Bisher benutzten wir dafür den PDF Creator in einem anderen Ablagesystem. Diesen würde ich gerne als automatische PDF Erstellung weiter bei behalten, am besten sogar so das er mir automatisch die PDFs (in Dateiform) druckt und ebenfalls ins Vault schmeist. Jetzt meine Frage an euch Superhinre ist das überhaupt möglich / gibt es ein aktuelles Makro mit dem ich den PDF Creator zum (zumindest) drucken benutzen kann? Ich hatte bereits Makros mit Freepdf (dxf), oder wie das hies, gesehen, aber die funktionierten mit entsprechender umschreibung nicht. Die Codes waren ebenfalls hier aus dem Forum. Gut, kann mir da vll. jemand helfen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
pd65 Mitglied
Beiträge: 83 Registriert: 01.06.2004 Windows 7 pro (64); IV 2009 pro; SP2
|
erstellt am: 01. Sep. 2008 08:33 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
|
Martin_0103 Mitglied
Beiträge: 181 Registriert: 05.02.2003 3,4 GHz - Quadro 4000 - 12 GB RAM - WIN7 - IV2015
|
erstellt am: 05. Sep. 2008 11:16 <-- editieren / zitieren --> Unities abgeben:
Hallo Forum, es sind nun 4 Jahre vergangen, wir setzen den IV2008 ein - aber das Problem ist noch immer vorhanden. Das Makro wie ich es am Beginn dieses Threads gepostet habe, will noch immer keine A1 und A0 Formate erstellen, gleiche Fehler wie damals. Gibt es vielleicht eine Möglichkeit die wir übersehen haben... ? Vielen Dank für die Hilfe Gruß Martin ------------------ Wenn man einen Hund so dressiert hat, dass er über einen See fliegt, dann gibt es sicher ein paar Neider die das Tier für Wasserscheu halten... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fyodor Ehrenmitglied V.I.P. h.c. Dipl.-Ing.(FH) Maschinenbau
Beiträge: 2669 Registriert: 15.03.2005
|
erstellt am: 01. Okt. 2008 15:55 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
Zitat: Original erstellt von Martin_0103: Gibt es vielleicht eine Möglichkeit die wir übersehen haben... ? Vielen Dank für die Hilfe Gruß Martin
Hallo, Martin, ich knabbere momentan am gleichen Problem. Allerdings will ich mit dem "Adobe PDF" Treiber aus dem Acrobat drucken. Interessanterweise geht es auch hier bis A2 (bei Angabe der Seitengröße in mm auch A1), obwohl der Treiber nur bis A3 eingerichtet ist. Das Format A0 kann ich gar nicht drucken, weder unter Angabe des Blattformates noch mit der Seitengröße. Noch eine andere Frage: Ist es möglich, das PDF automatisch am gleichen Ort wie die IDW abzulegen? ------------------ Cheers, Jochen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Schattenbacke Mitglied Dipl.-Ing (FH)
Beiträge: 114 Registriert: 28.01.2009 Dell Precision T3500 Productstream Professional Easy 2011 Autodesk Inventor 2016
|
erstellt am: 29. Jan. 2009 08:10 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
|
Martin_0103 Mitglied
Beiträge: 181 Registriert: 05.02.2003 3,4 GHz - Quadro 4000 - 12 GB RAM - WIN7 - IV2015
|
erstellt am: 29. Jan. 2009 13:59 <-- editieren / zitieren --> Unities abgeben:
Hallo Schattenbacke, leider nicht... die Formate bis A1 lassen sich automatisch erstellen - bei größeren Formaten muss man manuell eingreifen. Gruß Martin ------------------ Wenn man einen Hund so dressiert hat, dass er über einen See fliegt, dann gibt es sicher ein paar Neider die das Tier für Wasserscheu halten... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
lbcad Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau und CAD-Trainer
Beiträge: 3833 Registriert: 15.02.2001 DELL Precision 7520 Win10Pro-64 Inventor mit Vault Professional 2024 --------------------- Während man es aufschiebt, verrinnt das Leben. Lucius Annaeus Seneca (ca. 4 v. Chr - 65 n. Chr.)
|
erstellt am: 07. Feb. 2009 18:05 <-- editieren / zitieren --> Unities abgeben: Nur für Martin_0103
irgendwie kriege ich das hier nicht gebacken: Es sollte doch aus vorigen Posts bekannt sein, dass es kein Problem ist, mit Inventor auf einem PDF-Drucker in allen gängigen Formaten zu drucken. Manche Druckertreiber verwenden irgenwelche merkwürdigen PPD-Dateien siehe hier. Wenn man sich den neuen FreePDF-XP installiert mit dem dazugehörigen Ghostscript, dann hat man eine Seitenbeschreibung, mit der man von A4 bis A0 alles richtig drucken kann. Benutzt man andere PDF-Drucker - wie CutePDF, dann kann man auch bis A0 drucken - aber die Fromate A0 und A1 werden falsch herum bedruckt, will heißen landscape <-> portrait vertauscht. Diese falsche Orientierung kann man doch in dem obigen Makro einfach umstellen. Zu der Frage, ob man auch andere installierte Drucker benutzen kann, kann man aus demm bisher gesagten schließen: JA Dafür benutz man seine optischen Erkennungseinrichtungen (Augen) und liest das obige Makro hier: Code:
' comment this line to use default printer or assign another one oDrgPrintMgr.Printer = "FreePDF XP"
Dort ersetzt man den Text FreePDF XP durch den Namen, den man im Windows-Druckerdialog angezeigt bekommt. HTH ------------------ Gruß Lothar --------------------------------------------------- Während man es aufschiebt, verrinnt das Leben. Lucius Annaeus Seneca (ca. 4 v. Chr - 65 n. Chr.) ----------------------------------------------------- Wir unterstützen die Arbeit der: - Rettungshundestaffel des DRK Viersen - Rettungshundestaffel Isar Ost Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |