【发布时间】:2017-02-24 03:30:10
【问题描述】:
尝试打印到文件并从 .docx 或 .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:\Junk\Sample.docx %%创建者:PScript5.dll 版本 5.2.2 %%创建日期:2/24/2017 14:12:57 %%对于:用户 %%BoundingBox:(参加) %%Pages: (参加) %%方向:纵向 %%PageOrder:特殊 %%DocumentNeededResources:(参加) %%DocumentSuppiedResources:(参加) %%文档数据:Clean7Bit %%TargetDevice: (PDFCreator) (3010) 096 %%语言级别:3 %%结束评论 %%BeginDefaults %%PageBoundingBox:0 0 595 842 %%查看方向:1 0 0 1 %%EndDefaults
已尝试将标题编辑为第一行的 %PDF 变体,但到目前为止还没有使文件可打开。
任何帮助或建议将不胜感激。
谢谢。
【问题讨论】:
标签: c# pdf printing corruption printdocument