PrintManager.PrintToFileName 中的文件名无效
Invalid Filename in PrintManager.PrintToFileName
我遇到 Revit API PrintManager 属性问题,特别是 PrintToFileName 属性 和错误:无效文件名.
在打印为 pdf 时声明要命名的打印视图的正确方法是什么?
我的来源(将时间表放到空的 sheet 上并打印出来):
ViewSheet sheet = ViewSheet.Create(Doc, ElementId.InvalidElementId);
Element view = new FilteredElementCollector(Doc)
.OfClass(typeof(ViewSchedule))
.Where(o => o.Name == element) //element is a string from a list of items in a WPF listbox.
.First();
ScheduleSheetInstance.Create(Doc, sheet.Id, view.Id, XYZ.Zero);
ViewSet set = new ViewSet();
set.Insert(sheet);
IList<ElementId> print = new List<ElementId>();
print.Add(sheet.Id);
Uidoc.Selection.SetElementIds(print);
printManager.PrintRange = PrintRange.Select;
ViewSheetSetting viewSheetSetting = printManager.ViewSheetSetting;
viewSheetSetting.CurrentViewSheetSet.Views = set;
printManager.SelectNewPrintDriver("Adobe PDF");
printManager.PrintToFile = true;
printManager.CombinedFile = true;
printManager.PrintToFileName = "TestFileName"; //ERROR HERE
printManager.Apply();
printManager.SubmitPrint(sheet);
也许您需要输入完整路径+文件名才能工作。
更新:感谢 Bogdans post 以及 Autodesk Revit Api 论坛上的 This comment,在我的格式中发现了问题。
事实证明,PrintToFileName 需要 path 和 filename 字符串。工作片段如下:
string path = @"[same file path here ]";
string currentViewName = view.Name;
printManager.PrintToFileName = path + currentViewName + ".pdf";
printManager.Apply();
感谢博格丹的回复。
我遇到 Revit API PrintManager 属性问题,特别是 PrintToFileName 属性 和错误:无效文件名.
在打印为 pdf 时声明要命名的打印视图的正确方法是什么?
我的来源(将时间表放到空的 sheet 上并打印出来):
ViewSheet sheet = ViewSheet.Create(Doc, ElementId.InvalidElementId);
Element view = new FilteredElementCollector(Doc)
.OfClass(typeof(ViewSchedule))
.Where(o => o.Name == element) //element is a string from a list of items in a WPF listbox.
.First();
ScheduleSheetInstance.Create(Doc, sheet.Id, view.Id, XYZ.Zero);
ViewSet set = new ViewSet();
set.Insert(sheet);
IList<ElementId> print = new List<ElementId>();
print.Add(sheet.Id);
Uidoc.Selection.SetElementIds(print);
printManager.PrintRange = PrintRange.Select;
ViewSheetSetting viewSheetSetting = printManager.ViewSheetSetting;
viewSheetSetting.CurrentViewSheetSet.Views = set;
printManager.SelectNewPrintDriver("Adobe PDF");
printManager.PrintToFile = true;
printManager.CombinedFile = true;
printManager.PrintToFileName = "TestFileName"; //ERROR HERE
printManager.Apply();
printManager.SubmitPrint(sheet);
也许您需要输入完整路径+文件名才能工作。
更新:感谢 Bogdans post 以及 Autodesk Revit Api 论坛上的 This comment,在我的格式中发现了问题。
事实证明,PrintToFileName 需要 path 和 filename 字符串。工作片段如下:
string path = @"[same file path here ]";
string currentViewName = view.Name;
printManager.PrintToFileName = path + currentViewName + ".pdf";
printManager.Apply();
感谢博格丹的回复。