PDF에 머리글과 바닥글 추가

헤더는 페이지 상단의 여백 영역에 배치되는 텍스트이고, 푸터는 페이지 하단 또는 발에 배치됩니다. 일반적으로 이러한 영역은 문서 이름, 장 제목, 페이지 번호, 작성 날짜 등과 같은 문서 정보를 삽입하는 데 사용됩니다. 이 정보는 각 페이지에 반복되므로 독자가 문서를 쉽게 탐색할 수 있습니다.

또한 머리글과 바닥글은 예측 가능한 형식으로 문서에 대한 빠른 정보를 제공하는 데 유용하며 문서의 다양한 부분을 설정하는 데에도 도움이 됩니다. 이 문서에서는 Aspose.PDF Cloud SDK for Java를 사용하여 PDF 파일의 머리글과 바닥글 영역에 텍스트와 이미지를 추가하는 방법에 대해 알아봅니다.

cURL을 사용하여 헤더에 텍스트 추가

cURL 명령은 명령줄 터미널을 통해 RESTFul API에 액세스하는 흥미로운 방법입니다. Aspose.PDF Cloud SDK는 REST 원칙에 따라 개발되었으므로 명령 프롬프트를 통해 쉽게 액세스할 수 있습니다. 그러나 사용자의 개인 정보 보호 및 데이터 무결성을 보장하기 위해 모든 API는 권한이 있는 사람만 액세스할 수 있습니다. 따라서 먼저 Aspose.Cloud 대시보드를 방문해야 하며 GitHub 또는 Google 계정이 있는 경우 간단히 가입하세요. 그렇지 않은 경우 새 계정 만들기 버튼을 클릭하고 필요한 정보를 제공하세요. 이제 자격 증명을 사용하여 대시보드에 로그인하고 대시보드에서 애플리케이션 섹션을 확장하고 클라이언트 자격 증명 섹션으로 스크롤하여 클라이언트 ID 및 클라이언트 비밀 세부 정보를 확인하세요.

다음 명령은 PDF 문서의 헤더 영역에 텍스트를 추가하는 데 사용될 JWT 액세스 토큰을 만드는 방법을 보여줍니다.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=c235e685-1aab-4cda-a95b-54afd63eb87f&client_secret=b8da4ee37494f2ef8da3c727f3a0acb9" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

다음 cURL 명령을 사용하면 PDF 문서의 머리글 섹션에 텍스트를 추가할 수 있습니다.

curl -X POST "https://api.aspose.cloud/v3.0/pdf/PdfWithAnnotations.pdf/header/text?startPageNumber=2&endPageNumber=2" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{  \"Background\": true,  \"HorizontalAlignment\": \"CENTER\",  \"Opacity\": 0.8,  \"Rotate\": \"None\",  \"RotateAngle\": 0,  \"XIndent\": 0,  \"YIndent\": 0,  \"Zoom\": 1,  \"TextAlignment\": \"CENTER\",  \"Value\": \"Aspose.PDF Cloud SDK for Java via cURL\",  \"TextState\": {    \"FontSize\": 16,    \"Font\": \"Arial\",    \"ForegroundColor\": {      \"A\": 0,      \"R\": 0xDA,      \"G\": 0xA5,      \"B\": 0x20    },    \"BackgroundColor\": {      \"A\": 0,      \"R\": 0xFA,      \"G\": 0xEB,      \"B\": 0xD7    },  },  \"LeftMargin\": 1,  \"TopMargin\": 20,  \"RightMargin\": 200}"
PDF의 텍스트 헤더

이미지 1: cURL 명령을 통해 텍스트 헤더가 추가되었습니다.

이 예제에 사용된 샘플 파일은 다음에서 다운로드할 수 있습니다.

Java를 사용하여 PDF에 텍스트 헤더 추가

SDK를 사용하려면 먼저 Maven 또는 GitHub에서 설치해야 합니다. Maven 빌드 프로젝트에서 Aspose.Pdf.jar를 다운로드하고 사용하는 방법에 대한 세부 정보는 아래와 같습니다.

pom.xml 파일에 다음 종속성을 추가합니다.

<repositories>
 <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>https://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>
<dependencies>
 <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-pdf-cloud</artifactId>
        <version>21.1.0</version>
        <scope>compile</scope>
    </dependency>
 </dependencies>

이 요구 사항을 달성하는 방법에 대한 단계는 아래와 같습니다.

  • 먼저 ClientSecret 및 ClientId 세부 정보를 제공하면서 PdfApi 인스턴스를 생성합니다.
  • 둘째, ForeGround 및 BackGround 색상 세부 정보를 정의하기 위해 Color 객체를 생성합니다.
  • 둘째, TextState 클래스의 객체를 생성합니다.
  • fontSize(..) 메서드를 사용하여 글꼴 크기 세부 정보를 설정합니다. font(..) 메서드는 글꼴 모양을 정의합니다. foregroundColor(…) 메서드는 텍스트 전경 세부 정보를 정의하고, backgroundColor(…) 메서드는 배경 정보를 정의합니다.
  • 이제 TextHeader 객체를 생성하고 여백 세부 정보를 정의합니다.
  • value(..) 메서드를 사용하여 Text Header 객체의 내용을 지정합니다.
  • 이제 textState(…) 메서드를 호출하고 위에서 생성한 TextState 인스턴스를 인수로 전달합니다.
  • 페이지 내용 뒤에 Header를 표시하려면 TextHeader 클래스의 background(…) 메서드에 인수로 true 값을 전달합니다.
  • 이제 왼쪽의 이미지를 렌더링하기 위해 HorizontalAlignment.CENTER 값을 horizontalAlignment(…) 메서드에 전달합니다.
  • opacity(…) 메서드는 스탬프 불투명도를 나타냅니다. 기본값은 1.0입니다.
  • 확대/축소 값을 설정한 후 AsposeResponse 객체를 생성합니다.
  • 마지막으로 PdfApi.postDocumentTextHeader(…) 메서드를 호출하고 소스 PDF 파일 이름, TextHeader 개체, 시작 및 끝 페이지(스탬프를 추가해야 하는 곳)를 인수로 전달합니다.
// https://dashboard.aspose.cloud/에서 ClientID와 ClientSecret을 가져옵니다.
String clientId = "29ac1517-753f-4303-b755-7185e35cf939";
String clientSecret = "c537caf71eafc8a75a5ee7813b703276";
				
// createPdfApi 인스턴스
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// PDF 문서 입력
String sourcePDF = "PdfWithAnnotations.pdf";

// PDF의 시작 페이지에 헤더 이미지를 배치합니다.
int startPage = 2;

// PDF의 마지막 페이지에 헤더 이미지를 넣으세요
int endPage = 3;
		        
// 16진수 코드로 전경색을 SlateBlue로 지정
Color foregroundColor = new Color();
foregroundColor.setA(0x00);
foregroundColor.setR(0x6A);
foregroundColor.setG(0x5A);
foregroundColor.setB(0xCD);

// Hex 코드에서 배경색을 AntiqueWhite로 지정하세요
Color backgroundColor = new Color();
backgroundColor.setA(0x00);
backgroundColor.setR(0xFA);
backgroundColor.setG(0xEB);
backgroundColor.setB(0xD7);

// 글꼴 크기, 글꼴 모양 및 색상 세부 정보를 정의하기 위해 TextState 객체를 생성합니다.
TextState textState = new TextState()
  .fontSize(16.)
  .foregroundColor(foregroundColor)
  .backgroundColor(backgroundColor)
  .font("Arial");
		        
// TextHeader 객체의 인스턴스를 생성합니다.
TextHeader headerObject = new TextHeader()    
  .leftMargin(1.)
  .rightMargin(200.)
  .topMargin(10.)
	
  // 렌더링할 텍스트 헤더의 내용
  .value("Aspose.PDF Cloud SDK For Java")
	
  // 정렬을 중앙으로 설정
  .textAlignment(com.aspose.asposecloudpdf.model.HorizontalAlignment.CENTER)
  .textState(textState);
	
  // 페이지 콘텐츠 뒤에 헤더 텍스트 설정
  headerObject.background(true)
	
  // 텍스트 헤더 정렬을 가운데로 설정
  .horizontalAlignment(com.aspose.asposecloudpdf.model.HorizontalAlignment.CENTER)
	
  // 텍스트 헤더의 불투명도를 0.8로 설정
  .opacity(0.8)
  .rotate(com.aspose.asposecloudpdf.model.Rotation.NONE)
  .rotateAngle(0.)
  .xindent(2.0)
  .yindent(5.0)
  .zoom(1.0);

// PDF에 텍스트 헤더를 추가하기 위한 API 메서드 호출
AsposeResponse response = pdfApi.postDocumentTextHeader(sourcePDF, headerObject,startPage, endPage, null, null);
assertEquals(200, (int)response.getCode());
Java에 텍스트 헤더 추가됨

이미지 2: Java로 추가된 텍스트 헤더의 미리보기.

바닥글 영역에 텍스트를 추가하려면 TextFooter 클래스의 인스턴스를 생성하고 PdfApi 클래스의 postDocumentTextFooter(…) 메서드를 호출하세요. 나머지 단계와 세부 정보는 텍스트 헤더를 추가하는 데 대해 위에서 언급한 것과 동일합니다.

cURL을 사용하여 PDF 헤더의 이미지

cURL 명령을 사용하여 PDF 파일의 헤더 섹션에서 PostDocumentImageHeader API를 사용하여 이미지 파일을 쉽게 추가할 수 있습니다. 이미지 스탬프를 추가하는 동안 HorizontalAlignment, Opacity, RotateAngle, 이미지의 Zoom factor, Width, Height, LeftMargin, TopMargin, RightMargin 등의 세부 정보를 지정하는 옵션이 제공됩니다.

name 매개변수는 입력/소스 PDF 문서를 정의하고, imageHeader는 스탬프를 찍을 이미지 파일을 지정하고, startPageNumber 속성은 이미지 스탬프를 포함할 PDF 문서의 시작 페이지와 endPageNumber 끝 페이지를 정의합니다. 다음 cURL 명령에서 Background 속성은 false로 설정되어 이미지가 표시됩니다. HorizontalAlignment는 Left로 지정되고, Opacity 값은 0.8로 정의되고, Zoom 요소는 1로 설정되고, Width는 250으로 정의되고, Height는 80포인트로 정의되고, RightMargin은 500포인트로 지정됩니다.

curl -X POST "https://api.aspose.cloud/v3.0/pdf/PdfWithAnnotations.pdf/header/image?startPageNumber=2&endPageNumber=2" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"  \
-H  "Content-Type: application/json" \
-d "{"Background":false,"HorizontalAlignment":'Left',"Opacity": .8,"Rotate":'None',"RotateAngle": 0,"XIndent": 2,"YIndent": 5,"Zoom": 1,"FileName": 'asposetoolsnew.png',"Width": 250,"Height": 80,"LeftMargin": 1,"TopMargin": 10,"RightMargin": 500}"
헤더의 이미지 스탬프

이미지 3: PDF 머리글 섹션의 이미지 스탬프.

위의 예에서 사용된 샘플 파일은 다음 링크에서 다운로드할 수 있습니다.

Java를 사용하여 헤더에 이미지 추가

Aspose.PDF Cloud SDK for Java는 더 적은 코드 줄로 PDF 파일에 이미지 헤더를 추가하는 놀라운 기능을 제공합니다.

PDF 문서에 이미지 헤더를 추가하는 방법에 대한 단계는 다음과 같습니다.

  • ClientSecret 및 ClientId 세부 정보를 제공하면서 PdfApi 객체를 생성합니다.
  • 둘째, ImageHeader 클래스의 객체를 생성합니다.
  • ImageHeader 클래스의 width(..) 및 height(…) 메서드를 사용하여 이미지 너비와 높이 세부 정보를 설정합니다.
  • 이제 fileName(…) 메서드를 사용하여 헤더 이미지의 경로 세부 정보를 설정합니다.
  • 페이지 내용 뒤에 이미지를 표시하려면 false 인수를 background(…) 메서드에 전달합니다.
  • 이제 왼쪽에 이미지를 렌더링하기 위해 HorizontalAlignment.LEFT 값을 horizontalAlignment(…) 메서드에 전달합니다.
  • opacity(…) 메서드는 스탬프 불투명도를 나타냅니다. 기본값은 1.0입니다.
  • 확대/축소 값을 설정한 후 AsposeResponse 객체를 생성합니다.
  • 마지막으로 소스 PDF 파일 이름, ImageHeader 개체, 시작 및 끝 페이지(스탬프를 추가해야 하는 경우)를 이 메서드의 인수로 전달하면서 PdfApi.postDocumentImageHeader(…) 메서드를 호출합니다.
// https://dashboard.aspose.cloud/에서 ClientID와 ClientSecret을 가져옵니다.
String clientId = "29ac1517-753f-4303-b755-7185e35cf939";
String clientSecret = "c537caf71eafc8a75a5ee7813b703276";
				
// createPdfApi 인스턴스
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// PDF 문서 입력
String sourcePDF = "PdfWithAnnotations.pdf";

// PDF의 시작 페이지에 헤더 이미지를 배치합니다.
int startPage = 2;

// PDF의 마지막 페이지에 헤더 이미지를 넣으세요
int endPage = 3;
		        
// ImageHeader 객체의 인스턴스를 생성합니다
ImageHeader headerObject = new ImageHeader()
	.width(250.0)
	.height(80.0)
	.leftMargin(1.)
	.rightMargin(500.)
	.topMargin(10.)
	.fileName("asposetoolsnew.png");
	
	// 헤더 이미지를 전면/가시적으로 표시
	headerObject.background(false)
	
	// 이미지 헤더 정렬을 왼쪽으로 설정
	.horizontalAlignment(com.aspose.asposecloudpdf.model.HorizontalAlignment.LEFT)
	.opacity(0.8)
	.rotate(com.aspose.asposecloudpdf.model.Rotation.NONE)
	.rotateAngle(0.)
	.xindent(2.0)
	.yindent(5.0)
	.zoom(1.0);

// PDF에 헤더 이미지를 추가하기 위한 API 메서드 호출
AsposeResponse response = pdfApi.postDocumentImageHeader(sourcePDF, headerObject,startPage, endPage, null, null);

푸터 영역에 이미지를 추가하려면 ImageFooter 클래스의 객체를 생성하고 pdfApi 클래스의 postDocumentImageFooter(…) 메서드를 호출합니다. 나머지 단계는 위의 헤더 섹션에 있는 이미지에 대해 설명한 것과 동일합니다.

결론

이 문서에서는 cURL 명령을 통해 Aspose.PDF Cloud에 액세스하여 PDF 문서의 머리글/바닥글 영역에 텍스트와 이미지를 추가하는 방법에 대한 단계를 설명했습니다. 또한 Aspose.PDF Cloud SDK for Java를 설치하고 Java 언어로 사용하여 PDF 파일의 머리글 또는 바닥글 섹션에 텍스트와 이미지를 추가하는 단계도 살펴보았습니다. API의 다른 흥미로운 기능에 대한 자세한 내용은 제품 설명서를 살펴보세요.

모든 Cloud SDK는 오픈 소스이므로 전체 소스 코드는 GitHub에서 다운로드할 수 있습니다.