Free Support Forum - aspose.com

Word转pdf出现问题

客户是用C#语言开发,调研半个月,DOME给领导测试后,发现word转PDF的时候出现了问题,且PPT转PDF的时候,字体出问题word试用版转PDF.jpg (73.1 KB)
word原件.png (35.6 KB)

@chengengpeng

谢谢你的询问。请压缩并附加输入的Word / PowerPoint文档,文档中使用的字体以及输出PDF文件,以显示此处不需要的行为以进行测试。我们将调查此问题,并为您提供更多信息。

想咨询您另外一个比较着急的问题就是:在官网上下载的最新版的C#的dll,为什么缺少一下图片内容中的引用类型.
YXH%5USCM6THHP5Y6FW_$BU.png (2.0 KB)
另外还有两个问题就是:
(1)能否提供.net的最新dome呢?
(2)把word 或者ppt 之类的 每一页都单独转成一个PDF,怎么转?转出来的图片太大,怎么压缩大小?1541483504.png (4.4 KB)

@chengengpeng

谢谢你的询问。请注意,在将文档呈现为固定页面格式(JPEG,PNG,PDF或XPS)时,Aspose.Words需要TrueType字体。您需要在要将文档转换为PDF的计算机上安装文档中使用的字体。请参考以下文章:

Aspose.Words如何使用True Type字体

您可以从以下链接下载最新版本的Aspose.Words和Aspose.Slides API。

下载Aspose.Words

下载Aspose.Slides

是的,您可以将Word文档/ PPT的每个页面转换为PDF。请参阅以下文章:

将每个Word页面转换为PDF

将幻灯片转换为PDF

将Word文档中的每个页面转换为单独的PDF文件的一种简单方法如下:

Document doc = new Document(@"D:\Temp\in.doc");

int pageCount = doc.PageCount;

PdfSaveOptions opts = new PdfSaveOptions();

opts.PageCount = 1;

for (int i = 0; i < pageCount; i++)

{

opts.PageIndex = i;

doc.Save(MyDir + @"18.10-" + i + ".pdf", opts);

}

如果您遇到参考错误,请分享您的示例代码。我们将调查此问题,并为您提供更多信息。

非常感谢您的耐心解答,不过我这边还有6个问题想请教.
1、大文件的txt 怎么转换成pdf。(可按大小转换成一个个PDF)
2、PPT每一页单独转换成PDF时,文件大小的格式有误,比如PPT的大小是900 * 800,但是转换出来的时候的PDF大小为 700 * 600,这个时候就会有内容缺失。
3、excel 在转换成pdf时。也存在跟PPT一样的情况,例如excel 在 A 到K之间都有数据,但是转换的时候,只转换A 到 F 区间的内容
4、就是转出来的PDF太大,怎么处理?比如我转出某一个页面的PDF是100KB,太大了,我想压缩成60kB.
5、 怎么把PDF 文件中,每一页 单独转换成一个PDF呢?
6、 Aspose.Total for Android请问可以提供编译相关的说明文档吗?
感谢回答!

@chengengpeng

感谢您发布您的查询。

要将文本文件转换为PDF格式,请访问API文档中的“将文本文件转换为PDF格式”一文。

为了压缩或优化PDF文档,您可以使用API​​文档中“优化PDF文档”文章中给出的代码片段。

请使用以下代码段将每个PDF页面转换为单独的PDF文件。

Document doc = new Document("Input.pdf");
foreach(Page page in doc.Pages)
{
  Document newDoc = new Document();
  newDoc.Pages.Add(page);
  newDoc.Save("output_" + DateTime.Now.Millisecond + ".pdf");
}

您可以根据您的环境使用任何合适的Android编译器,但是,基本配置和API安装将在以下文章中进行说明,这可能有助于您通过Java API在您身边设置Android。

通过Java安装Aspose.Words for Android

您能否与我们分享您的样本PPT和Excel文件?我们将在我们的环境中测试场景并相应地解决它。

Desktop.zip (8.2 MB)
2,PPT每一页单独转换成PDF时,文件大小的格式有误,比如PPT的大小是900×800,但是转换出来的时候的PDF大小为700 * 600,这个时候就会有内容缺失。
3 ,excel在转换成pdf时。也存在跟PPT一样的情况,例如excel在A到K之间都有数据,但是转换的时候,只转换A到F区间的内容

感谢您的回答.请测试解答谢谢!

@chengengpeng

感谢您分享示例文件。

我们使用Aspose.Slides for .NET 18.10Aspose.Cells for .NET 18.10测试了我们环境中的场景。我们无法注意到页面尺寸问题。附件是显示PPTX幻灯片和输出PDF的页面尺寸的屏幕截图。

Presentation Size compare.png (249.5 KB)

以下是我们用于将您的XLS文件转换为PDF的代码段。为了您的参考,还附上输出PDF。

Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook(dataDir + "SampleXLS.xls");
Aspose.Cells.SaveOptions saveOptions = new Aspose.Cells.PdfSaveOptions()
{
 AllColumnsInOnePagePerSheet = true
};
workbook.Save(dataDir + "SampleXLS.pdf", saveOptions);

SampleXLS.pdf (366.1 KB)

请您确保我们最新版本的API,如果您仍然遇到任何问题,请随时告诉我们。

非常感谢您的耐心解答.
还有个问题就是:就是获取DOCX 文档页数的时候,获取不准确,总共应该有500页,但是返回的参数只有19页
在读取的时候,需要设置读取类型。设置中文简体,就读取不了UTF-8

源码安装–正常.zip (1.7 MB)

@chengengpeng,

我们正在处理您的查询,并会尽快回复您。

@chengengpeng,

出现此问题的原因是您在评估模式下使用Aspose.Words for .NET(未在您的应用程序中使用许可证)。

Aspose.Words for .NET的许可最新版本(请参阅以下代码),即18.11和MS Word 2016,均告诉我们您提供的文档中有914页。

Aspose.Words.License lic = new Aspose.Words.License();
// lic.SetLicense("Aspose.Words.NET.lic"); // Un-comment this line to get 914 pages

Document doc = new Document("D:\\Temp\\\\in.docx");
Console.WriteLine(doc.PageCount);