PNG JPG BMP TIFF PDF
Aspose.PDF  для PHP

Сжать PDF в PHP SDK

Оптимизировать PDF-документ с помощью Cloud PHP SDK

Get Started

Как сжать PDF с помощью Cloud PHP SDK

Чтобы сжать PDF, мы будем использовать Aspose.PDF Cloud PHP SDK Этот Cloud SDK помогает программистам PHP разрабатывать облачные приложения для создания, аннотирования, редактирования и конвертации PDF с использованием языка программирования PHP через Aspose.PDF REST API. Просто создайте учетную запись на Aspose for Cloud и получите информацию о вашем приложении. Как только у вас будут App SID и ключ, вы готовы использовать Aspose.PDF Cloud PHP SDK. Этот метод использует Aspose.PDF Cloud SDK для PHP для эффективной оптимизации PDF-документов. Автоматизируя процессы загрузки, оптимизации и скачивания, он упрощает рабочий процесс для разработчиков. Использование различных опций оптимизации обеспечивает уменьшение размера итогового PDF без потери качества.

Команда в консоли диспетчера пакетов

     
    composer install

Шаги для сжатия PDF через Cloud PHP

Разработчики Aspose.PDF Cloud могут легко загрузить и оптимизировать PDF всего в несколько строк кода.

  1. Загрузите PDF-документ
  2. Сожмите PDF-документ
  3. Скачайте оптимизированный PDF-документ
 

Сжать PDF с использованием PHP


    require __DIR__.'vendor\autoload.php';

    use Aspose\PDF\Configuration;
    use Aspose\PDF\Api\PdfApi;

    $credentials = json_decode(file_get_contents(__DIR__ . 'credentials.json'), true);

    $configParams = [
        "LOCAL_FOLDER" => "C:\\Samples\\",
        "PDF_DOCUMENT_NAME" => "sample.pdf",
        "TEMP_FOLDER" => "TempPdfCloud",
        "LOCAL_RESULT_DOCUMENT_NAME" => "output_sample.pdf",
    ];

    class PdfCompress
    {
        private $pdfApi;
        private $configParams;

        private function _create_rest_api() {
            $credentials = json_decode(file_get_contents("credentials.json"), true);

            $configAuth = new Configuration();
            $configAuth->setAppKey($credentials['key']);
            $configAuth->setAppSid($credentials['id']);

            $this->pdfApi = new PdfApi(null, $configAuth);
        }

        public function __construct($config) {
            $this->configParams = $config;
            $this->_create_rest_api();
        }

        public function uploadDocument()
        {
            $filePath = $this->configParams["LOCAL_FOLDER"] . DIRECTORY_SEPARATOR . $this->configParams["PDF_DOCUMENT_NAME"];
            $fileData = file_get_contents($filePath);

            $storagePath = $this->configParams["TEMP_FOLDER"] . DIRECTORY_SEPARATOR . $this->configParams["PDF_DOCUMENT_NAME"];

            $this->pdfApi->uploadFile($storagePath, $fileData);
            echo "File: '{$this->configParams["PDF_DOCUMENT_NAME"]}' successfully uploaded." . PHP_EOL;
        }

        public function downloadResult()
        {
            $fileName = $this->configParams["TEMP_FOLDER"] . DIRECTORY_SEPARATOR . $this->configParams["PDF_DOCUMENT_NAME"];
            $downloaded = $this->pdfApi->downloadFile($fileName);

            $filePath = $this->configParams["LOCAL_FOLDER"] . DIRECTORY_SEPARATOR . $this->configParams["LOCAL_RESULT_DOCUMENT_NAME"];
            file_put_contents($filePath, $downloaded);
            echo "Downloaded: {$filePath}" . PHP_EOL;
        }

        public function compressPdfDocument()
        {
            $options = new \Aspose\PDF\Model\OptimizeOptions();
            $options->setAllowReusePageContent(true);
            $options->setCompressImages(true);
            $options->setImageQuality(100);
            $options->setLinkDuplcateStreams(true);
            $options->setRemoveUnusedObjects(true);
            $options->setRemoveUnusedStreams(true);
            $options->setUnembedFonts(true);

            $response = $this->pdfApi->postOptimizeDocument(
                $this->configParams["PDF_DOCUMENT_NAME"],
                $options,
                null,
                $this->configParams["TEMP_FOLDER"]
            );

            if ($response->getCode() != 200) {
                echo "compressPdfDocument(): Failed to compress the PDF document!" . PHP_EOL;
            } else {
                echo "compressPdfDocument(): Successfully compressed the PDF document '{$this->configParams["PDF_DOCUMENT_NAME"]}' !" . PHP_EOL;
            }
        }
    }

    try {
        $compressor = new PdfCompress($pdfApi, $configParams);
        $compressor->uploadDocument();
        $compressor->compressPdfDocument();
        $compressor->downloadResult();
    } catch (Exception $e) {
        echo "Error: " . $e->getMessage() . PHP_EOL;
    }
 

С нашей PHP библиотекой вы можете:

Сжимать PDF-документы с помощью Aspose.PDF Cloud PHP SDK.

  • Добавлять заголовок и нижний колонтитул PDF-документа в текстовом или графическом формате.
  • Добавлять таблицы и штампы (текстовые или графические) в PDF-документы.
  • Присоединять несколько PDF-документов к существующему файлу.
  • Работать с вложениями, аннотациями и полями форм PDF.
  • Применять шифрование или дешифрование к PDF-документам и устанавливать пароль.
  • Удалять все штампы и таблицы с одной страницы или всего PDF-документа.
  • Удалять конкретный штамп или таблицу из PDF-документа по их ID.
  • Заменять одиночные или множественные экземпляры текста на странице PDF или во всем документе.
  • Обширная поддержка конвертации PDF-документов в различные другие форматы файлов.
  • Извлекать различные элементы PDF-файлов и оптимизировать PDF-документы.
  • Вы можете попробовать наше бесплатное приложение для тестирования функциональности онлайн.