我需要在pdf文件中找到某个键。据我所知,唯一的方法是将pdf解释为txt文件。我希望在PHP中执行此操作而无需安装插件/框架等。
由于
答案 0 :(得分:4)
您当然可以将PDF文件作为文本打开。 PDF文件格式实际上是对象的集合。第一行中有一个标题告诉您版本。然后,您将转到底部以查找xref表开头的偏移量,该偏移量指示所有对象的位置。文件中各个对象的内容(如图形)通常是二进制和压缩的。可以找到1.7规范here。
答案 1 :(得分:1)
我找到了这个功能,希望它有所帮助。
答案 2 :(得分:0)
您不能只打开文件,因为它是用于创建PDF显示的对象的二进制转储,包括编码,字体,文本,图像。我写了一篇博客文章,解释了如何在http://pdf.jpedal.org/java-pdf-blog/bid/27187/Understanding-the-PDF-file-format-text-streams
存储文本答案 3 :(得分:0)
谢谢大家的帮助。我欠你这段代码:
// Proceed if file exists
if(file_exists($sourcePath)){
$pdfFile = fopen($sourcePath,"rb");
$data = fread($pdfFile, filesize($sourcePath));
fclose($pdfFile);
// Check if file is encrypted or not
if(stripos($data,$searchFor)){ // $searchFor = "/Encrypt"
$counterEncrypted++;
}else{
$counterNotEncrpyted++;
}
}else{
$counterNotExisting++;
}