如何以自动方式验证图像是不是在本地下载的 PDF 中?

Posted

技术标签:

【中文标题】如何以自动方式验证图像是不是在本地下载的 PDF 中?【英文标题】:How to verify in an automated way that an image is inside a locally downloaded PDF?如何以自动方式验证图像是否在本地下载的 PDF 中? 【发布时间】:2022-01-14 11:20:13 【问题描述】:

在赛普拉斯我有一个测试用例,我下载了一个 PDF,我必须验证它里面是一个特定的图像(连同更多信息,图像只有页面的 1/8,PDF 有 5 到 10页面,其余信息我不感兴趣,如果图像在 PDF 中,则足以将测试用例放置为 PASS。

我可以在 PDF 中搜索文本,使用名为 pdf-parse 的 NPM 包将 PDF 转换为文本(如果它对任何人有帮助,我将它放在评论的末尾以防万一)然后我只是搜索我需要的字符串,但我找不到在 PDF 中搜索图像的方法,无论是使用这个包还是使用其他包。有人知道这样做的方法吗?非常感谢。

const pdf = require('pdf-parse');

const parsePDF = async (pathPDF) => 
 const pdfPathname = path.join(repoRoot, pdfName)
 let dataBuffer = fs.readFileSync(pathPDF);
 return await pdf(dataBuffer) 


module.exports = (on, config) =>   
 on('task', 
  getPDFText(pathPDF) 
  return parsePDF(pathPDF);
  
 );

【问题讨论】:

【参考方案1】:

不完全是我想要的,但通过将原始 PDF 与真实 PDF 与compare-pdf 进行比较,我设法完成了我需要的工作。

【讨论】:

以上是关于如何以自动方式验证图像是不是在本地下载的 PDF 中?的主要内容,如果未能解决你的问题,请参考以下文章

java 模拟登陆带验证码的网页,就想知道怎么将验证码以图片的形式下载到本地。。。。。

如何在 C# 中以编程方式搜索 PDF 文档 [关闭]

如何知道 PDF 是不是仅包含图像或已被 OCR 扫描以进行搜索?

如何在python中以自动方式检查文件夹中是不是存在特定文件

如何以编程方式将图像下载到 iPad?

Google Chrome打开pdf文件跳出下载界面怎么解决?