public bool Save() { try { return(m_viewSheetSetting.Save()); } catch (Exception) { return(false); } }
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { UIDocument uidoc = commandData.Application.ActiveUIDocument; Document doc = uidoc.Document; Selection selection = uidoc.Selection; PrintManager pm = doc.PrintManager; pm.PrintRange = PrintRange.Select; ViewSheetSetting vss = pm.ViewSheetSetting; ICollection <ElementId> id; FilteredElementCollector collector; ElementClassFilter wantedElements; PaperSizeSet paperSize = pm.PaperSizes; List <Element> printElemes = null; using (Transaction trans = new Transaction(doc, "Print ViewSet")) { try { id = selection.GetElementIds(); collector = new FilteredElementCollector(doc, id); wantedElements = new ElementClassFilter(typeof(ViewSheet)); collector.WherePasses(wantedElements); printElemes = collector.ToElements() as List <Element>; } catch (Autodesk.Revit.Exceptions.ApplicationException e) { TaskDialog.Show("Error!", e.Message); return(Result.Cancelled); } catch (Exception e) { TaskDialog.Show("Error!", e.Message); } ViewSet viewSet = new ViewSet(); foreach (var elem in printElemes) { ViewSheet viewSheet = elem as ViewSheet; viewSet.Insert(viewSheet); } trans.Start(); try { vss.CurrentViewSheetSet.Views = viewSet; vss.Save(); pm.SelectNewPrintDriver("Microsoft Print to PDF"); pm.Apply(); //pm.PrintSetup.Save(); pm.PrintSetup.CurrentPrintSetting.PrintParameters.PageOrientation = PageOrientationType.Landscape; pm.PrintSetup.CurrentPrintSetting.PrintParameters.PaperPlacement = PaperPlacementType.Center; pm.PrintSetup.CurrentPrintSetting.PrintParameters.ZoomType = ZoomType.Zoom; pm.PrintSetup.CurrentPrintSetting.PrintParameters.Zoom = 100; pm.CombinedFile = true; //pm.PrintToFile = true; //pm.PrintToFileName = @"C:\Users\Lenovo\Desktop\file.pdf"; pm.Apply(); //pm.PrintSetup.Save(); pm.SubmitPrint(); } catch (Exception e) { message = e.Message; return(Result.Failed); } trans.Commit(); // return Result.Succeeded; } return(Result.Succeeded); }
public static void print(Document doc) { ViewSet myViewSet = new ViewSet(); var collector = new FilteredElementCollector(doc) .OfClass(typeof(ViewSheet)) .Cast <ViewSheet>().ToList(); foreach (ViewSheet vs in collector) { if (!vs.IsTemplate && vs.CanBePrinted && vs.ViewType == ViewType.DrawingSheet) { myViewSet.Insert(vs); using (Transaction tx = new Transaction(doc)) { tx.Start("Transaction Name"); vs.Print(true); tx.Commit(); } } } var printsettings = doc.GetPrintSettingIds(); string setName = Helper.RandomString(10); PrintManager pm = doc.PrintManager; using (Transaction tx = new Transaction(doc)) { tx.Start("Transaction Name"); pm.SelectNewPrintDriver("Adobe PDF"); //PaperSizeSet ps = pm.PaperSizes; pm.PrintRange = PrintRange.Select; pm.CombinedFile = false; pm.PrintToFile = true; pm.PrintSetup.CurrentPrintSetting.PrintParameters.RasterQuality = RasterQualityType.Presentation; pm.PrintSetup.CurrentPrintSetting.PrintParameters.ColorDepth = ColorDepthType.Color; pm.PrintSetup.CurrentPrintSetting.PrintParameters.ViewLinksinBlue = false; ViewSheetSetting viewSheetSetting = pm.ViewSheetSetting; // try // { // Save the current view sheet set to another view/sheet set with the specified name. viewSheetSetting.SaveAs(setName); //} //catch (Exception) { } viewSheetSetting.CurrentViewSheetSet.Views = myViewSet; viewSheetSetting.Save(); pm.Apply(); pm.PrintToFileName = FileManager.pdfout + setName + Convert.ToString(setName.GetHashCode()) + ".pdf"; pm.SubmitPrint(); tx.Commit(); } using (Transaction tx = new Transaction(doc)) { tx.Start("print Name"); pm.SubmitPrint(); tx.Commit(); } }