当前位置:编程学习 > C#/ASP.NET >>

aspose将ppt转换为图片的时候,是否必须用pdf过渡?

aspose将ppt转换为图片的时候,是否必须用pdf过渡?

即:ppt先转换为pdf,然后再把pdf转换为图片。  不能够直接一步到位。


手头没有文档,我添加引用“aspose.slide"后,看了一下接口函数。发现确实没有save为图片的函数。

只有save为pdf的函数。


我于是又想到饿了asopose.pdf之类的库, 添加引用后,查看了一下,结果么有发现将pdf转换为图片的函数.

该如何解决?

我发一个例子,是转换的代码。

http://hi.baidu.com/peihuichao/item/480da4bfce4754d984dd79cc

其中的  pdffile到底是什么类型???


PDFFile pdfFile = null;
try
{
pdfFile = PDFFile.Open(pdfInputPath);
page = pdfFile.PageCount;
if (!Directory.Exists(imageOutputPath))
{
Directory.CreateDirectory(imageOutputPath);
}
// start to convert each page
if (!File.Exists(imageOutputPath + imageName + "_1.Png"))//不存在图片才转换
{
for (int i = 1; i <= pdfFile.PageCount; i++)
{
Bitmap pageImage = pdfFile.GetPageImage(i - 1, 56 * (int)definition);
pageImage.Save(imageOutputPath + imageName + "_" + i.ToString() + "." + imageFormat.ToString(), imageFormat);
pageImage.Dispose();
}
}
pdfFile.Dispose();
File.Delete(imageOutputPath + imageName + ".pdf");
}
catch
{
page = 0;
pdfFile.Dispose();
}





--------------------编程问答-------------------- 没有Office环境, PPT COM就可以SaveAs图片 --------------------编程问答--------------------
引用 1 楼 nonocast 的回复:
没有Office环境, PPT COM就可以SaveAs图片


大佬,别骗我啊

我用office的com组件早就实现了 将ppt转换为picture

另换我也有法子利用 Adobe 公司的接口,将ppt转换为 picture.

我说的这2条思路,都是糟糕无比的,安装office 大概有600MB,

adobe 500MB.

我们的要求,顶多几十兆,  一个项目就为了这么个小功能, 安装这么多,

显然不合适,于是采用第三方的, aspose公司的来实现。


遇到了问题,才来问的

--------------------编程问答--------------------
引用 2 楼 bsnry 的回复:
引用 1 楼 nonocast 的回复:
没有Office环境, PPT COM就可以SaveAs图片

大佬,别骗我啊

我用office的com组件早就实现了 将ppt转换为picture

另换我也有法子利用 Adobe 公司的接口,将ppt转换为 picture.

我说的这2条思路,都是糟糕无比的,安装office 大概有600MB,

adobe 500MB.
……
楼主你发的邮件我看了,我没做过,只能说声sorry了! --------------------编程问答--------------------
引用 2 楼 bsnry 的回复:
引用 1 楼 nonocast 的回复:没有Office环境, PPT COM就可以SaveAs图片

大佬,别骗我啊

我用office的com组件早就实现了 将ppt转换为picture

另换我也有法子利用 Adobe 公司的接口,将ppt转换为 picture.

我说的这2条思路,都是糟糕无比的,安装office 大概有600MB,

ado……


那就通过web service转。。。话说没用过aspose --------------------编程问答-------------------- 推荐用【O2S.Components.PDFRender4NET.dll】吧PDF转换成图片,因为使用这个代码最简洁、使用起来最方便,而且效率算是不错的,也没有水印,但是色彩的PDF转换之后可能会失真,具体功能代码下面帖子里有。
http://blog.csdn.net/shi0090/article/details/7262199 --------------------编程问答--------------------
引用 5 楼 shi0090 的回复:
推荐用【O2S.Components.PDFRender4NET.dll】吧PDF转换成图片,因为使用这个代码最简洁、使用起来最方便,而且效率算是不错的,也没有水印,但是色彩的PDF转换之后可能会失真,具体功能代码下面帖子里有。
http://blog.csdn.net/shi0090/article/details/7262199


需求如下:推荐非常小的库,不能太大,不能用office,  

来转换ppt!!!!          自然也不能失真。

没法子,项目需求如此。


你的文章我看过。  用了aspose,就剩下ppt没有搞定了。其他都搞定了

--------------------编程问答-------------------- 我没有做过将PPT转换成图片,所以这方面我也不熟,但是总觉得aspose很强大,没有理由不支持ppt转图片吧。你找一个新一点的版本试一下~ --------------------编程问答-------------------- --------------------编程问答-------------------- aspose 换换为pdf 始终报错,错误代码:
            Aspose.Slides.Presentation ppt = new Aspose.Slides.Presentation("f:\\1.ppt");
         //   ppt.SaveToPdf("f:\\1.pdf"); // Aspose.Slides.Export.SaveFormat.Pdf);

           ppt.Save("f:\\1.pdf", SaveFormat.Pdf);
这代码生成就提示错误 


Aspose.Slides.Presentation”不包含“Save”的定义,并且找不到可接受类型为“Aspose.Slides.Presentation”的第一个参数的扩展方法“Save”(是否缺少 using 指令或程序集引用?)


我搜索了一下 aspose.slides,结果没有发现这个sava函数

--------------------编程问答-------------------- 只有 savetopdf函数

于是我保存pdf,结果程序异常

--------------------编程问答-------------------- 楼主,我刚也在用这个,遇见同样的问题,你后来是怎么解决的? --------------------编程问答--------------------
引用 11 楼 lpncn 的回复:
楼主,我刚也在用这个,遇见同样的问题,你后来是怎么解决的?


没有解决, ppt转换图片不成功,

已经放弃了,

只好用微软的office库来解决 --------------------编程问答-------------------- ppt97-2003版
Aspose.Slides.Presentation pres = new Aspose.Slides.Presentation("ppt文件路径");
pres.Save("图片保存路径", Aspose.Slides.Export.SaveFormat.Tiff);

ppt07版也差不多 
亲测成功。
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,