Diskuzní fórum a databáze tipů a utilit pro AutoCAD, Inventor, Revit a další produkty Autodesk - od firmy Arkance Systems [www.cadforum.cz]
CZ | SK | EN | DE
Přihlášení
či registrace
   právě nás čte: 15862 
RSS kanál - CAD tipy RSS tipy
RSS diskuze

Diskuze Diskuzní fórum, poradna

 

NápovědaCAD diskuze, rady, výměna zkušeností

 
CAD Fórum - Homepage Veřejné diskuzní fórum k CAD aplikacím - ptejte se na libovolné otázky týkající se oboru CAx, podělte se o vaše znalosti a zkušenosti s programy AutoCAD, Inventor, Revit, Fusion 360, 3ds Max a s dalšími CAD aplikacemi. Zaregistrujte se nebo se přihlašte a zašlete váš příspěvek do odpovídajícího fóra. Viz další informace o CAD Fóru. Nechcete se registrovat? Zeptejte se v naší Facebook poradně.
Fórum nenahrazuje technický support firmy Arkance Systems (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.cadstudio.cz
  FAQ FAQ  Prohledat fórum   Události   Registrovat Registrovat  Přihlásit Přihlásit

Téma uzavřenoExport IDW do PDF a DXF

 Odpovědět Odpovědět archiv
Autor
patrikuv Zobrazit panel
Nováček
Nováček

Přihlášen: 08.pro.2010
Lokalita: Czech Republic
Používám:
AutoCAD, Inventor
Stav: Offline
Bodů: 4
Přímý odkaz na tuto zprávu Téma: Export IDW do PDF a DXF
    Zasláno: 02.pro.2015 v 07:27
Dobrý den, dal jsem dohromady dvě pravidla iLogic - jedno pro export do PDF a druhé pro tisk do DXF. Nejsem programátor, netuším, proč je tam to, či ono, vytvořil jsem to formou pokus omyl (zkopíroval, něco přepsal..). Potřeboval bych ale pomoct tyto pravidla vyladit a dokončit, tak se obracím na zdejší fórum.
 
PDF
Jak má fungovat- klasicky nastavení tisku přes Možnosti (tloušťky čar, atd) + uložení PDF do stejného adresáře jako je uložený zdrojový IDW soubor + za název souboru vložit "_revize" mezera Název souboru (z iVlastnosti "Part Title"). Dostal jsem se do fáze kdy mám vše, kromě "vytisknutí" Part Title. A potřeboval bych, aby v případě, že model nemá žádnou revizi, byl název pdf souboru pouze jako Název souboru mezera Part Title.
 
Format:HTML Format Version:1.0 StartHTML: 165 EndHTML: 24733 StartFragment: 314 EndFragment: 24701 StartSelection: 314 EndSelection: 314 SyntaxEditor Code Snippet
'------Začátek iLogic-------
oPath = ThisDoc.Path
oFileName = ThisDoc.FileName(False) 'without extension
oRevNum = iProperties.Value("Project", "Revision Number")
oPDFAddIn = ThisApplication.ApplicationAddIns.ItemById _
("{0AC6FD96-2F4D-42CE-8BE0-8AEA580399E4}")
oDocument = ThisApplication.ActiveDocument
oContext = ThisApplication.TransientObjects.CreateTranslationContext
oContext.Type = IOMechanismEnum.kFileBrowseIOMechanism
oOptions = ThisApplication.TransientObjects.CreateNameValueMap
oDataMedium = ThisApplication.TransientObjects.CreateDataMedium

If oPDFAddIn.HasSaveCopyAsOptions(oDataMedium, oContext, oOptions) Then
oOptions.Value("All_Color_AS_Black") = 0
oOptions.Value("Remove_Line_Weights") = 1
oOptions.Value("Vector_Resolution") = 4800
oOptions.Value("Sheet_Range") = Inventor.PrintRangeEnum.kPrintAllSheets
End If

'get PDF target folder path
oFolder = oPath '& "\PDF"
'oFolder = "F:\Sales\Enquiries\2013\" & oPath & "\PDF"

'Check for the PDF folder and create it if it does not exist
If Not System.IO.Directory.Exists(oFolder) Then
    System.IO.Directory.CreateDirectory(oFolder)
End If

'Set the PDF target file name
oDataMedium.FileName = oFolder & "\" & oFileName & _
"_" & oRevNum & ".pdf"

oMyFileName = oFolder & "\" & oFileName & " Rev" & oRevNum & ".pdf"

'check to see that the xls file exists
If Dir(oMyFileName) <> "" Then
Overwrite = MessageBox.Show("PDF existuje, přepsat?", "iLogic",MessageBoxButtons.YesNo, _
MessageBoxIcon.Question,MessageBoxDefaultButton.Button1)
If Overwrite = vbNo Then
    Return
    End If
End If

Try
'Publish document
oPDFAddIn.SaveCopyAs(oDocument, oContext, oOptions, oDataMedium)
Catch
MessageBox.Show("PDF nebylo uloženo, právě se používá jiným uživatelem", "iLogic" & ThisApplication.GeneralOptions.UserName & "!")
End Try

'Show message box
MessageBox.Show("Výkres a PDF uloženo do: " & oFolder & vbLf & vbLf & _
"Název souboru: " & oFilename & " [" & oRevNum & "].pdf", "iLogic",MessageBoxButtons.Ok,MessageBoxIcon.Information, _
MessageBoxDefaultButton.Button1)

'open the folder where the new ffiles are saved
Shell("explorer.exe " & oFolder,vbNormalFocus)

'MessageBox.Show("New Files Created in: " & vbLf & oFolder, "iLogic")

DXF
Jak má fungovat- při uložení se tiskne DXF spolu s PDF, ukládá se do stejné složky jako zdrojový soubor IDW. Název DXF je "Název souboru_Revize". Verze DXF Autocad 2000.
Format:HTML Format Version:1.0 StartHTML:165 EndHTML:13633 StartFragment:314 EndFragment:13601 StartSelection:314 EndSelection:314

SyntaxEditor Code Snippet
' Get the DXF translator Add-In.
Dim DXFAddIn As TranslatorAddIn
DXFAddIn = ThisApplication.ApplicationAddIns.ItemById("{C24E3AC4-122E-11D5-8E91-0010B541CD80}")
'Set a reference to the active document (the document to be published).
Dim oDocument As Document
oDocument = ThisApplication.ActiveDocument
Dim oContext As TranslationContext
oContext = ThisApplication.TransientObjects.CreateTranslationContext
oContext.Type = IOMechanismEnum.kFileBrowseIOMechanism
' Create a NameValueMap object
Dim oOptions As NameValueMap
oOptions = ThisApplication.TransientObjects.CreateNameValueMap
' Create a DataMedium object
Dim oDataMedium As DataMedium
oDataMedium = ThisApplication.TransientObjects.CreateDataMedium
' Check whether the translator has 'SaveCopyAs' options
If DXFAddIn.HasSaveCopyAsOptions(oDocument, oContext, oOptions) Then
Dim strIniFile As String
strIniFile = "C:\temp\dxfout.ini"
' Create the name-value that specifies the ini file to use.
oOptions.Value("Export_Acad_IniFile") = strIniFile
End If
'Set the destination file name
oDataMedium.FileName = ThisDoc.PathAndFileName(False) & "_" & oRevNum & ".dxf" 'same folder, or uncomment:
'oDataMedium.FileName = "C:\myDXFfolder\" & ThisDoc.FileName(False) & ".dxf" 'fixed folder
'Publish document.
DXFAddIn.SaveCopyAs(oDocument, oContext, oOptions, oDataMedium)
'Launch the dxf file in whatever application Windows is set to open this document type with
i = MessageBox.Show("Preview the DXF file?", "Title",MessageBoxButtons.YesNo,MessageBoxIcon.Question)
If i = vbYes Then ThisDoc.Launch(oDataMedium.FileName)
 
Možná se dají obě makra zakomponovat do sebe, něco upravit, smazat, změnit..., proto uvítám jakoukoliv radu či pomoc.
Díky!


Upravil patrikuv - 02.pro.2015 v 08:32
Zpět nahoru
patrikuv Zobrazit panel
Nováček
Nováček

Přihlášen: 08.pro.2010
Lokalita: Czech Republic
Používám:
AutoCAD, Inventor
Stav: Offline
Bodů: 4
Přímý odkaz na tuto zprávu Zasláno: 02.pro.2015 v 08:49
Ještě upravím požadavek na DXF: potřeboval bych, aby se tiskl soubor jako "Plné měřítko (1:1) - Modelový prostor".
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 12159:VIPSnadný převod souborů SVG, CGM, VSD nebo AI do AutoCADu. Převod DWG-DXF.
Tip 7472:VIPHromadný tisk různých výkresových listů Inventoru do PDF.
Tip 4134:Dávkový převod IDW výkresů Inventoru do DWG, DXF a DWF.
Tip 13195:VIPHromadný převod výkresů Inventoru do PDF (celá složka, iLogic).
Tip 10902:Jak importovat soubor z Illustratoru (.AI) do AutoCADu (DWG)?
Tip 10095:VIPSnadné automatické ukládání PDF kopie při uložení IDW/DWG výkresu.


 Odpovědět Odpovědět

Přejít na fórum Oprávnění fóra Zobrazit panel



Stránka byla vygenerována za 0,508 sekund.