Continue to Site

Welcome to MCAD Central

Join our MCAD Central community forums, the largest resource for MCAD (Mechanical Computer-Aided Design) professionals, including files, forums, jobs, articles, calendar, and more.

one click PDF export

tompol74

New member
Hi,

I try to create a journal in VisualBasic to create a pdf file
of all sheets of current drawing with one click. I have recorded in NX6
a journal file of export and modified it to set pdf file name same as
drawing file. I have problem with the number and the names of drawing
sheets. I need to put all sheets into an array "sheets1". In the
following example I have 3 sheets: "SHT1", "SHT2", "SHT3" but the
number and the names of sheets should be handled automaticaly. Can
anyone help me with this?


' NX 6.0.5.3


Option Strict Off
Imports System
Imports NXOpen
imports system.windows.forms


Module NXJournal
Sub Main

Dim theSession As Session = Session.GetSession()
Dim workPart As Part = theSession.Parts.Work

Dim displayPart As Part = theSession.Parts.Display

' ----------------------------------------------
' Menu: File->Export->PDF...
' ----------------------------------------------

Dim printPDFBuilder1 As PrintPDFBuilder
printPDFBuilder1 = workPart.PlotManager.CreatePrintPdfbuilder()

printPDFBuilder1.Scale = 1.0

printPDFBuilder1.Colors = PrintPDFBuilder.Color.BlackOnWhite

printPDFBuilder1.Size = PrintPDFBuilder.SizeOption.ScaleFactor

printPDFBuilder1.Units = PrintPDFBuilder.UnitsOption.English

printPDFBuilder1.XDimension = 8.5

printPDFBuilder1.YDimension = 11.0

printPDFBuilder1.OutputText = PrintPDFBuilder.OutputTextOption.Polylines

printPDFBuilder1.ImageResolution = PrintPDFBuilder.ImageResolutionOption.Medium

printPDFBuilder1.RasterImages = True

printPDFBuilder1.Watermark = ""

Dim sheets1(2) As NXObject

Dim drawingSheet1 As Drawings.DrawingSheet = CType(workPart.DrawingSheets.FindObject("SHT1"), Drawings.DrawingSheet)
sheets1(0) = drawingSheet1

Dim drawingSheet2 As Drawings.DrawingSheet = CType(workPart.DrawingSheets.FindObject("SHT2"), Drawings.DrawingSheet)
sheets1(1) = drawingSheet2

Dim drawingSheet3 As Drawings.DrawingSheet = CType(workPart.DrawingSheets.FindObject("SHT3"), Drawings.DrawingSheet)
sheets1(2) = drawingSheet3

printPDFBuilder1.SourceBuilder.SetSheets(sheets1)

Dim path_length As Integer = Len(thesession.Parts.Work.FullPath)

Dim path_trunc As String = Mid(thesession.Parts.Work.FullPath,1,path_length-4)

Dim part_name As String = path_trunc + ".pdf"

printPDFBuilder1.Filename = part_name

Dim nXObject1 As NXObject
nXObject1 = printPDFBuilder1.Commit()

printPDFBuilder1.Destroy()

' ----------------------------------------------
' Menu: Tools->Journal->Stop Recording
' ----------------------------------------------

End Sub
End Module



Edited by: tompol74
 

Sponsor

Articles From 3DCAD World

Back
Top