DocumentPreviewSettings Class


Contains the settings related to the saving of preview images for a given document.

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 24.0.0.0 (24.0.0.0)
Since:  2012

Syntax

C#
public class DocumentPreviewSettings : IDisposable
Visual Basic
Public Class DocumentPreviewSettings _
	Implements IDisposable
Visual C++
public ref class DocumentPreviewSettings : IDisposable

Examples

CopyC#
// Get the document's preview settings
DocumentPreviewSettings settings = document.GetDocumentPreviewSettings();

// Find a candidate 3D view
FilteredElementCollector collector = new FilteredElementCollector(document);
collector.OfClass(typeof(View3D));

Func<View3D, bool> isValidForPreview = v => settings.IsViewIdValidForPreview(v.Id);

View3D viewForPreview = collector.OfType<View3D>().First<View3D>(isValidForPreview);

// Set the preview settings
using (Transaction setTransaction = new Transaction(document, "Set preview view id"))
{
   setTransaction.Start();
   settings.PreviewViewId = viewForPreview.Id;
   setTransaction.Commit();
}

// Save the document
document.Save();
CopyVB.NET
' Get the document's preview settings
Dim settings As DocumentPreviewSettings = document.GetDocumentPreviewSettings()

' Find a candidate 3D view
Dim collector As New FilteredElementCollector(document)
collector.OfClass(GetType(View3D))

Dim isValidForPreview As Func(Of View3D, Boolean) = Function(v) settings.IsViewIdValidForPreview(v.Id)

Dim viewForPreview As View3D = collector.OfType(Of View3D)().First(isValidForPreview)

' Set the preview settings
Using setTransaction As New Transaction(document, "Set preview view id")
    setTransaction.Start()
    settings.PreviewViewId = viewForPreview.Id
    setTransaction.Commit()
End Using

' Save the document
document.Save()

Inheritance Hierarchy

SystemObject
  Autodesk.Revit.DBDocumentPreviewSettings

See Also

ArchiLabs

Stop fighting Revit automation.

Build repeatable BIM design and documentation workflows with scripts, data, and AI in one place, without wrestling brittle one-off automations.

Try ArchiLabs →