使用 Syncfusion 将 .ppt 文件转换为 PDF 时出错
Error when converting .ppt file to PDF using Syncfusion
下面的代码可以毫无问题地将pptx文件转换为pdf文件。
try
{
//Opens the specified presentation
IPresentation presentation = Presentation.Open(@"D:\YUs\Test\pp2.pptx");
presentation.ChartToImageConverter = new ChartToImageConverter();
presentation.ChartToImageConverter.ScalingMode = Syncfusion.OfficeChart.ScalingMode.Best;
PresentationToPdfConverterSettings settings = new PresentationToPdfConverterSettings();
settings.ShowHiddenSlides = true;
PdfDocument doc = PresentationToPdfConverter.Convert(presentation, settings);
doc.Save(@"D:\YUs\Test\pp2.pdf");
doc.Close();
}
catch (Exception err)
{
Response.Write("error when saving presentation file: " + err.ToString() + "<br/><br/><br/>");
}
但是当我尝试使用代码转换 .ppt 文件时,return出现了这个错误:
Syncfusion.Compression.Zip.ZipException: Zip exception.Can't locate end of central directory record. Possible wrong file format or archive is corrupt. at Syncfusion.Compression.Zip.ZipArchive.Open(Stream stream, Boolean closeStream) at Syncfusion.Presentation.FileDataHolder.Open(Stream stream) at Syncfusion.Presentation.Presentation.SetArchieveItems(Stream stream) at Syncfusion.Presentation.Presentation.ParseDocument(Stream fileStream) at Syncfusion.Presentation.Presentation.OpenAsStream(Stream stream) at Syncfusion.Presentation.Presentation.Open(String fileName) at PUBLIC_ConvertOfficeToPdfNetOffice.Page_Load(Object sender, EventArgs e) in d:\ConvertOfficeToPdfNetOffice.aspx.cs:line 30
我试过许多不同的 PPT 文件,但它总是 return 相同的错误。
Syncfusion Essential Presentation 库仅支持操作 PPTX 文件,这就是您在尝试加载 PPT 文件时遇到此错误的原因。我们应该使错误消息更清楚,我们将进行此更改。
我们将来还会记录支持 PPT 文件的功能请求。
下面的代码可以毫无问题地将pptx文件转换为pdf文件。
try
{
//Opens the specified presentation
IPresentation presentation = Presentation.Open(@"D:\YUs\Test\pp2.pptx");
presentation.ChartToImageConverter = new ChartToImageConverter();
presentation.ChartToImageConverter.ScalingMode = Syncfusion.OfficeChart.ScalingMode.Best;
PresentationToPdfConverterSettings settings = new PresentationToPdfConverterSettings();
settings.ShowHiddenSlides = true;
PdfDocument doc = PresentationToPdfConverter.Convert(presentation, settings);
doc.Save(@"D:\YUs\Test\pp2.pdf");
doc.Close();
}
catch (Exception err)
{
Response.Write("error when saving presentation file: " + err.ToString() + "<br/><br/><br/>");
}
但是当我尝试使用代码转换 .ppt 文件时,return出现了这个错误:
Syncfusion.Compression.Zip.ZipException: Zip exception.Can't locate end of central directory record. Possible wrong file format or archive is corrupt. at Syncfusion.Compression.Zip.ZipArchive.Open(Stream stream, Boolean closeStream) at Syncfusion.Presentation.FileDataHolder.Open(Stream stream) at Syncfusion.Presentation.Presentation.SetArchieveItems(Stream stream) at Syncfusion.Presentation.Presentation.ParseDocument(Stream fileStream) at Syncfusion.Presentation.Presentation.OpenAsStream(Stream stream) at Syncfusion.Presentation.Presentation.Open(String fileName) at PUBLIC_ConvertOfficeToPdfNetOffice.Page_Load(Object sender, EventArgs e) in d:\ConvertOfficeToPdfNetOffice.aspx.cs:line 30
我试过许多不同的 PPT 文件,但它总是 return 相同的错误。
Syncfusion Essential Presentation 库仅支持操作 PPTX 文件,这就是您在尝试加载 PPT 文件时遇到此错误的原因。我们应该使错误消息更清楚,我们将进行此更改。
我们将来还会记录支持 PPT 文件的功能请求。