php讀取pdf內容,php讀取pdf文件內容

本文目錄一覽:

我想用PHP讀取PDF文件的內容,尤其是現在很多的掃描後轉為PDF的文件,請問怎麼讀?

你可以從網上找一些為PHP語言編寫的 pdf 擴展庫,數量不少,比如:

PHP的PDF解析庫 PdfParser

PdfParser 是一個標準的 PHP 庫提供個用於從 PDF 文件中抽取數據的工具。它載入 PDF 文件並解析文件中對象、頭和元數據,可抽取其中的文本信息,支持壓縮的 PDF、MAC OS 羅馬字符集編碼、8進位和16進位編碼。兼容 PSR-0 和 PSR-1。

 

示例代碼:

$document = \Smalot\PdfParser\Document::parseFile(‘document.pdf’);

$pages    = $document-getPages();

$text     = $pages[1]-getText();

PHP官方里也有一個對PDF支持的庫 : PDFlib, 你可以根據自己的需要和喜好來使用。

php讀取pdf文檔內容,並分頁顯示

?php()

// 創建一個新的pdf文檔句柄

$pdf = pdf_new();

// 打開一個文件

pdf_open_file($pdf, “pdftest.pdf”);

// 開始一個新頁面(a4)

pdf_begin_page($pdf, 595, 842);

// 得到並使用字體對象

$arial = pdf_findfont($pdf, “arial”, “host”, 1);

pdf_setfont($pdf, $arial, 10);

// 輸出文字

pdf_show_xy($pdf, “this is an exam of pdf documents, it is a good lib,”,50, 750);

pdf_show_xy($pdf, “if you like,please try yourself!”, 50, 730);

echo “a href=m.php?page=1首頁/a “;

if($page!=1){

echo “a href=m.php?page=”.($page-1).”上一頁/a “;

}

if($page$page_count){

echo “a href=m.php?page=”.($page+1).”下一頁/a “;

}

echo “a href=m.php?page=”.$page_count.”尾頁/a”;

// 結束一頁

pdf_end_page($pdf);

// 關閉並保存文件

pdf_close($pdf);

?更多問題到問題求助專區

如何從php程序讀取pdf文檔中的文本信息

PHP程序pdf格式文件函數庫

本函數庫共有65個函數

PDF是Adobe所發展的可攜式文件格式,它的文件可以在網路上傳輸、瀏覽,甚至使用印表機印出,或使用其它輸出裝置輸出,都可以保存原來的文字及圖片的編排。詳細的信息可以參考 Adobe 的網站。參考其中有關 PDF 或 Acrobat 的部份。

在 UNIX 系統中,可以使用 Thomas Merz 開發的 PDF 函數庫。將它編譯安裝完成後,再編譯 PHP 程序方可供 PHP 使用 pdflib。編譯時可能要 JPEG library 及 TIFF library。

除了用這個函數庫可以建立 PDF 文件外,FastIO 公司發展的產品 ClibPDF 也可以處理 PDF 文件。

以下為處理 PDF 文件的範例,本例對 test.pdf 加工後等待用戶讀取。

?php

$fp = fopen(“test.pdf”, “w”);

$pdf = PDF_open($fp);

pdf_set_info_author($pdf, “Uwe Steinmann”);

PDF_set_info_title($pdf, “Test for PHP wrapper of PDFlib 2.0”);

PDF_set_info_author($pdf, “Name of Author”);

pdf_set_info_creator($pdf, “See Author”);

pdf_set_info_subject($pdf, “Testing”);

PDF_begin_page($pdf, 595, 842);

PDF_add_outline($pdf, “Page 1”);

pdf_set_font($pdf, “Times-Roman”, 30, 4);

pdf_set_text_rendering($pdf, 1);

PDF_show_xy($pdf, “Times Roman outlined”, 50, 750);

pdf_moveto($pdf, 50, 740);

pdf_lineto($pdf, 330, 740);

pdf_stroke($pdf);

PDF_end_page($pdf);

PDF_close($pdf);

fclose($fp);

echo “A HREF=getpdf.php3finished/A”;

?

上例中的 gettest.php3 可能像下面的樣子

?php

$fp = fopen(“test.pdf”, “r”);

header(“Content-type: application/pdf”);

fpassthru($fp);

fclose($fp);

?

PDF_get_info: 返迴文件信息。

PDF_set_info_creator: 配置建檔者字元串。

PDF_set_info_title: 配置文件標題。

PDF_set_info_subject: 配置文件主題。

PDF_set_info_keywords: 配置文件的關鍵字。

PDF_set_info_author: 配置文件作者。

PDF_open: 建立新的 PDF 檔。

PDF_close: 關閉 PDF 檔。

PDF_begin_page: 啟始 PDF 文件頁面。

PDF_end_page: 關閉 PDF 文件頁面。

PDF_show: 輸出字元串到 PDF 文件。

PDF_show_xy: 輸出字元串到指定坐標。

PDF_set_font: 配置使用的字型及大小。

PDF_set_leading: 配置行距。

PDF_set_text_rendering: 配置文字表現方式。

PDF_set_horiz_scaling: 配置文字水平間距。

PDF_set_text_rise: 配置文字高度。

PDF_set_text_matrix: 配置文字矩陣。

PDF_set_text_pos: 配置文字位置。

PDF_set_char_spacing: 配置字元間距。

PDF_set_word_spacing: 配置字間距。

PDF_continue_text: 輸出文字。

PDF_stringwidth: 計算字元串的寬度。

PDF_save: 儲存環境變數。

PDF_restore: 還原環境變數。

PDF_translate: 移動原點。

PDF_scale: 縮放類。

PDF_rotate: 旋轉類。

PDF_setflat: 配置平滑值。

PDF_setlinejoin: 配置連接參數。

PDF_setlinecap: 配置 linecap 參數。

PDF_setmiterlimit: 配置斜邊界限。

PDF_setlinewidth: 配置線寬。

PDF_setdash: 配置虛線樣式。

PDF_moveto: 配置處理的坐標點。

PDF_curveto: 繪貝氏曲線。

PDF_lineto: 繪直線。

PDF_circle: 繪圓。

PDF_arc: 繪弧。

PDF_rect: 繪長方形。

PDF_closepath: 形成封閉的向量形狀。

PDF_stroke: 沿向量繪線。

PDF_closepath_stroke: 形成封閉的向量形狀並沿向量繪線。

PDF_fill: 填滿目前的向量。

PDF_fill_stroke: 填滿目前的向量並沿向量繪線。

PDF_closepath_fill_stroke: 形成封閉的向量形狀沿向量繪線並填滿。

PDF_endpath: 關閉目前向量。

PDF_clip: 組合所有向量。

PDF_setgray_fill: 指定填入的顏色為灰階。

PDF_setgray_stroke: 指定繪圖的顏色為灰階。

PDF_setgray: 指定繪圖的顏色為灰階並填入。

PDF_setrgbcolor_fill: 指定填入的顏色為彩色。

PDF_setrgbcolor_stroke: 指定繪圖的顏色為彩色。

PDF_setrgbcolor: 指定繪圖的顏色為彩色並填入。

PDF_add_outline: 目前頁面加入書籤。

PDF_set_transition: 配置頁的轉換。

PDF_set_duration: 配置二頁的切換時間。

PDF_open_gif: 打開 GIF 圖檔。

PDF_open_memory_image: 打開內存圖檔。

PDF_open_jpeg: 打開 JPEG 圖檔。

PDF_close_image: 關閉圖檔。

PDF_place_image: 放置圖片到 PDF 檔指定位置。

PDF_put_image: 放置圖片到 PDF 檔。

PDF_execute_image: 放置 PDF 檔中圖片到指定位置。

PDF_add_annotation: 加入注釋。

原創文章,作者:VGJO,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/137627.html

相關推薦

  • at least one option must be selected

    問題解答:當我們需要用戶在一系列選項中選擇至少一項時,我們需要對用戶進行限制,即「at least one option must be selected」(至少選擇一項)。 一、…

    編程 2025-04-29
  • Python官網中文版:解決你的編程問題

    Python是一種高級編程語言,它可以用於Web開發、科學計算、人工智慧等領域。Python官網中文版提供了全面的資源和教程,可以幫助你入門學習和進一步提高編程技能。 一、Pyth…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • 銀行資金管理系統總結

    銀行資金管理系統是銀行日常業務運營的核心支撐系統,主要負責處理銀行的資金流動、結算、清算等業務。本文將從功能特點、技術架構、安全性以及未來發展趨勢等多個方面對銀行資金管理系統進行詳…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • 如何修改mysql的埠號

    本文將介紹如何修改mysql的埠號,方便開發者根據實際需求配置對應埠號。 一、為什麼需要修改mysql埠號 默認情況下,mysql使用的埠號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • 英語年齡用連字元號(Hyphenation for English Age)

    英語年齡通常使用連字元號表示,比如 “five-year-old boy”。本文將從多個方面探討英語年齡的連字元使用問題。 一、英語年齡的表達方式 英語中表…

    編程 2025-04-29
  • Idea新建文件夾沒有java class的解決方法

    如果你在Idea中新建了一個文件夾,卻沒有Java Class,應該如何解決呢?下面從多個方面來進行解答。 一、檢查Idea設置 首先,我們應該檢查Idea的設置是否正確。打開Id…

    編程 2025-04-29
  • 金額選擇性序列化

    本文將從多個方面對金額選擇性序列化進行詳細闡述,包括其定義、使用場景、實現方法等。 一、定義 金額選擇性序列化指根據傳入的金額值,選擇是否進行序列化,以達到減少數據傳輸的目的。在實…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29