嘗試打印到文件,從.DOCX創建一個PDF或.xlsx打印爲pdf格式打印機造成損壞的文件
它管理創建的文件,但試圖打開它的時候,表示該文件已損壞或損壞。
代碼:
string name = Path.GetFileNameWithoutExtension(filename);
string path = Path.GetDirectoryName(filename);
Directory.CreateDirectory(path);
PrintDocument pd = new PrintDocument();
pd.DocumentName = filename;
PrinterSettings printerSettings = new PrinterSettings();
printerSettings.PrinterName = "PDFCreator";
//printerSettings.PrinterName = "CutePDF Writer";
printerSettings.PrintToFile = true;
printerSettings.PrintFileName = String.Format(@"{0}/{1}.pdf", path, name);
pd.PrinterSettings = printerSettings;
pd.Print();
望着在文本編輯器的PDF,標題寫着:
%PS-Adobe-3.0並 %%標題:C:\垃圾\樣品.docx %%創建者:PScript5.dll版本5.2.2 %% CreationDate:2017/2/24 14:12:57 %%對於:用戶 %% BoundingBox:(atend) %% Pages:(atend ) %%方向:肖像 %% PageOrder:特殊 %% DocumentNeededResources:(atend) %% DocumentSuppliedResources:(atend) %% DocumentData:Clean7Bit %% TargetDevice:(PDFCreator的)(3010)096 %%語言級:3個 %% EndComments %% BeginDefaults %% PageBoundingBox:0 0 595 842 %% ViewingOrientation:1 0 0 1 %% EndDefaults
是否嘗試編輯標題爲第一行%PDF的變化,但至今沒有任何文件可以打開。
任何幫助或建議,將不勝感激。
謝謝。
PDFCreator和CutePDF Writer的回答是正確的,但並非所有PDF打印機都是如此。某些PDF打印機(如Win2PDF)直接輸出爲PDF,並支持.NET .PrintToFileName和.PrintFileName屬性。 –
感謝您的意見,布拉德利和克雷格。我會嘗試Win2PDF,如果它仍然不起作用,我會回到打開Word的實例。 – Pearcy