PDF에서 DOCX 문서 변환은 읽기 전용 PDF에서 편집 가능한 Word 파일이 필요할 때 자주 요구됩니다. GroupDocs.Conversion Cloud SDK for PHP은 높은 정확도로 이 작업을 처리하는 강력한 라이브러리를 제공합니다. 이 튜토리얼에서는 라이브러리를 설정하고, 자세한 코드 예제를 살펴보며, 클라우드 배포를 위한 cURL로 REST API를 호출하는 방법을 확인합니다. 끝까지 진행하면 PDF를 DOCX로 변환하는 기능을 자체 PHP 애플리케이션에 통합할 준비가 됩니다.

시작하기 전에: 전제 조건 및 설치

이 가이드를 따르려면 다음이 필요합니다:

  • 개발 머신 또는 서버에 PHP 7.4 이상이 설치되어 있어야 합니다.
  • 종속성 관리를 위한 Composer.
  • GroupDocs Cloud 계정(클라이언트 ID 및 클라이언트 시크릿) – GroupDocs 포털에서 생성할 수 있습니다.
  • 원본 PDF와 결과 DOCX 파일을 저장할 충분한 디스크 공간.

Composer로 라이브러리를 설치합니다:

composer require groupdocs-conversion-cloud

최신 패키지를 다운로드하거나 GitHub에서 소스를 확인하세요: 다운로드 URL. 설치가 완료되면 코딩을 시작할 준비가 됩니다.

PHP에서 PDF를 DOCX 문서로 변환 - 단계별 구축

아래는 각 필수 작업을 보여주는 간결한 단계별 안내입니다. 전체 소스 코드는 DOCX로 문서를 변환하기 위한 완전한 PHP 구현 섹션에 나중에 나타납니다.

단계 1: 원본 PDF 로드

ConversionApi 인스턴스를 생성하고 변환하려는 PDF를 가리키도록 설정합니다.

use GroupDocs\Conversion\Configuration;
use GroupDocs\Conversion\Api\ConversionApi;

$config = new Configuration('YOUR_CLIENT_ID', 'YOUR_CLIENT_SECRET');
$api = new ConversionApi($config);
$sourcePath = 'input.pdf';

2단계: 변환 설정 초기화

출력 형식과 대상 경로를 정의합니다. ConvertOptions 클래스는 대용량 PDF에 대한 메모리 제한을 미세 조정할 수 있게 하여 PHP에서 PDF를 DOCX로 변환 성능을 향상시킵니다.

use GroupDocs\Conversion\Model\ConvertOptions;

$options = new ConvertOptions();
$options->setFilePath($sourcePath);
$options->setOutputPath('output.docx');
$options->setFormat('docx');
// Optional: $options->setMemoryLimit(1024); // in MB

3단계: 변환 실행

클라우드 서비스에 요청을 보냅니다. 이 단일 API 호출이 무거운 작업을 수행합니다.

use GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest;

$request = new ConvertDocumentRequest($options);
$api->convertDocument($request);

단계 4: 결과 가져오기

변환된 DOCX 파일이 지정한 경로에 저장됩니다. 이제 이를 사용자에게 제공하거나 나중에 처리하기 위해 저장할 수 있습니다.

echo "Conversion completed. DOCX saved to output.docx";

5단계: 리소스 정리

루프에서 많은 변환을 실행하는 경우 API 인스턴스를 해제하십시오. 동일한 인스턴스를 재사용하는 것이 PHP에서 PDF를 DOCX로 변환하는 마이크로서비스에 더 효율적입니다.

unset($api);

문서를 DOCX로 변환하기 위한 완전한 PHP 구현

다음 코드는 모든 단계를 하나의 실행 가능한 스크립트로 결합합니다.

<?php
require 'vendor/autoload.php';

use GroupDocs\Conversion\Configuration;
use GroupDocs\Conversion\Api\ConversionApi;
use GroupDocs\Conversion\Model\ConvertOptions;
use GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest;

// ==== Configuration ====
$clientId = 'YOUR_CLIENT_ID';
$clientSecret = 'YOUR_CLIENT_SECRET';
$config = new Configuration($clientId, $clientSecret);
$api = new ConversionApi($config);

// ==== Input / Output ====
$sourcePath = __DIR__ . '/input.pdf';
$outputPath = __DIR__ . '/output.docx';

// ==== Conversion Options ====
$options = new ConvertOptions();
$options->setFilePath($sourcePath);
$options->setOutputPath($outputPath);
$options->setFormat('docx');
// Example of performance tuning
$options->setMemoryLimit(1024); // 1 GB

// ==== Convert ====
$request = new ConvertDocumentRequest($options);
try {
    $api->convertDocument($request);
    echo "PDF successfully converted to DOCX. File saved at: $outputPath\n";
} catch (Exception $e) {
    echo "Conversion failed: " . $e->getMessage() . "\n";
}

// ==== Cleanup ====
unset($api);
?>

Note: 이 코드 예제는 핵심 기능을 보여줍니다. 프로젝트에서 사용하기 전에 파일 경로(input.pdf, output.docx 등)를 실제 파일 위치에 맞게 업데이트하고, 모든 필수 종속성이 올바르게 설치되었는지 확인한 뒤 개발 환경에서 충분히 테스트하십시오. 문제가 발생하면 공식 문서를 참조하거나 지원 포럼에서 도움을 받으세요.

cURL을 사용한 REST API를 통한 문서 변환 실행

서비스와 직접 상호 작용하는 것을 선호한다면, 다음 cURL 명령이 전체 워크플로를 보여줍니다.

1. 인증 및 액세스 토큰 가져오기

curl -X POST "https://api.groupdocs.cloud/v2.0/oauth2/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"

2. 소스 PDF 업로드

curl -X POST "https://api.groupdocs.cloud/v2.0/storage/file/upload?path=/input.pdf" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-F "file=@/path/to/input.pdf"

3. PDF를 DOCX로 변환 요청

curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/convert?outputFormat=docx&outputPath=/output.docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"filePath":"/input.pdf"}'

4. 변환된 DOCX 다운로드

curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/download?path=/output.docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.docx

이 명령은 간단한 PHP 스크립트에 래핑하거나 CI 파이프라인에서 PHP용 PDF를 DOCX로 변환하는 CLI 도구로 사용할 수 있습니다. 자세한 내용은 API 참조를 확인하세요.

결론

PHP에서 PDF를 DOCX로 변환하는 작업은 GroupDocs.Conversion Cloud SDK for PHP를 사용하면 간단합니다. 라이브러리를 설정하고, 단계별 변환을 실행하며, REST 호출을 통해 동일한 기능을 호출하는 방법을 배웠습니다. 이 라이브러리는 클라우드 기반 배포와 온프레미스 시나리오를 모두 지원하여 마이크로서비스 아키텍처나 기존 서버 설치에 대한 유연성을 제공합니다. 제품 페이지에서 가격 옵션을 검토하고, 프로덕션으로 전환하기 전에 임시 라이선스 페이지에서 임시 라이선스를 획득하는 것을 기억하세요. 코딩 즐겁게 하세요!

FAQ

PHP 온프레미스에서 PDF를 DOCX 문서로 변환하려면 어떻게 구현합니까?
라이브러리를 자체 서버에 배포하고, 클라이언트 ID와 비밀 키를 구성한 다음, 변환 코드를 로컬에서 실행합니다. 인증 후에는 외부 네트워크 트래픽이 필요하지 않습니다.

대용량 PDF의 변환 속도를 향상시키는 최선의 방법은 무엇인가요?
단일 ConversionApi 인스턴스를 재사용하고, PHP 메모리 제한을 늘리며, ConvertOptions에서 적절한 옵션을 설정하여 스트리밍을 활성화합니다. 이렇게 하면 오버헤드가 감소하고 PHP에서 PDF를 DOCX로 변환 성능이 향상됩니다.

Docker 컨테이너에서 마이크로서비스용 라이브러리를 사용할 수 있나요?
예. Dockerfile에 Composer 설치 단계를 포함하고, PHP 스크립트를 복사한 다음, 변환 로직을 호출하는 엔드포인트를 노출하십시오. 이렇게 하면 휴대 가능한 PHP에서 PDF를 DOCX로 변환하는 마이크로서비스가 생성됩니다.

이 기능에 대한 Composer 패키지가 있나요?
이 라이브러리는 Composer를 통해 배포됩니다. composer require groupdocs-conversion-cloud 명령으로 설치하고 composer.json을 통해 업데이트를 관리하세요.

더 읽기