在 PHP 中編輯 PDF 文件

概觀

Aspose.Slides for PHP via Java 讓您透過將 PDF 頁面匯入為投影片、修改簡報,並再匯出回 PDF,來編輯 PDF 內容。本文示範簡單的文字取代。簡報保留在記憶體中,儲存中介的 PPTX 檔案為可選項。

在 PDF 中取代文字

使用 SlideCollection::addFromPdf 匯入頁面,使用 Presentation::replaceText 更新文字,並使用 Presentation::save 匯出結果。

以下範例假設 input.pdf 在匯入後包含可編輯的文字「Draft」。它會將該字取代為「Final」並寫入 edited.pdf。在匯入前先清除初始投影片可防止輸出中出現額外的空白頁面。搜尋會以全字且區分大小寫的方式匹配;null 表示不需要結果回呼。

use aspose\slides\Presentation;
use aspose\slides\SaveFormat;
use aspose\slides\TextSearchOptions;

$presentation = new Presentation();
try {
    $presentation->getSlides()->removeAt(0);

    $presentation->getSlides()->addFromPdf("input.pdf");

    $searchOptions = new TextSearchOptions();
    $searchOptions->setWholeWordsOnly(true);
    $searchOptions->setCaseSensitive(true);
    $presentation->replaceText("Draft", "Final", $searchOptions, null);

    $presentation->save("edited.pdf", SaveFormat::Pdf);
} finally {
    $presentation->dispose();
}

欲了解更多選項,請參閱 Search and Replace TextConvert PowerPoint to PDF

常見問題

我需要先儲存 PPTX 檔案再匯出 PDF 嗎?

不需要。您可以在記憶體中直接編輯並匯出同一份簡報。只有在您仍想在 PowerPoint 中繼續編輯時才需要儲存 PPTX 副本;請參閱 Save Presentations

為何有些文字仍未被更改?

範例使用完全相符且大小寫相同的全字「Draft」作為搜尋條件。若文字以圖像形式匯入或分散於不同文字框,則不一定會匹配搜尋。請檢查匯入的內容並針對您的文件調整搜尋條件。