Ik geloof dat in ieder geval SolidWorks nodig is op de pc om de conversie uit te voeren.
een par ça om te zetten zonder een basislicentie log SW
http://www.datakit.com/convertisseurs-cao/solidworks-3d-vers-pdf-3d/3-72-0.html
http://www.datakit.com/fr/cross_manager.php
Zie ook
http://helpx.adobe.com/fr/acrobat/kb/supported-file-formats-acrobat-reader.html
@+ ;-)
Zoals Lucas zegt, zijn er codevoorbeelden om dit te doen, op dit forum of andere die te vinden zijn via Google
Al deze voorbeelden vereisen SW,
Het is mogelijk om de API's van eDrawing te gebruiken om een PDF (via een PDF-printerdriver) of een afbeeldingsbestand te maken, maar meer niet.
Ik geef aan dat de conversiekwaliteit via eDrawing niet gegarandeerd is
Welnu, ik heb al deze links doorzocht en ik heb voorlopig de macro gevonden waarmee ik in de 2 formaten kan opnemen.
Nu moet ik een manier vinden om ze in een specifieke map op te slaan.
En tot slot, controleer in welke versie van autocad het ze opslaat.
Dan
De opnameversie is niet afhankelijk van de macro, maar van de instellingen die in AutoCAD zijn ingesteld.
Dit punt is dus opgelost.
Bij het opslaan van de DWG en PDF maakt de macro een achtervoegsel voor de naam van het plan. Dat is "spatie -", en ik zal het verwijderen.
Ik denk dat het komt van : FileName = Left(swDraw.GetTitle, Len(swDraw.GetTitle) - 9)
En voordat u de site op ons netwerk plaatst.....
Wij delen onze bestanden als volgt in:
bestand op het hoogste niveau: AUTO of MOTORFIETS of TRACTOR of FIETS
bestand op het tweede niveau: Cabriolet of Coupé of MPV of 4x4
Bestand op het derde niveau: 3D / DWG / PDF
Dus in onze eerste niveaus hebben we een categorie
een specifieke maat of type
Ten derde, gesorteerde mappen met bestanden.
En dus is dit derde niveau terug te vinden in alle bestanden. Maar hoe vertel je de macro dat je het bestand in een heel specifieke DWG-map moet opslaan (wetende dat het er tientallen zijn)
in feite is het beter om te gebruiken
Dim fso als nieuwe Scripting.FileSystemObject
Set fso = CreateObject("Scripting.FileSystemObject") ' voeg de referentie "Microsoft Scripting Runtime toe"
Bestandsnaam = fso. GetBaseName(swDraw.GetPathName)
Omdat swDraw.GetTitle de naam van de ficheri + de naam van de rouwenden retorune en we hebben 9 tekens genaaid om de naam van het blad te verwijderen!
Ik heb zojuist FileName = Left (swDraw.GetTitle, Len(swDraw.GetTitle) - 9) vervangen
bij
Bestandsnaam = fso. GetBaseName(swDraw.GetPathName)
En tijdens runtime, runtime-fout "424"
.. Waarvoor?
Vergissing van mijn kant denk ik.
omdat de macro nu DWG- en PDF-bestanden als oorsprong noemt.
Update over de macro.
Sub hoofd()
Stel swApp = Toepassing.SldWorks in
Stel swModel = swApp.ActiveDoc in
' Controleer of er een tekening is geladen.
Als (swModel is niets) of (swModel.GetType <> swDocDRAWING) dan
swApp.SendMsgToUser ("Alleen te gebruiken voor tekeningen, eerst een tekening openen en dan PROBEREN!")
' Als er momenteel geen model is geladen, sluit dan af
Sub afsluiten
Einde als
Stel swDraw = swModel in
Filepath = Links(swDraw.GetPathName, InStrRev(swDraw.GetPathName, "\"))
Set fso = CreateObject("Scripting.FileSystemObject") ' voeg de referentie "Microsoft Scripting Runtime toe"
Bestandsnaam = fso. GetBaseName(swDraw.GetPathName)
swDraw.SaveAs (Bestandspad + Bestandsnaam + ".PDF")
swDraw.SaveAs (Bestandspad + Bestandsnaam + ". DWG")
Einde Sub
Een negatief punt,
Ik heb zojuist de DWG-back-up geopend en ik krijg het volgende bericht:
Het DWG-bestand is opgeslagen in een applicatie die niet door Autodesk is ontwikkeld of geen Autodesk-licentie heeft. Wat wil je doen?
Als ik doorga met openen, niets bijzonders, maar we kunnen niet toestaan dat zo'n bericht verschijnt wanneer het wordt geopend. (Kwaliteitsaudit verplicht)
Hoe doe je dat?
Het wordt ingewikkeld om in deze discussie tientallen vragen te beantwoorden!
Waarom open je niet voor elk probleem een nieuwe vraag?
Voor de macro, voor de DWG-fout, enz.?
Is er bij het opslaan als DWG van SolidWorks dezelfde boodschap?
Zo ja (en dat is waarschijnlijk het geval), dan moet u de exportopties wijzigen in DWG:
Bestand> Opslaan als> Kies DWG en daar verschijnt een knop Opties
Met welke software wordt DWG geopend?
Lucas
Ik heb de gebruikelijke manipulaties gedaan (zonder door de macro te gaan)
Bestand/Opslaan als/DWG-formaat.
als ik de DWG "met AUTOCAD2013 open, verschijnt eigenlijk dezelfde melding.
Zoals ik in een eerdere post over de zaak al zei:
"Met een macro kun je ervoor kiezen om een gemeenschappelijke map te definiëren, een map op bestandstype, een map (op basis van een aangepaste klanteigenschap, dealnummer) of een bestandsverkenner aan te bieden om elke keer te kiezen waar je de verschillende bestanden wilt opslaan."
Heeft u een persoonlijk eigendom of iets in de codificatie dat u dit vertelt:
bestand op het hoogste niveau: AUTO of MOTORFIETS of TRACTOR of FIETS
bestand op het tweede niveau: Cabriolet of Coupé of MPV of 4x4
Het onderdeel:
swDraw.SaveAs (Bestandspad + Bestandsnaam + ".PDF")
swDraw.SaveAs (Bestandspad + Bestandsnaam + ". DWG")
Zou er als volgt uit moeten zien:
Selecteer hoofdlettertype 'selecteer geval vermijdt veel geneste FI's
box = "AUTO" 'if type = auto
Map = "C:\CAR" 'we slaan op in de automap
case = "MOTO" 'idem...
Map = "C:\MOTO"
box = "TRACTOR"
Map = "C:\TRACTOR"
case = "FIETS"
Map = "C:\VELO"
else' geval 'indien een ander type of geen type, fout
msgbox "Type Fout1"
uitgang
Einde selecteren
Selecteer casetype2
case = "CUT" 'if type1 = cut
Map = Map & "\CUT" 'we voegen cut toe aan de map
case = "CAB"
Map = Map & "\CAB"
Behuizing = "4x4"
Map = Map & "\4x4"
case = "MONOSPACE"
Map = Map & "\MONOSPACE"
Ander geval
msgbox "Type2-fout"
uitgang
Einde selecteren
Ter informatie:
Type1 en type2 moeten variabelen zijn die al in uw bestanden voorkomen of die aan de gebruiker moeten worden gevraagd bij het starten van de macro.
swDraw.SaveAs(Map & "\PDF\" & Bestandsnaam & ".PDF")
swDraw.SaveAs(Map & "\DWG\" & Bestandsnaam & ". DWG")
Als u de FSO wilt gebruiken, moet u de Microsoft Scripting Runtime-referentie toevoegen aan uw macro
Zie screenshot
capture.jpg
Voor het berichtprobleem bij het openen met AutoCAD is er geen vakje om uit te vinken zodat het bericht niet meer verschijnt?
Anders zie deze link /
http://autodesk.blogs.com/between_the_lines/2005/06/how_to_tell_if_.html
Ben je eruit gekomen?
Hallo, ik wil je bedanken voor je hulp.
Op dit moment past de macro bij onze BE. We doen alleen de DWG- en PDF-bestanden met de hand.
We besparen al veel tijd.
Het bedrijf kan investeren in EPDM...
Op dat moment gaan we aan de slag met de opslag van de bestanden.
Vriendelijke groeten.
Geef in dit geval het beste antwoord aan!