ElementId userSettingsId = null;
//print settings creation
PrintManager printManager = m_doc.PrintManager;
using (Transaction tr = new Transaction(m_doc, "PrintSettingsCreation")) {
tr.Start();
IPrintSetting printSettings = printManager.PrintSetup.CurrentPrintSetting;
printSettings.PrintParameters.PageOrientation = PageOrientationType.Portrait;
printManager.PrintSetup.SaveAs("UserSettings");
printManager.PrintSetup.Apply();
foreach (PrintSetting printSettings in new FilteredElementCollector(m_doc).OfClass(typeof(Autodesk.Revit.DB.PrintSetting))) {
if (printSettings.Name.Equals("UserSetting")) {
m_doc.PrintManager.PrintSetup.CurrentPrintSetting = printSettings;
userSettingsId = printSettings.Id;
break;
}
}
tr.Commit();
}
//print
printManager.SubmitPrint(viewSchedule);
//delete settings
using (Transaction tr = new Transaction(m_doc, "DeleteUserSettings")) {
tr.Start();
foreach (PrintSetting printSettings in new FilteredElementCollector(m_doc).OfClass(typeof(Autodesk.Revit.DB.PrintSetting))) {
if (printSettings.Name.Equals("UserSetting")) {
m_doc.Delete(printSettings.Id);
break;
}
}
tr.Commit();
}