var express = require('express'); // const { PdfReader,Rule,displayValue,displayTable } = require("pdfreader"); // var pdf_table_extractor = require("pdf-table-extractor"); // const pdfTableExtractor = require('@florpor/pdf-table-extractor'); // const { PdfDataParser } = require("pdf-data-parser"); // //PDF parsed // function success(result) // { // console.log(JSON.stringify(result)); // } // //Error // function error(err) // { // console.error('Error: ' + err); // } var router = express.Router(); // const processItem = Rule.makeItemProcessor([ // Rule.on(/^Hello \"(.*)\"$/) // .extractRegexpValues() // .then(displayValue), // Rule.on(/^Value\:/) // .parseNextItemValue() // .then(displayValue), // Rule.on(/^c1$/).parseTable(3).then(displayTable), // Rule.on(/^Values\:/) // .accumulateAfterHeading() // .then(displayValue), // ]); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'Express' }); }); router.post('/', async function(req,res,next){ if(req.body.filePDF){ // let parser = new PdfDataParser({url: req.body.filePDF}); // var rows = await parser.parse(); // console.log(rows); // pdfTableExtractor(req.body.filePDF).then(res => { // console.log(JSON.stringify(res)); // }); // pdf_table_extractor(req.body.filePDF,success,error); // tableExport('table1', req.body.filePDF, 'image'); // var rows = {}; // indexed by y-position // function flushRows() { // Object.keys(rows) // => array of y-positions (type: float) // .sort((y1, y2) => parseFloat(y1) - parseFloat(y2)) // sort float positions // .forEach((y) => console.log((rows[y] || []).join(""))); // rows = {}; // clear rows for next page // } // new PdfReader().parseFileItems(req.body.filePDF, (err, item) => { // // if (err) console.error(err); // // else processItem(item); // if (err) { // console.error({ err }); // } else if (!item) { // flushRows(); // console.log("END OF FILE"); // } else if (item.page) { // flushRows(); // print the rows of the previous page // console.log("PAGE:", item.page); // } else if (item.text) { // // accumulate text items into rows object, per line // (rows[item.y] = rows[item.y] || []).push(item.text); // } // }); } res.render('index', { title: 'Express OK!' }); }); module.exports = router;