1. 程式人生 > 程式設計 >基於Java SWFTools實現把pdf轉成swf

基於Java SWFTools實現把pdf轉成swf

SWF Tools 是一組用來處理 Flash 的 swf 檔案的工具包,包括:

  • 1. 合併工具 swfcombine
  • 2. 抽取工具 swfextract
  • 3. PDF/JPEG/PNG/AVI/TTF/WAV 到 SWF 的轉換工具 :pdf2swf,jpeg2swf,png2swf,avi2swf,font2swf,and wav2swf|
  • 4. 文字解析工具 swfstrings
  • 5. SWF 解析器 swfdump
  • 6. SWF 讀寫庫 rfxswflib

1.下載swfTools並安裝,下載地址http://www.swftools.org/download.html

2.複製程式碼到工具類中

...

  /**
   * pdf轉swf
   * swfDir 存的exe檔案路徑,我的是:D:/SWFTools/pdf2swf.exe
   *
   */
  private File pdf2swf(File pdfFile) throws Exception {
    //下載的檔案轉成pdf的pdf將要放置的路徑
    String swfPath = templateSwfDir + pdfFile.getName() + ".swf";
    File swfFile = new File(swfPath);
    Runtime r = Runtime.getRuntime();
    if (swfFile.exists()) {
      swfFile.delete();
    }
    if (!pdfFile.exists()) {
      throw new Exception("程式出現問題,pdf不存在");
    }
    try {
      Process p = r.exec(swfDir + " " + pdfFile.getPath() + " -o " + swfFile.getPath() + " -T 9");
      loadStream(p.getInputStream());
      loadStream(p.getErrorStream());
      loadStream(p.getInputStream());
    } catch (IOException e) {
      e.printStackTrace();
      throw e;
    }
    return swfFile;
  }
  static String loadStream(InputStream in) throws IOException {
    int ptr = 0;
    in = new BufferedInputStream(in);
    StringBuffer buffer = new StringBuffer();
    while ((ptr = in.read()) != -1) {
      buffer.append((char) ptr);
    }
    return buffer.toString();
  }
...

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。