PdfParser 是一个标准的 PHP 库提供个用于从 PDF 文件中抽取数据的工具。它加载 PDF文件并解析文件中对象、头和元数据,可抽取其中的文本信息,支持压缩的 PDF、MAC OS 罗马字符集编码、8进制和16进制编码。兼容PSR-0 和 PSR-1。
官方文档:https://www.pdfparser.org/documentation
使用composer安装依赖包:
composer require smalot/pdfparser
1、获取文件的基本信息,如:制作人、日期、总页数等
namespace App\Http\Controllers;
use \Smalot\PdfParser\Parser;
class eBookController
{
public function demo()
{
$parser = new Parser();
$pdf = $parser->parseFile('./file.pdf');
$details = $pdf->getDetails();
return response()->json($details);
}
}
2、读取文件中的所有内容
$parser = new Parser();
$pdf = $parser->parseFile('./file.pdf');
$con = $pdf->getText(); //将所有内容读取到一个字符串中
return response()->json($con);
3、分页读取、指定页内容
$parser = new Parser();
$pdf = $parser->parseFile('./file.pdf');
$pages = $pdf->getPages(); //分页信息
//指定页内容
$content = $pages[1]->getText();
foreach ($pages as $page) {
$con[] = $page->getText(); //输出每一页的内容
}
return response()->json($con);