@dsardar099/pdf-to-html
Version:
PDF to HTML (pdf2htmlex) shell wrapper
121 lines (90 loc) • 3.02 kB
Markdown
# pdf-to-html - pdf2htmlEx shell wrapper for Node.js
## This is a customized package with more functionality inherited from https://github.com/alanhk89/pdftohtml
## Thanks to [@alanhk89](https://github.com/alanh)
pdftohtml provides access to [pdf2htmlEX](https://github.com/coolwanglu/pdf2htmlEX) via shell in node.js programs.
## Requirements
- [pdf2htmlEX](https://github.com/coolwanglu/pdf2htmlEX)
## Quick Setup
1. Create a directory for you node js app
2. Do `` npm init -y ``
2. crate app.js in that directory
3. Download https://drive.google.com/drive/folders/10ar12wziNA76tGf0KaSLV_DCcljX8ORs?usp=sharing
4. Extract the downloaded zip file and copy **pdf2htmlEX.exe** and **data** folder. Paste those 2 thing to your node js app directory.
5. Do `` npm i @dsardar099/pdf-to-html ``
6. You are ready to go for writing code to convert PDF files to HTML files.
**See documentation example for more information.**
If you've docker env setup, just install it via docker
```
alias pdf2htmlEX="docker run -ti --rm -v ~/pdf:/pdf iapain/pdf2htmlex pdf2htmlEX"
```
~/pdf on host computer will be used as volume
## Installation
via yarn:
```
yarn add @dsardar099/pdf-to-html
```
via npm:
```
npm install @dsardar099/pdf-to-html
```
## Usage
```javascript
var pdftohtml = require("@dsardar099/pdf-to-html");
var converter = new pdftohtml("test/pdfs/sample.pdf", "sample.html");
// See presets (ipad, default)
// Feel free to create custom presets
// see https://github.com/alanhk89/pdftohtml/blob/master/lib/presets/ipad.js
// convert() returns promise
converter
.convert("ipad")
.then(function () {
console.log("Success");
})
.catch(function (err) {
console.error("Conversion error: " + err);
});
// If you would like to disable printing of the converted html output,
// just call converter.disablePrinting()
converter
.convert()
.then(function () {
converter.disablePrinting();
console.log("Success");
})
.catch(function (err) {
console.error("Conversion error: " + err);
});
// If you would like to enable enableContentEditable of the converted html output,
// just call converter.enableContentEditable()
converter
.convert()
.then(function () {
converter.enableContentEditable();
console.log("Success");
})
.catch(function (err) {
console.error("Conversion error: " + err);
});
// If you would like to tap into progress then create
// progress handler
converter.progress(function (ret) {
console.log((ret.current * 100.0) / ret.total + " %");
});
```
## Command line usage
```
yarn global add @dsardar099/pdf-to-html
```
```
@dsardar099/pdf-to-html sample.pdf
```
You may optionally provide your own filename and preset
```
@dsardar099/pdf-to-html sample.pdf sample.html ipad
```
## Tests
```
$ yarn test
```
## NodeJS Support
This library support nodejs v6+. Anything below v6 may still work but not tested.