UNPKG

@dsardar099/pdf-to-html

Version:

PDF to HTML (pdf2htmlex) shell wrapper

121 lines (90 loc) 3.02 kB
# 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.