falkemedia/pdf-extractor

此包自动生成一个SQLite数据库,您可以用来在PDF上进行全文搜索。

0.0.3 2020-08-12 13:30 UTC

This package is auto-updated.

Last update: 2024-09-12 23:05:06 UTC


README

Latest Version on Packagist Total Downloads

此包自动生成一个SQLite数据库,您可以用来在PDF上进行全文搜索。这意味着您将PDF文件,使用此工具生成数据库,然后查询数据库而不是PDF进行任何文本搜索。

此工具还会生成缩略图,您可以使用它以任何您喜欢的格式显示搜索结果。

此工具受到 spatie/pdf-to-image 的极大启发
并且依赖于 spatie/pdf-to-text

安装

您可以通过composer安装此包

composer require falkemedia/pdf-extractor

此包需要安装ImageMagic和 imagick php扩展。
macOS Catalina + PHP 7.3的安装说明

brew install imagemagick 
pecl install imagick

如果有任何ImageMagic的错误,建议 阅读此指南

此外,在幕后此包利用了 pdftotext。在mac上,您可以使用brew安装二进制文件

brew install poppler

使用方法

examples/extract_pdf_data.php

<?php

namespace falkemedia\PdfExtractor\Examples;

use falkemedia\PdfExtractor\Extractor;

require 'vendor/autoload.php';

// Load PDF
$extractor = new Extractor();
$extractor->load('/path/to/a/pdf/file.pdf');

// Generate thumbnails
$extractor
    ->setMaxThumbnailHeight(600)
    ->setMaxThumbnailWidth(480)
    ->setQuality(75)
    ->generateThumbnails();

// Store Fulltext infos
$extractor->generateTextDatabase();

如果您有一个保存的sqlite数据库,您可以执行全文查询,例如

SELECT*FROM pages WHERE body MATCH "*YOUR_SEARCH_QUERY*"

测试

composer test

变更日志

请参阅 CHANGELOG 以获取有关最近更改的更多信息。

贡献

请参阅 CONTRIBUTING 以获取详细信息。

安全

如果您发现任何安全相关的问题,请通过电子邮件 tg@falkemedia.de 联系我们,而不是使用问题跟踪器。

鸣谢

许可证

MIT许可证(MIT)。请参阅 许可证文件 以获取更多信息。

PHP包模板

此包是使用 PHP包模板 生成的。