`

PPT转图片

    博客分类:
  • java
阅读更多
    小结下最近做的东西吧。因为是做一个素材管理的东西,因此需要处理各种各样的素材,音频、视频、图片、pdf、ppt等等。遇到一个需求就是将PPT转成 图片组,google一下,在java里是可以jcom之类的开源库实现,本质上都是通过jni调用office的COM接口来实现。我们就需要这么一个 小功能,拖这么大个开源库进来实在没有必要。最后决定自己写个动态链接库,通过jni来调用。
    先写工具类,
public class PPTUtils {
    public PPTUtils() {
    }

    public static native void convertPPT2IMG(String pptFileName, String tmpDir);

    public static void loadLibrary() {//加载动态库
        String dllFileName = "pptDll";
        try {
            String OsName = System.getProperty("os.name");
            if (OsName.contains("Windows")) {
                dllFileName += ".dll";
            } else {
                dllFileName += ".so";
            }
            //加载动态链接库
            System.load(dllFileName);
         
        }
        catch (Exception e) {
         //   LOG.error("can not load " + dllFileName + ", " + e.getMessage());
            e.printStackTrace();
        }
     }
}
 
    编译一下,执行javah PPTUtils生成头文件PPTUtils.h。接下来用vc写个动态链接库,记的将MSPPT.OLB(在office安装目录下)加入工程,新建一个ppt2img.cpp:
#include "stdafx.h"
#include "PPTUtils.h"
#include "msppt.h"

JNIEXPORT void JNICALL Java_com_starnet_dmb_util_PPTUtils_convertPPT2IMG(JNIEnv *env,
      jclass clazz, jstring pptFileName, jstring tmpDir){
   //初始化com
    if (CoInitialize( NULL ) == E_INVALIDARG)
    {
       AfxMessageBox(_T("初始化Com失败!"));
       return;
    }  
    _Application   app;
    Presentations   prsts;
    _Presentation   prst;
    //jstring转成char *
   const char *ppt;
   ppt = env->GetStringUTFChars(pptFileName,0);
   const char *tmp;
   tmp=env->GetStringUTFChars(tmpDir,0);

   if(!app.CreateDispatch(_T("PowerPoint.Application"))){
      AfxMessageBox(_T("初始化PowerPoint失败!"));
       return;
   }
   prsts   =   app.GetPresentations();
   prst   =   prsts.Open(_T(ppt),false,false,false);
   prst.SaveAs(_T(tmp),17,false);
   app.ReleaseDispatch();
   app.Quit();
   env->ReleaseStringUTFChars(pptFileName,ppt);
   env->ReleaseStringUTFChars(tmpDir,tmp);
   CoUninitialize();
}
 
分享到:
评论
1 楼 nkjzfan 2010-04-15  
楼主 能把java代码给我发下么  谢谢啊 bruce87612@sina.com

相关推荐

    PPT转图片(C++调用c#)

    总结来说,这个示例展示了如何通过C++调用C#库实现PPT转图片的功能,利用了.NET Framework的Office Interop能力和C++的COM通信机制。对于需要在C++项目中使用.NET功能的开发者来说,这是一个实用的实践案例。

    PPT转图片,批量添加logo

    "PPT转图片,批量添加logo"这一主题涉及到的是如何高效地将PPT文件转换为图片格式,并在每张图片上统一添加公司或个人标识(logo),以便于分享、展示或进一步处理。这个过程对于品牌推广、版权保护以及内容标准化至...

    PPT转图片&文本工具

    标题中的“PPT转图片&文本工具”是指一个软件或应用程序,它的主要功能是将PowerPoint(PPT)演示文稿转换为图像文件和文本格式。这个工具的特点是体积小,只有8KB,这意味着它非常轻便,不会占用大量的硬盘空间。...

    PPT转图片工具,可以调图片大小

    标题中的“PPT转图片工具,可以调图片大小”指的是一个软件或应用程序,它能够将PowerPoint(PPT)演示文稿转换成图片格式,并且在转换过程中允许用户调整输出图片的尺寸。这个功能对于那些需要在网络上分享PPT内容...

    ppt转图片工具运行效果.zip

    由于某些情况,软件中不能播放ppt, 这时候需要将ppt转成图片来展示, 但网上找到的方法都只支持每一张幻灯片一张图片, 而客户想要的效果是, 幻灯片中有动画时, 要能将每个动画帧保存为一张图片(一张幻灯片通过按键引导...

    ppt转图片(支持动画帧的转换)

    ppt转图片(支持动画帧的转换) ,即ppt播放时,每次点击鼠标后的页面需要保存为一张图片 目前使用此脚本需要电脑上预装Microsoft Office套件

    PPT转图片程序

    namespace PPT2Img { class Program { [STAThread] static void Main(string[] args) { TaskTimerRecorder taskTimerRecorder = new TaskTimerRecorder(); //确认需要执行的操作 //getinfo:获取总页数 //...

    com.aspose.slides18.7和com.aspose.slides.18.6整合包,已供以后ppt转图片和word转图片使用

    在Java环境中,你可以通过导入这两个JAR包来实现PPT转图片和Word转图片的功能。首先,你需要将这两个JAR包添加到你的项目类路径中,这样你的程序才能访问其中的API。在大多数集成开发环境(IDE)中,这可以通过设置...

    java文档excel、word、pdf、ppt转图片

    在Java编程环境中,将文档(如Excel、Word、PDF、PPT)转换为图片是一种常见的需求,这在处理大量文档预览、数据可视化或者移动设备兼容性问题时尤其有用。以下是一些关于如何使用Java实现这种转换的关键知识点: 1...

    java用poi转ppt为图片和用pdfbox转pdf为图片的demo

    在"java用poi转ppt为图片"的场景下,我们可以利用POI的API将PPT文件的每一页转换为图像。这样做的好处在于,可以方便地在网络上传输或嵌入到其他不支持PPT格式的应用中。转换过程通常涉及打开PPT文件,遍历每一页...

    ppt转换成图片

    在IT行业中,转换文件...总的来说,将PPT转换为图片是一种实用的解决方案,特别是在跨平台分享或不支持Office软件的环境中。通过掌握COM技术和PowerPoint的自动化,我们可以创建自定义的转换工具,以满足特定的需求。

    应用Apache POI系统库实现PPT直接转图片的程序

    应用Apache POI系统库实现PPT直接转图片的程序,其中的lib目录内的各个Jar包文件为所需要的系统库文件,ConvertPPTFileToImage.java为转换的功能程序类,TestConvertPPTFileToImage.java为测试用的相关程序。

    富文本pdf转图片image,图片image转ppt

    本文将深入探讨如何使用Java技术实现“富文本PDF转图片Image”以及“图片Image转PPT”的过程,结合一个基于Spring Web的示例项目进行阐述。 首先,我们要解决的是“富文本PDF转图片Image”。在Java中,可以借助...

    java ppt/pptx转图片所需要的全部jar包

    综上所述,"java ppt/pptx转图片所需要的全部jar包"通常包含Apache POI的相关库,这些库提供了处理PPT/PPTX文件并将其转换为图片的API。开发者需要熟悉Java图形绘制、文件I/O以及Apache POI的使用,才能实现这一功能...

    php将ppt转成图片并上传到OSS

    通过php将ppt切换成图片,并提交到阿里云OSS上。功能简单易用强大。只需要将要转换的 ppt 放到 pptfile 文件夹下,记住后缀是 ppt。导出的文件会放到outfile中。补全 index.php中的OSS秘钥等信息。双击start.bat,...

    C# PPT 转 图片/PDF

    5. **PDF转换**:如果项目包含了PPT转PDF的功能,可能使用了第三方库,如iTextSharp或Ghostscript,来实现。这些库能够解析PPT文件并将其导出为PDF格式,保持原有的布局和样式。 6. **DLL文件**:项目中提到的"包换...

    ppt转换成图片文件

    在IT行业中,转换文件格式是一项常见的任务,尤其在处理演示文稿时,有时我们需要将PPT(PowerPoint)文件转换为图片格式,如JPG,以便于在网络上传输、嵌入网页或者便于移动设备查看。这个名为“ppt转换图片_vc”的...

    wpf中ppt转换图片并一页一页打开

    在本文中,我们将深入探讨如何在WPF(Windows Presentation Foundation)应用中实现PPT(PowerPoint)文件转换为图片,并逐页展示这些图片。首先,我们需要理解WPF的基础,包括UI设计、数据绑定以及图像处理。接着,...

    利用Aspose对word,ppt,pdf转换图片

    ### Aspose.Words转图片 1. **打开文档**:使用`Document`类加载Word文档。 ```csharp using Aspose.Words; Document doc = new Document("path_to_your_word_file.docx"); ``` 2. **创建图像渲染选项**:设置图像...

    java利用openoffice,把word,execl,ppt转成图片,

    Entry.java这个类的原理是先通过OfficeToPDF.java把文档转成pdf,然后再通过Pdf2Jpg.java这个类把PDF转成JPG或者PNG,想转成什么格式图片在Pdf2Jpg.java这个类当中设置一下,代码经过测试,完全没有问题,如果碰到...

Global site tag (gtag.js) - Google Analytics