머리글과 바닥글은 페이지 번호, 주제, 장 등과 같은 중요한 정보를 표시하기 위해 문서에서 일반적으로 사용됩니다. 다음을 사용하여 Word 문서 DOCX DOC에서 머리글과 바닥글을 추가, 삽입, 삭제 또는 제거할 수 있습니다. 당신의 자바 애플리케이션. 이 기사에서는 머리글과 바닥글을 추가하거나 제거하는 방법을 배웁니다. 다음은 우리가 자세히 탐구할 주제입니다:

머리글 바닥글 API 삽입 또는 제거 – 설치

Word 문서에서 머리글 및 바닥글 작업을 위해 Aspose.Words for Java API를 사용합니다. 여기서 간단한 API 호출은 요구 사항을 달성하는 데 도움이 됩니다. 릴리스 섹션에서 JAR 파일을 다운로드하거나 프로젝트에서 다음 Maven 구성을 복사할 수 있습니다. API는 Maven 저장소를 통해 구성되며 이 기사에서 설명하는 추가 단계를 진행하는 것이 좋습니다.

저장소:

<repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>https://repository.aspose.com/repo/</url>
    </repository>
</repositories>

의존:

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-words</artifactId>
        <version>20.8</version>
        <classifier>jdk17</classifier>
    </dependency>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-words</artifactId>
        <version>20.8</version>
        <classifier>javadoc</classifier>
    </dependency>
</dependencies>

Java를 사용하여 Word 문서(DOCX/DOC)에 머리글 및 바닥글 추가

Word 문서(DOCX/DOC)에 머리글과 바닥글을 추가하는 것은 워드 프로세싱 문서 작업의 기본적이지만 중요한 사용 사례입니다. 그러나 다른 시나리오가 가능합니다. 예를 들어 머리글 및 바닥글 섹션에 이미지, 표 또는 일부 텍스트만 추가해야 할 수 있습니다. 또한 다른 페이지와 비교하여 제목 페이지의 머리글과 바닥글이 다른 경우가 있습니다. 때때로 머리글과 바닥글은 짝수 페이지 번호에서는 다르고 홀수 페이지 번호에서는 다릅니다. 따라서 Word 문서에 머리글과 바닥글을 추가하는 간결하고 기본적인 예제를 만들었습니다.

여기서는 제목 페이지(첫 번째 페이지)에 다른 머리글 바닥글을 삽입하고 다음 페이지에 다른 머리글 바닥글을 삽입합니다. 반면 두 번째 페이지에는 이미지, 텍스트 및 테이블 요소를 포함하는 사용자 정의 머리글 바닥글이 있습니다. Java를 사용하여 워드 문서(DOCX/DOC)에 머리글과 바닥글을 추가하거나 삽입하려면 아래 단계를 따라야 합니다.

  1. DocumentDocumentBuilder 클래스 개체 초기화
  2. 제목 페이지에 다른 머리글 바닥글을 사용하도록 지정
  3. 헤더 텍스트의 글꼴 속성 설정
  4. 헤더 및 후속 페이지 생성
  5. 표 삽입 및 페이지 번호 형식 설정
  6. 출력 DOCX 파일 저장

다음 코드는 Java를 사용하여 프로그래밍 방식으로 Word 문서(DOCX/DOC)에 머리글과 바닥글을 추가하는 방법을 보여주는 이러한 단계를 기반으로 합니다.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Section currentSection = builder.getCurrentSection();
PageSetup pageSetup = currentSection.getPageSetup();

// 첫 페이지의 머리글/바닥글을 다른 페이지와 다르게 할지 지정합니다.
// PageSetup.OddAndEvenPagesHeaderFooter 속성을 사용하여 지정할 수도 있습니다.
// 홀수 페이지와 짝수 페이지에 대해 서로 다른 머리글/바닥글.
pageSetup.setDifferentFirstPageHeaderFooter(true);

// --- 첫 페이지의 헤더를 만듭니다. ---
pageSetup.setHeaderDistance(20);
builder.moveToHeaderFooter(HeaderFooterType.HEADER_FIRST);
builder.getParagraphFormat().setAlignment(ParagraphAlignment.CENTER);

// 헤더 텍스트의 글꼴 속성을 설정합니다.
builder.getFont().setName("Arial");
builder.getFont().setBold(true);
builder.getFont().setSize(14);
// 첫 페이지의 헤더 제목을 지정합니다.
builder.write("Aspose.Words Header/Footer Creation - Title Page.");

// --- 첫 번째 이외의 페이지에 대한 헤더를 만듭니다. ---
pageSetup.setHeaderDistance(20);
builder.moveToHeaderFooter(HeaderFooterType.HEADER_PRIMARY);

// 헤더의 상단/왼쪽 모서리에 절대 위치 이미지를 삽입합니다.
// 페이지의 상단/왼쪽 가장자리로부터의 거리는 10포인트로 설정됩니다.
String imageFileName = dataDir + "Aspose.Words.gif";
builder.insertImage(imageFileName, RelativeHorizontalPosition.PAGE, 10, RelativeVerticalPosition.PAGE, 10, 50, 50, WrapType.THROUGH);

builder.getParagraphFormat().setAlignment(ParagraphAlignment.RIGHT);
// 다른 페이지에 대해 다른 헤더 제목을 지정하십시오.
builder.write("Aspose.Words Header/Footer Creation");

// --- 첫 번째 이외의 페이지에 대한 바닥글을 만듭니다. ---
builder.moveToHeaderFooter(HeaderFooterType.FOOTER_PRIMARY);

// 두 개의 셀이 있는 테이블을 사용하여 줄에 있는 텍스트의 한 부분을 만듭니다(페이지 번호 매기기 포함).
// 왼쪽으로 정렬되고 텍스트의 다른 부분(저작권 포함)은 오른쪽으로 정렬됩니다.
builder.startTable();

// 테이블 테두리 지우기
builder.getCellFormat().clearFormatting();

builder.insertCell();
// 첫 번째 셀을 페이지 너비의 1/3로 설정합니다.
builder.getCellFormat().setPreferredWidth(PreferredWidth.fromPercent(100 / 3));

// 여기에 페이지 번호 매기기 텍스트를 삽입하십시오.
// PAGE 및 NUMPAGES 필드를 사용하여 현재 페이지 번호와 총 페이지 수를 자동으로 계산합니다.
builder.write("Page ");
builder.insertField("PAGE", "");
builder.write(" of ");
builder.insertField("NUMPAGES", "");

// 이 텍스트를 왼쪽에 맞춥니다.
builder.getCurrentParagraph().getParagraphFormat().setAlignment(ParagraphAlignment.LEFT);

builder.insertCell();
// 두 번째 셀을 페이지 너비의 2/3로 설정합니다.
builder.getCellFormat().setPreferredWidth(PreferredWidth.fromPercent(100 * 2 / 3));

builder.write("(C) 2020 Aspose Pty Ltd. All rights reserved.");

// 이 텍스트를 오른쪽에 맞춥니다.
builder.getCurrentParagraph().getParagraphFormat().setAlignment(ParagraphAlignment.RIGHT);

builder.endRow();
builder.endTable();

builder.moveToDocumentEnd();
// 페이지 나누기를 만들어 기본 머리글/바닥글이 표시될 두 번째 페이지를 만듭니다.
builder.insertBreak(BreakType.PAGE_BREAK);

// 결과 문서를 저장합니다.
doc.save(dataDir + "HeaderFooter_Out.docx");

지금까지 워드 파일에 머리글과 바닥글을 추가하거나 삽입하는 방법을 배웠습니다. 다음은 인쇄 미리 보기 옵션을 통해 출력을 볼 때 출력이 어떻게 보이는지에 대한 스크린샷입니다.

이 기능은 일부 콘텐츠를 출력 문서의 머리글 바닥글로 추가하려는 응용 프로그램에서 다른 DOC/DOCX 문서를 처리할 때 많은 도움이 될 수 있습니다.

머리글 바닥글 추가 또는 제거

MS Word 파일(DOCX/DOC)에서 머리글과 바닥글을 삭제하는 방법을 확인해 보겠습니다.

Java를 사용하여 Word 문서(DOCX/DOC)의 머리글 및 바닥글 삭제

Aspose.Words for Java API를 사용하여 워드 문서의 머리글과 바닥글을 삭제할 수 있습니다. 위에서 논의한 바와 같이 문서에는 세 가지 다른 유형의 머리글과 바닥글이 추가될 수 있습니다. 예를 들어, 제목 페이지, 짝수 페이지 및 홀수 페이지 번호. 다음 단계에 따라 워드 파일의 모든 머리글과 바닥글을 삭제할 수 있습니다.

  1. 소스 DOCX/DOC 파일 로드
  2. 제목 페이지의 머리글과 바닥글, 짝수 페이지 번호 및 홀수 페이지 번호 찾기
  3. 필요한 섹션이 발견되면 삭제
  4. 출력 DOCX 파일 저장

아래 코드는 다음 단계를 따르고 Java를 사용하여 Word 문서에서 머리글과 바닥글을 삭제하는 방법을 보여줍니다.

Document doc = new Document(dataDir + "HeaderFooter.doc");
for (Section section : doc.getSections()) {
	// 한 섹션에 최대 3개의 서로 다른 머리글 바닥글을 사용할 수 있습니다(첫 번째, 짝수 및 홀수 페이지의 경우).
	// 모두 확인하고 삭제합니다.
	HeaderFooter footer;
        HeaderFooter header;

	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_FIRST);
       	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_FIRST);
        
        
	if (footer != null)
		footer.remove();
        
        	if (header != null)
		header.remove();

	// 기본 머리글 바닥글은 홀수 페이지에 사용됩니다.
	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_PRIMARY);
	if (footer != null)
		footer.remove();
        
        header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_PRIMARY);
	if (header != null)
		header.remove();

	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_EVEN);
	if (footer != null)
		footer.remove();
        
       	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_EVEN);
	if (header != null)
		header.remove();
}

doc.save(dataDir + "RemoveHeaderFooter_Out.docx");

Java를 사용하여 Word 문서(DOCX/DOC)에서 바닥글 제거

우리는 이미 워드 파일에서 머리글과 바닥글을 제거하거나 삭제하는 방법에 대해 논의했습니다. 그러나 머리글은 그대로 두고 Word 문서의 바닥글만 제거할 수 있습니다. 이러한 요구 사항은 다음 단계를 통해 쉽게 가능합니다.

  1. 소스 워드 파일 로드(DOCX/DOC)
  2. 워드 문서의 각 섹션을 반복합니다.
  3. HeaderFooter 객체 초기화
  4. 입력 파일에서 바닥글 삭제
  5. 업데이트된 DOCX/DOC 파일 저장

다음 코드 조각은 Java를 사용하여 Word 문서에서 바닥글을 제거하는 방법을 설명합니다.

Document doc = new Document(dataDir + "HeaderFooter.doc");
for (Section section : doc.getSections()) {
	// 섹션에 최대 3개의 다른 바닥글이 가능합니다(첫 번째, 짝수 및 홀수 페이지의 경우).
	// 모두 확인하고 삭제합니다.
	HeaderFooter footer;

	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_FIRST);
	if (footer != null)
		footer.remove();

	// 기본 바닥글은 홀수 페이지에 사용되는 바닥글입니다.
	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_PRIMARY);
	if (footer != null)
		footer.remove();

	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_EVEN);
	if (footer != null)
		footer.remove();
}
doc.save(dataDir + "RemoveFooters.docx");

Java를 사용하여 Word 문서(DOCX/DOC)에서 헤더 제거

MS Word 파일에서 바닥글만 제거하거나 삭제하는 방법을 배웠기 때문입니다. Word 문서에서 머리글만 제거해야 할 수 있는 또 다른 단계를 살펴보겠습니다. 여기서는 머리글만 삭제하는 데 초점을 맞추기 때문에 바닥글은 그대로 유지되고 영향을 받지 않습니다. 다음 단계는 이 목적을 위해 채택할 절차의 개요를 제공합니다.

  1. 입력 Word 파일 로드(DOCX/DOC)
  2. HeaderFooter 클래스의 인스턴스 초기화
  3. 입력 문서의 모든 섹션에서 헤더 제거
  4. 업데이트 DOCX 파일 저장

아래 코드는 Java를 사용하여 워드 문서에서 헤더를 삭제하거나 제거하는 방법을 보여줍니다.

Document doc = new Document(dataDir + "HeaderFooter.doc");
for (Section section : doc.getSections()) {
	// 섹션에 최대 3개의 다른 바닥글이 가능합니다(첫 번째, 짝수 및 홀수 페이지의 경우).
	// 모두 확인하고 삭제합니다.
	HeaderFooter header;

	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_FIRST);
	if (header != null)
		header.remove();

	// 기본 바닥글은 홀수 페이지에 사용되는 바닥글입니다.
	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_PRIMARY);
	if (header != null)
		header.remove();

	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_EVEN);
	if (header != null)
		header.remove();
}
doc.save(dataDir + "RemoveHeader.docx");

결론

Word 문서에서 머리글과 바닥글을 추가, 삽입, 제거 또는 삭제하는 것은 워드 프로세싱의 매우 중요하고 빈번한 사용 사례입니다. 거의 모든 문서에는 요구 사항에 따라 Aspose.Words for Java API로 조작할 수 있는 머리글과 바닥글이 포함되어 있습니다. 이 문서는 무료 지원 포럼을 통해 사용자 정의 사용 사례 및 요구 사항에 대해 논의할 수 있는 관련 기능에 대한 개요입니다. 질문과 우려 사항이 있으면 언제든지 저희에게 연락하십시오.

또한보십시오