top
linkSite
 
 
 
 
macro
概况
解决方案
编程指南
使用技巧
技术支持
 
search
新闻搜索
当前位置:首页 > 二次开发 > 使用技巧 > 文字处理内容转换为图片操作指南
文字处理内容转换为图片操作指南

  我们在传阅文件的时候,有些时候可能只想给别人看而不想让别人修改。有几种办法可以做到,一种是另存为只读格式的PDF文件,别人只能用PDF阅读器查看,还有一种更简单的方法是,将文档转换为图片,这种方法既简单又实用。现在,永中Office开发版提供了将文字处理中的内容转换为图片的接口API功能,方便人们的使用。

永中提供了三个相关的API:

  • public void convertToJPEG(int pageIndex, String fileName) throws java.io.IOException, java.io.FileNotFoundException,其功能是将页面视图中的第 pageIndex页转换为名为 fileName的JPG图片;页码起始为1。当pageIndex=0时,表示将全部页保存为图片,也就是生成类似 fileName001, fileName002这样的图片集;
  • public void convertToJPEG(String fileName) throws java.io.IOException, java.io.FileNotFoundException,其功能是把所有页面视图转换成一系列JPEG图像文件,产生的图片文件为fileName+00+页码号。即:如有3页文本,产生的图片分别为fileName001.jpg、fileName002.jpg、fileName003.jpg;
  • public void convertToOneJPEG(String fileName) throws IOException, FileNotFoundException,其功能是把所有页面视图转换成一JPEG图像文件,需要说明的是,如果页面较多可能会造成内存溢出异常,使用时要注意;

  下面我们以一个简单的例子来说明这些API的使用方法。

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb18030">
<title>将文字处理内容转换为图片</title>
<script language="JavaScript">
<!--
//利用JavaSript函数调用Applet中的convert2JPEG方法
function convert()
{
  document.eioffice.convert2JPEG(document.form1.T1.value);
}
// -->
</script>
</head>

<body>
<form method="POST" action="" name="form1">
  <p>
    <font size=4><center><b>网页Form控件与EIO_Applet互动示例</b></center></font>
  </p>
  <center><p>
    <applet width="700" height="500" name="eioffice" code="EIOApplet.class" >
      本浏览器不支持JAVA Applet
    </applet></p>
    将文字处理文档第 <input type="text" name="T1" size="2" value="1">&nbsp; 页内容
    <input type="button" value="转换为图片" name="convertfile" onclick="convert();">
    <a href="d:\PIC.JPG">查看该图片</a>
  </center>
</form>
</body>
</html>

  这个网页嵌入永中Office小应用程序,并根据输入的页码,生成相应的图片。

  运行这个网页时,先用永中Office打开一个已经存在的文件(或者新建一个文字处理文件),在最后一行输入要生成图片的页码数,点击“转换为图片”,则生成了图片,点击“查看该图片”将打开图片供查阅。如果是第一页,则生成如左图片。

  如果输入第0页,表示自动生成全部页面的图片,这篇文档共3页,故会在相同目录下生成3副图片,文件名称分别是“PIC001.JPG”、“PIC002.JPG”和“PIC003.JPG”。

   这一切是如何实现的呢?我们来看一看 EIOApplet.class这个Applet的源代码就知道了。

import java.awt.Container;
import application.Application; //导入永中Office的类
import application.workbooks.workbook.documents.Document;

/**
*
* @author Evermore
*/
public class EIOApplet extends javax.swing.JApplet
{
  /** Creates a new instance of EIO_Applet */
  public EIOApplet()
  {
  }
  private void createInstance()
  {
    //创建永中Office的applet实例
    Application.createInstance(this);
    //获得applet实例
    getContentPane().add("Center", Application.getInstance());
    //将applet添加到Applet面板中
    Container contentPane=getContentPane();
  }
  public void start()
  {
    createInstance();
  }
  //EIO_Applet中的方法,供网页JavaScript函数调用,与网页按钮联动
  public void convert2JPEG(java.lang.String pageNo)
  {
    //Application.gotoProduct(1);//切换到文字处理应用,此时为新建一个空白文档
    Document doc = Application.getWorkbooks().getActiveDocument();
    try
    {
      int pno = java.lang.Integer.parseInt(pageNo);
      doc.convertToJPEG(pno, "d:\\PIC");
      // doc.convertToOneJPEG("d:\\PIC"); // 保存全部页面为一副图片
    }
    catch (java.io.IOException e)
    {
    }
  }
}

  看上面Applet中的 convert2JPEG()方法,首先取得活动的文字处理文档,然后直接调用doc. ConvertToJPEG()方法进行转换,该方法需要进行异常处理。如果采用 doc.convertToOneJPEG()方法,则可以将整篇文档一次性地转换为一副图片,效果如上页的右图所示,方便吧。不过这种转换很耗内存,如果页码太多,建议不用使用。

  编译方法:在命令行用下列命令编译该java文件(确保永中Office已经安装了)
javac -classpath %EIO_HOME%/EIOOffice.ese;. EIOApplet.java

  其中EIO_HOME为安装永中Office时系统自动设置的永中Office的路径;如果没有设置JAVA_HOME环境变量,则在javac命令前填充JDK的具体路径。

 
right
 永中集成Office 2009
 产品聚焦
·产品注册
·在线升级
·2009试用版下载
·补丁下载
 资料下载
·模板下载
·产品白皮书
·应用秘笈
·二次开发手册
 与我们联系
·800-808-6655
·0510-85213588(客服)
公司荣誉
二次开发
bottom
Copyright © 2001-2008 永中科技有限公司
电话:0510-85213588 8008086655 传真:0510-85218836