주석은 문서의 특정 부분에 대한 추가 정보를 제공합니다. 주석을 사용하여 피드백 및 리뷰로 문서를 마크업할 수 있습니다. PDF 문서에 이미지, 주석, 메모 또는 기타 유형의 외부 설명을 주석으로 추가할 수 있습니다. 이 기사에서는 PHP에서 REST API를 사용하여 PDF 문서에 주석을 다는 방법을 배웁니다.
이 문서에서는 다음 항목을 다룹니다.
- PDF 주석 REST API 및 PHP SDK
- PHP에서 REST API를 사용하여 PDF 문서에 주석 달기
- PHP를 사용하여 링크 주석으로 주석 달기
- PHP를 사용하여 이미지 주석 추가
- PHP를 사용하여 텍스트 필드 주석 추가
PDF 주석 REST API 및 PHP SDK
PDF 문서에 주석을 달기 위해 GroupDocs.Annotation Cloud의 PHP SDK API를 사용합니다. 지원되는 문서 형식에 주석, 워터마크 오버레이, 텍스트 교체, 교정 및 텍스트 마크업을 추가할 수 있습니다. 콘솔에서 다음 명령을 사용하여 설치하십시오.
composer require groupdocscloud/groupdocs-annotation-cloud
설치 후 아래와 같이 Composers의 자동 로드를 사용하여 SDK를 사용하십시오.
require_once('vendor/autoload.php');
언급된 단계를 따르기 전에 대시보드에서 클라이언트 ID와 암호를 가져오십시오. ID와 시크릿이 있으면 아래와 같이 코드를 추가합니다.
// 이 코드 예제는 코드에 클라이언트 ID와 암호를 추가하는 방법을 보여줍니다.
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';
static $ApiBaseUrl = 'https://api.groupdocs.cloud';
static $MyStorage = '';
// 구성 초기화
$configuration = new GroupDocs\Annotation\Configuration();
// 구성 설정
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);
PHP에서 REST API를 사용하여 PDF 문서에 주석 달기
아래에 제공된 간단한 단계에 따라 클라우드에서 PDF 문서에 주석을 달 수 있습니다.
- 업로드 PDF 파일을 클라우드로
- PDF 문서에 주석 달기
- 다운로드 주석 파일
문서 업로드
먼저 다음 코드 샘플을 사용하여 PDF 파일을 클라우드에 업로드합니다.
// 이 코드 예제는 PDF 파일을 클라우드에 업로드하는 방법을 보여줍니다.
// API 인스턴스 초기화
$apiInstance = new GroupDocs\Annotation\FileApi($configuration);
// 파일 경로
$file = "C:\\Files\\Annotation\\sample.pdf";
// 업로드 파일 요청 생성
$request = new GroupDocs\Annotation\Model\Requests\UploadFileRequest("sample.pdf", $file, self::$MyStorage, null);
// 파일 업로드
$response = $apiInstance->uploadFile($request);
결과적으로 업로드된 PDF 파일은 클라우드 대시보드의 파일 섹션에서 사용할 수 있습니다.
PHP를 사용하여 PDF 문서에 주석 달기
이제 아래 단계에 따라 프로그래밍 방식으로 업로드된 PDF 문서에 여러 주석을 추가합니다.
- 먼저 AnnotateApi의 인스턴스를 만듭니다.
- 다음으로 주석 속성(예: 위치, 유형, 텍스트 등)을 설정합니다.
- 그런 다음 위의 단계를 반복하여 여러 주석을 추가합니다.
- 다음으로 입력 파일 경로를 제공합니다.
- 그런 다음 AnnotateOptions 개체를 초기화하고 출력 파일 경로를 설정합니다.
- 그런 다음 AnnotateOptions를 인수로 사용하여 AnnotateRequest를 생성합니다.
- 마지막으로 AnnotateApi.annotate() 메서드를 사용하여 PDF에 주석을 답니다.
다음 코드 샘플은 PHP에서 REST API를 사용하여 PDF 문서에 여러 주석을 추가하는 방법을 보여줍니다.
// 이 코드 예제는 PDF에 여러 주석을 추가하는 방법을 보여줍니다.
// AnnotationAPI 인스턴스 초기화
$apiInstance = new GroupDocs\Annotation\주석 달기Api($configuration);
// 거리 주석 추가
$a = new GroupDocs\Annotation\Model\AnnotationInfo();
$pt = new GroupDocs\Annotation\Model\Point();
$pt->setX(1);
$pt->setY(1);
$a->setAnnotationPosition($pt);
$box = new GroupDocs\Annotation\Model\Rectangle();
$box->setX(100);
$box->setY(100);
$box->setWidth(200);
$box->setHeight(100);
$a->setBox($box);
$a->setPageNumber(0);
$a->setPenColor(1201033);
$a->setPenStyle(GroupDocs\Annotation\Model\AnnotationInfo::PEN_STYLE_SOLID);
$a->setPenWidth(1);
$a->setOpacity(0.7);
$a->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_DISTANCE);
$a->setText("This is distance annotation");
$a->setCreatorName("Anonym A.");
// 영역 주석 추가
$a1 = new GroupDocs\Annotation\Model\AnnotationInfo();
$pt1 = new GroupDocs\Annotation\Model\Point();
$pt1->setX(1);
$pt1->setY(1);
$a1->setAnnotationPosition($pt1);
$box1 = new GroupDocs\Annotation\Model\Rectangle();
$box1->setX(80);
$box1->setY(400);
$box1->setWidth(200);
$box1->setHeight(100);
$a1->setBox($box1);
$a1->setPageNumber(0);
$a1->setPenColor(1201033);
$a1->setPenStyle(GroupDocs\Annotation\Model\AnnotationInfo::PEN_STYLE_SOLID);
$a1->setPenWidth(1);
$a1->setOpacity(0.7);
$a1->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_AREA);
$a1->setText("This is area annotation");
$a1->setCreatorName("Anonym A.");
// 포인트 주석 추가
$a2 = new GroupDocs\Annotation\Model\AnnotationInfo();
$pt2 = new GroupDocs\Annotation\Model\Point();
$pt2->setX(100);
$pt2->setY(100);
$a2->setAnnotationPosition($pt2);
$box2 = new GroupDocs\Annotation\Model\Rectangle();
$box2->setX(450);
$box2->setY(150);
$box2->setWidth(100);
$box2->setHeight(30);
$a2->setBox($box2);
$a2->setPageNumber(0);
$a2->setOpacity(0.7);
$a2->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_POINT);
$a2->setText("This is point annotation");
$a2->setCreatorName("Anonym A.");
// 화살표 주석 추가
$a3 = new GroupDocs\Annotation\Model\AnnotationInfo();
$pt3 = new GroupDocs\Annotation\Model\Point();
$pt3->setX(1);
$pt3->setY(1);
$a3->setAnnotationPosition($pt3);
$box3 = new GroupDocs\Annotation\Model\Rectangle();
$box3->setX(350);
$box3->setY(350);
$box3->setWidth(200);
$box3->setHeight(100);
$a3->setBox($box3);
$a3->setPageNumber(0);
$a3->setPenColor(1201033);
$a3->setPenStyle(GroupDocs\Annotation\Model\AnnotationInfo::PEN_STYLE_SOLID);
$a3->setPenWidth(1);
$a3->setOpacity(0.7);
$a3->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_ARROW);
$a3->setText("This is arrow annotation");
$a3->setCreatorName("Anonym A.");
// 입력 파일 경로
$fileInfo = new GroupDocs\Annotation\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");
// 주석 옵션 정의
$options = new GroupDocs\Annotation\Model\주석 달기Options();
$options->setFileInfo($fileInfo);
$options->setAnnotations([$a, $a1, $a2, $a3]);
$options->setOutputPath("MultipleAnnotation.pdf");
// 주석 요청 만들기
$request = new GroupDocs\Annotation\Model\Requests\annotateRequest($options);
// 주석 달기
$result = $apiInstance->annotate($request);
echo "AddMultipleAnnotations: Multiple Annotations added: " . $result->getHref();
문서의 adding annotations 섹션에서 지원되는 주석 유형에 대해 자세히 알아볼 수 있습니다.
주석이 달린 파일 다운로드
위의 코드 샘플은 주석이 달린 PDF 파일을 클라우드에 저장합니다. 다음 코드 샘플을 사용하여 다운로드할 수 있습니다.
// 이 코드 예제는 클라우드에서 PDF 파일을 다운로드하는 방법을 보여줍니다.
// API 인스턴스 초기화
$apiInstance = new GroupDocs\Annotation\FileApi($configuration);
// 다운로드 파일 요청 생성
$request = new GroupDocs\Annotation\Model\Requests\DownloadFileRequest("MultipleAnnotation.pdf", self::$MyStorage, null);
// 파일 다운로드
$response = $apiInstance->downloadFile($request);
PHP를 사용하여 링크 주석으로 주석 달기
아래 단계에 따라 PDF 문서에 하이퍼링크 주석을 추가할 수도 있습니다.
- 먼저 AnnotateApi의 인스턴스를 만듭니다.
- 다음으로 위치, 텍스트 등의 주석 속성을 설정합니다.
- 그런 다음 주석 유형을 링크로 설정합니다.
- 다음으로 입력 파일 경로를 제공합니다.
- 그런 다음 AnnotateOptions 개체를 초기화하고 출력 파일 경로를 설정합니다.
- 그런 다음 AnnotateOptions를 인수로 사용하여 AnnotateRequest를 생성합니다.
- 마지막으로 AnnotateApi.annotate() 메서드를 사용하여 PDF에 주석을 답니다.
다음 코드 샘플은 REST API를 사용하여 PDF 문서에 하이퍼링크 주석을 추가하는 방법을 보여줍니다. 앞에서 언급한 단계에 따라 파일을 업로드하고 다운로드하십시오.
// 이 코드 예제는 PDF에 링크 주석을 추가하는 방법을 보여줍니다.
// AnnotationAPI 인스턴스 초기화
$apiInstance = new GroupDocs\Annotation\주석 달기Api($configuration);
// 링크 주석 추가
$a = new GroupDocs\Annotation\Model\AnnotationInfo();
$pt1 = new GroupDocs\Annotation\Model\Point();
$pt1->setX(80);
$pt1->setY(710);
$pt2 = new GroupDocs\Annotation\Model\Point();
$pt2->setX(240);
$pt2->setY(710);
$pt3 = new GroupDocs\Annotation\Model\Point();
$pt3->setX(80);
$pt3->setY(650);
$pt4 = new GroupDocs\Annotation\Model\Point();
$pt4->setX(240);
$pt4->setY(650);
$a->setPoints([$pt1, $pt2, $pt3, $pt4]);
$a->setUrl("https://www.groupdocs.com/");
$a->setPageNumber(0);
$a->setFontColor(1201033);
$a->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_LINK);
$a->setText("This is link annotation");
$a->setCreatorName("Anonym A.");
// 입력 파일 경로
$fileInfo = new GroupDocs\Annotation\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");
// 주석 옵션 정의
$options = new GroupDocs\Annotation\Model\주석 달기Options();
$options->setFileInfo($fileInfo);
$options->setAnnotations([$a]);
$options->setOutputPath("AddLinkAnnotation.pdf");
// 주석 요청 만들기
$request = new GroupDocs\Annotation\Model\Requests\annotateRequest($options);
// 주석 달기
$result = $apiInstance->annotate($request);
echo "AddLinkAnnotation: Link Annotation added: " . $result->getHref();
PHP를 사용하여 이미지 주석 추가
앞서 언급한 단계에 따라 PDF 문서에 이미지 주석을 추가할 수 있습니다. 그러나 아래와 같이 주석 유형을 이미지로 설정하기만 하면 됩니다.
$a->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_IMAGE);
다음 코드 샘플은 PHP에서 REST API를 사용하여 PDF 문서에 이미지 주석을 추가하는 방법을 보여줍니다. 앞에서 언급한 단계에 따라 파일을 업로드하고 다운로드하십시오.
// 이 코드 예제는 PDF에 이미지 주석을 추가하는 방법을 보여줍니다.
// AnnotationAPI 인스턴스 초기화
$apiInstance = new GroupDocs\Annotation\주석 달기Api($configuration);
// 이미지 주석 추가
$a = new GroupDocs\Annotation\Model\AnnotationInfo();
$pt = new GroupDocs\Annotation\Model\Point();
$pt->setX(1);
$pt->setY(1);
$a->setAnnotationPosition($pt);
$box = new GroupDocs\Annotation\Model\Rectangle();
$box->setX(200);
$box->setY(0);
$box->setWidth(200);
$box->setHeight(100);
$a->setBox($box);
$a->setPageNumber(0);
$a->setImagePath("groupdocs.png");
$a->setPenStyle(GroupDocs\Annotation\Model\AnnotationInfo::PEN_STYLE_SOLID);
$a->setOpacity(0.7);
$a->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_IMAGE);
$a->setText("This is image annotation");
$a->setCreatorName("Anonym A.");
// 입력 파일 경로
$fileInfo = new GroupDocs\Annotation\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");
// 주석 옵션 정의
$options = new GroupDocs\Annotation\Model\주석 달기Options();
$options->setFileInfo($fileInfo);
$options->setAnnotations([$a]);
$options->setOutputPath("AddImageAnnotation.pdf");
// 주석 요청 만들기
$request = new GroupDocs\Annotation\Model\Requests\annotateRequest($options);
// 주석 달기
$result = $apiInstance->annotate($request);
echo "AddImageAnnotation: Image Annotation added: " . $result->getHref();
PHP를 사용하여 텍스트 필드 주석 추가
앞서 언급한 단계에 따라 PDF 문서에 텍스트 필드 주석을 추가할 수도 있습니다. 그러나 아래와 같이 주석 유형을 텍스트 필드로 설정하기만 하면 됩니다.
$a->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_TEXT_FIELD);
다음 코드 샘플은 REST API를 사용하여 PDF 문서에 텍스트 필드 주석을 추가하는 방법을 보여줍니다. 앞에서 언급한 단계에 따라 파일을 업로드하고 다운로드하십시오.
// 이 코드 예제는 텍스트 필드 주석을 PDF에 추가하는 방법을 보여줍니다.
// AnnotationAPI 인스턴스 초기화
$apiInstance = new GroupDocs\Annotation\주석 달기Api($configuration);
// TextField 주석 추가
$a = new GroupDocs\Annotation\Model\AnnotationInfo();
$pt = new GroupDocs\Annotation\Model\Point();
$pt->setX(1);
$pt->setY(1);
$a->setAnnotationPosition($pt);
$box = new GroupDocs\Annotation\Model\Rectangle();
$box->setX(380);
$box->setY(300);
$box->setWidth(100);
$box->setHeight(50);
$a->setBox($box);
$a->setPageNumber(0);
$a->setFontColor(1201033);
$a->setFontSize(12);
$a->setOpacity(0.7);
$a->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_TEXT_FIELD);
$a->setText("Text field text");
$a->setCreatorName("Anonym A.");
// 입력 파일 경로
$fileInfo = new GroupDocs\Annotation\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");
// 주석 옵션 정의
$options = new GroupDocs\Annotation\Model\주석 달기Options();
$options->setFileInfo($fileInfo);
$options->setAnnotations([$a]);
$options->setOutputPath("AddTextFieldAnnotation.pdf");
// 주석 요청 만들기
$request = new GroupDocs\Annotation\Model\Requests\annotateRequest($options);
// 주석 달기
$result = $apiInstance->annotate($request);
echo "AddTextFieldAnnotation: Text Field Annotation added: " . $result->getHref();
온라인 시도
위의 API를 사용하여 개발된 다음 무료 온라인 PDF 주석 도구를 사용해 보십시오. https://products.groupdocs.app/annotation/pdf
결론
이 문서에서는 다음 방법을 배웠습니다.
- PHP를 사용하여 PDF에 여러 주석을 추가합니다.
- PHP에서 링크, 이미지 및 텍스트 필드 주석으로 PDF에 주석 달기;
- 프로그래밍 방식으로 PDF 파일을 클라우드에 업로드합니다.
- 클라우드에서 주석이 달린 PDF 파일을 다운로드합니다.
그 외에도 문서를 사용하여 GroupDocs.Annotation Cloud API에 대해 자세히 알아볼 수 있습니다. 또한 브라우저를 통해 직접 API를 시각화하고 상호 작용할 수 있는 API 참조 섹션을 제공합니다. 모호한 점이 있으면 언제든지 포럼에 문의해 주십시오.