Go to file
Lu Wang 3ed576b5c8 disable backgruond image selection and dragging 2013-03-01 14:02:11 +08:00
debian .. 2013-02-28 23:11:01 +08:00
share disable backgruond image selection and dragging 2013-03-01 14:02:11 +08:00
src use img instead of background-image for better printing 2013-03-01 13:24:29 +08:00
test test.py 2013-02-05 22:11:45 +08:00
.gitignore added pdf2htmlEX-config.h to .gitignore 2013-01-25 13:25:06 +00:00
.travis.yml Travis CI: print version 2013-01-25 13:02:57 +00:00
AUTHORS credit authors 2013-01-29 17:40:09 +08:00
CMakeLists.txt consistent css class names 2013-02-28 02:11:34 +08:00
ChangeLog changelog 2013-01-29 22:31:34 +08:00
LICENSE .. 2013-02-17 19:00:37 +08:00
LICENSE_GPLv2 update License 2012-08-31 21:19:46 +08:00
LICENSE_GPLv3 update License 2012-08-31 21:19:46 +08:00
README.md .. 2013-03-01 01:41:42 +08:00
TODO .. 2013-03-01 11:57:48 +08:00
build_for_ppa.py debian 2013-01-28 01:51:30 +08:00
pdf2htmlEX.1.in wiki link in manpage 2013-02-08 00:43:58 +08:00

README.md

pdf2htmlEX

Build Status

A beautiful demo is worth a thousand words:

Introduction

pdf2htmlEX renders PDF files in HTML, utilizing modern Web technologies. It aims to provide an accuracy rendering, while keeping optimized for Web display.

pdf2htmlEX is best for text-based PDF files, for example scientific papers with complicated formulas and figures. Text, fonts and formats are natively perserved in HTML such that you can still search and copy. The generated HTML file is static, Javascript is not required.

Learn more

Features

  • Precise, native text in HTML, which means
    • You can select & copy & search
    • Correct font & position & styles
    • Proper reencoding
    • Generated HTML file is of similar size as the original (uncompressed) PDF file
  • Output modes
    • Normal HTML
    • All-in-one HTML - portable & easy to share
    • One HTML per page - best for dynamic pages
  • More PDF stuffs that you love
    • Links
    • Outline
    • Printing (experimental)

Full list
Compare with others

Get started

Install

Thanks to all packagers!

Build from source

Dependency

  • CMake, pkg-config
  • GNU Getopt
  • compilers support C++11, for example
  • GCC >= 4.4.6
  • I heard about successful build with Clang
  • poppler with xpdf header >= 0.20.0 (compile with --enable-xpdf-headers)
  • Install libpng (and headers) BEFORE you compile poppler if you want background images generated
  • Install poppler-data if your want CJK support
  • fontforge (with header files)
  • git version is recommended to avoid annoying compilation issues
  • [Optional] ttfautohint
  • run pdf2htmlEX with --external-hint-tool=ttfautohint to enable it
  • [For Windows]
  • Cygwin
  • or MinGW, with some modifications to pdf2htmlEX. See pdf2htmlEX on TeX Wiki (in Japanese), special thanks to Haruhiko Okumura

Compiling

git clone --depth 1 git://github.com/coolwanglu/pdf2htmlEX.git
cd pdf2htmlEX
cmake . && make && sudo make install

Usage

pdf2htmlEX /path/to/foobar.pdf
pdf2htmlEX --help
man pdf2htmlEX

FAQ

LICENSE

GPLv2 & GPLv3 for most part, MIT License for share/*
Read LICENSE for detail.

pdf2htmlEX is totally free, please credit pdf2htmlEX if you use it
Please consider sponsoring it if you use it for commercial purpose

Font extraction, conversion or redistribution MAY BE ILLEGAL, please check your local laws

Donate Now

pdf2htmlEX is maintained by one person in spare time, and it needs your help!

Contact

Acknowledge

pdf2htmlEX is made possible thanks to the following projects:

pdf2htmlEX is inspired by the following projects:

  • pdftops & pdftohtml from poppler
  • MuPDF
  • PDF.js
  • Crocodoc
  • Google Doc

Special Thanks

  • Hongliang Tian
  • Wanmin Liu