node.js - 如何在 Node.js 中以像素为单位获取 PDF 尺寸?
问题描述
我试过pdf2json:
const PDFParser = require("pdf2json");
let pdfParser = new PDFParser();
pdfParser.loadPDF("./30x40.pdf"); // ex: ./abc.pdf
pdfParser.on("pdfParser_dataReady", pdfData => {
width = pdfData.formImage.Width; // pdf width
height = pdfData.formImage.Pages[0].Height; // page height
console.log(`Height : ${height}`) // logs 70.866
console.log(`Width : ${width}`) // logs 53.15
});
但它给出了未知单位的尺寸!
以像素为单位的尺寸将帮助我将它们包含在将 pdf 文件转换为图像的 pdf-poppler 模块中,并且它需要以像素为单位的 pdf 文件高度。
解决方案
试试卡尺。代码示例:
const Calipers = require('calipers')('png', 'pdf');
Calipers.measure('./30x40.pdf')
.then(data => {
const { width, height } = data.pages[0];
});
或者,尝试一个无需宽度/高度即可转换它的模块: pdf2pic pdf-image node-imagemagick 如果您准备使用 pdf2json,请阅读描述输出单位的文档。
推荐阅读
- java - 在 java 应用程序中查找 websphere 版本
- kotlin - 在 Kotlin 中使用 SAX 进行异步 XML 解析
- node.js - 如何使用 AWS Cognito 与 Nodejs UI 应用程序和 Oauth 2.0 流使用护照 js?
- c# - 将 if/else 语句转换为 ?: operator C#
- html - 将图像堆叠在一起 CSS
- javascript - 表单提交后 JavaScript 函数未运行
- mongodb - 如何使用 mongoose 从 mongodb 的集合中删除 _id
- python - 使用 Python 将 sqlite3 数据库中的图像显示到 QTableWidget 中的列
- sql - SQL - 基于不同列项的计数
- javascript - 无法在 Fire Cloud Firestore 中获取集合的文档