Revit API Forum
Welcome to Autodesk’s Revit API Forums. Share your knowledge, ask questions, and explore popular Revit API topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Printing active view

5 REPLIES 5
Reply
Message 1 of 6
russ.green
493 Views, 5 Replies

Printing active view

I'm writing a drawing issue tool and having troubles with my PDF printing to PDFCreator.

 

Basically my addin loops through the sheets to be issued then for each sheet exports DWG, DWF, prints to PDF and will also print.

 

DWG and DWF exporting all OK with the activeview but printing is hit and miss.  does not always detect the active view.

 

Dim thisdoc As Document = uidoc.Document

Using trans As New Transaction(doc, "Export Sheets")

trans.Start()
If Me.chkExportDWG.Checked = True Then ExportDWG(sbFile.ToString & ".dwg")
If Me.chkExportDWF.Checked = True Then ExportDWF(sbFile.ToString & ".dwf", GetSheetsize(sheet, doc), thisdoc)
If Me.chkExportPDF.Checked = True Then ExportPDF(sbFile.ToString & ".pdf", sheet.SheetNumber, thisdoc, thisdoc.ActiveView)
If Me.chkPrint.Checked = True Then PrintSheet(sheet, thisdoc)
trans.Commit()
End Using

 

Private Sub ExportPDF(ByVal ExportFileName As String, ByRef sheetnumber As String, ByRef thisdoc As Document, ByRef thisview As Autodesk.Revit.DB.View)

 

'handle page setups etc

 

ptManager.SubmitPrint(thisview)

 

end sub

 

Now when I debug thisview exists but I sometimes get an error that no views are selected.   Any advice here would be a big help....

 

Russ

Russ Green
5 REPLIES 5
Message 2 of 6
Joe.Ye
in reply to: russ.green

 

HI Russ,

 

In which condition the error occurs? 

Not sure if this is caused by not setting the print range.

 

This is the code to set the print range, the print it.

 

PrintManager manager = Document.PrintManager;
manager.PrintRange = PrintRange.Select;
manager.SubmitPrint(view);

 

Document.PrintManager returns a new PrintManager object., so you needt to set it to an PrintManager object, and set the print range and submit the print to the same PrintManager object.

 

 



Joe Ye
Contractor
Developer Technical Services
Autodesk Developer Network
Message 3 of 6
russ.green
in reply to: russ.green

thanks.

 

I'll test this again and report back

Russ Green
Message 4 of 6
russ.green
in reply to: russ.green

Even with PrintRange.Select things are still a little unreliable.

Russ Green
Message 5 of 6
Joe.Ye
in reply to: russ.green

HI Russ,

 

I doubt that some views that cause error is that they are not real view but view template. Please check if the View.IsTemplate property is true. Please skip when it is a view template.

 

 



Joe Ye
Contractor
Developer Technical Services
Autodesk Developer Network
Message 6 of 6
russ.green
in reply to: Joe.Ye

my app is only concerned with sheets so i loop through the sheets in the project making each one the active view in turn and exporting the sheet to different formats...i'll add this check in though and give things another test....

Russ Green

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk DevCon in Munich May 28-29th


Rail Community