使用XPDF将PDF转换为HTML的操作步骤

时间:2020-11-10 16:51:32 HTML DOM 我要投稿

使用XPDF将PDF转换为HTML的操作步骤

  1、下载xpdf最新版本,我下载的是xpdf-3.02pl2-win32.zip

  2、下载中文支持包,我下载的是xpdf-chinese-simplified.tar.gz

  3、下载pdftohtml支持包,我下载的是:pdftohtml-0.39-win32.tar.gz

  4、解压调试

  1) 先将xpdf-3.02pl2-win32.zip解压,解压后的内容可根据需要进行删减,如果只需要转换为txt格式,其他的

  exe文件可以删除,只保留pdftotext.exe,以此类推;

  2) 然后将xpdf-chinese-simplified.tar.gz解压到刚才xpdf-3.02pl2-win32.zip的解压目录;

  3) 将pdftohtml-0.39-win32.tar.gz解压,pdftohtml.exe解压到xpdf-3.02pl2-win32.zip的解压目录;

  4) 目录结构:

  +---[X:xpdf]

  |-------各种转换用到的exe文件

  |

  |-------xpdfrc

  |

  +------[X:xpdfxpdf-chinese-simplified]

  |

  http://www.javaeye.com/forums 1.6 Word/Excel/PDF文件转换成HTML整理

  |

  +-------很多转换时需要用到的`字符文件

  xpdfrc:此文件是用来声明转换字符集对应路径的文件

  5) 修改xpdfrc文件(文件原名为sample-xpdfrc)

  修改文件内容为:

  #----- begin Chinese Simplified support package

  cidToUnicode Adobe-GB1 xpdf-chinese-simplifiedAdobe-GB1.cidToUnicode

  unicodeMap ISO-2022-CN xpdf-chinese-simplifiedISO-2022-CN.unicodeMap

  unicodeMap EUC-CN xpdf-chinese-simplifiedEUC-CN.unicodeMap

  unicodeMap GBK xpdf-chinese-simplifiedGBK.unicodeMap

  cMapDir Adobe-GB1 xpdf-chinese-simplifiedCMap

  toUnicodeDir xpdf-chinese-simplifiedCMap

  fontDir C:WINDOWSFonts

  displayCIDFontTT Adobe-GB1 C:WINDOWSFontssimhei.ttf

  #----- end Chinese Simplified support package

  6) 创建bat文件pdftohtml.bat(放置的路径不能包含空格)

  内容为:

  @echo off

  set folderPath=%1

  set filePath=%2

  cd /d %folderPath%

  pdftohtml -enc GBK %filePath%

  exit

  http://www.javaeye.com/forums 1.6 Word/Excel/PDF文件转换成HTML整理

  7) 创建类

  public class ConvertPdf

  {

  private static String INPUT_PATH;

  private static String PROJECT_PATH;

  public static void convertToHtml(String file, String project)

  {

  INPUT_PATH = file;

  PROJECT_PATH = project;

  if(checkContentType()==0)

  {

  toHtml();

  }

  }

  private static int checkContentType()

  {

  String type = INPUT_PATH.substring(INPUT_PATH.lastIndexOf(".") + 1, INPUT_PATH.length())

  .toLowerCase();

  if (type.equals("pdf"))

  return 0;

  else

  return 9;

  }

  private static void toHtml()

  {

  if(new File(INPUT_PATH).isFile())

  {

  try

  {

  String cmd = "cmd /c start X:pdftohtml.bat "" + PROJECT_PATH + "" http://www.javaeye.com/forums 1.6 Word/Excel/PDF文件转换成HTML整理

  Runtime.getRuntime().exec(cmd);

  }

  catch (IOException e)

  {

  e.printStackTrace();

  }

  }

  }

  }

  String cmd = "....";此处代码是调用创建的bat文件进行转换

  8) 测试转换

  public static void main(String[] args)

  {

  ConvertPdf.convertToHtml("C:test.pdf", "X:xpdf");

  }