VFP 调用NetV8.Dll 将webview2生成的frx2pdf 转换成excel
一大波JS原生库在VFP中调用。。。。。const fs = require('fs');
const pdf_lib = require('pdf-lib');
const xlsx = require('xlsx');
async function convertPDFtoExcel(pdfPath, excelPath) {
// 读取 PDF 文件
const pdf = await pdf_lib.PDFDocument.load(fs.readFileSync(pdfPath));
// 假设 PDF 中的表格是使用 PDF 表格工具创建的
// 这里我们只提取文本,然后尝试根据文本位置组织数据
const pages = await pdf.getPages();
const texts = await pages.map((page) => page.getTextContent());
const tableData = texts.reduce((acc, { str, transform }) => {
const [x, y] = transform; // x, y 坐标
if (!acc[y]) acc[y] = [];
acc[y][x] = str;
return acc;
}, []);
// 创建 Excel 文件
const workbook = xlsx.utils.book_new();
const worksheet = xlsx.utils.aoa_to_sheet(tableData);
xlsx.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
// 写入 Excel 文件
xlsx.writeFile(workbook, excelPath);
}
// 使用函数转换 PDF 文件
convertPDFtoExcel('path/to/input.pdf', 'path/to/output.xlsx');