파사드 API
파사드 API
Facades API는 핵심 Aspose.PDF FOSS for .NET 객체 모델을 둘러싼 단순화된 작업 지향 래퍼를 제공합니다. 각 파사드 클래스는 특정 PDF 작업 — 양식 채우기, 파일 연결, 콘텐츠 편집 또는 디지털 서명 —을 대상으로 하며 BindPdf / Save 워크플로를 노출합니다.
Form 파사드를 사용한 양식 채우기
Form (Aspose.Pdf.Facades 안에서) 기존 PDF에 바인드하고 페이지 트리를 탐색하지 않고 AcroForm 필드 값을 읽거나 쓸 수 있게 합니다.
using var form = new Form("input.pdf", "output.pdf");
form.FillField("FirstName", "Alice");
form.FillField("AcceptTerms", "Yes");
form.Save();필드 값을 읽으려면:
using var form = new Form("input.pdf");
string name = form.GetField("FirstName");PdfFileEditor를 사용한 PDF 병합 및 분할
PdfFileEditor은 페이지 범위를 연결하고, 분할하고, 추출하고, 삭제합니다.
var editor = new PdfFileEditor();
// Concatenate two files
editor.Concatenate("file1.pdf", "file2.pdf", "merged.pdf");
// Extract pages 2-5
editor.Extract("source.pdf", 2, 5, "pages2to5.pdf");
// Split at page 3
editor.SplitFromFirst("source.pdf", 3, "first3.pdf");PdfContentEditor를 사용하여 페이지 내용 편집
PdfContentEditor 기존 페이지 콘텐츠를 수정합니다 — 텍스트를 추가하고, 텍스트를 교체하거나, 주석에 동작을 연결합니다.
var editor = new PdfContentEditor();
editor.BindPdf("input.pdf");
// Perform content edits
editor.Save("output.pdf");PdfFileSignature를 사용한 디지털 서명
PdfFileSignature PDF 문서에 서명하고 기존 서명을 확인합니다.
var sig = new PdfFileSignature();
sig.BindPdf("document.pdf");
// Sign or verify
sig.Save("signed.pdf");PdfFileStamp을 사용한 페이지 스탬핑
PdfFileStamp 텍스트, 이미지 또는 다른 PDF 페이지를 스탬프로 오버레이합니다.
var stamp = new PdfFileStamp();
stamp.BindPdf("input.pdf");
// Add stamps
stamp.Save("stamped.pdf");
stamp.Close();PdfConverter를 사용하여 페이지를 이미지로 변환하기
PdfConverter는 PDF 페이지를 래스터 이미지 형식으로 렌더링합니다.
var converter = new PdfConverter();
converter.BindPdf("input.pdf");
converter.DoConvert();
// Iterate pages and save images팁 및 모범 사례
- 항상
Close()을 호출하거나using을 사용하여 파사드 객체가 보유한 리소스를 해제하십시오. - 대용량 파일의 경우 메모리에 한 번에 모두 로드하지 않도록 파일 경로와 함께
BindPdf을 사용하십시오. - 오류를 우아하게 처리하려면 비‑Try 버전보다
TryConcatenate및TryAppend을 선호하십시오. - 파사드는 내부적으로 핵심
Document모델에 위임합니다 — 세밀한 제어가 필요하면 핵심 API로 전환하십시오. FormEditor파사드는 기존 PDF에 새 양식 필드를 추가할 수 있으며, 기존 필드만 채우는 것이 아닙니다.
공통 문제
| Issue | Cause | Fix |
|---|---|---|
Save()이 빈 파일을 생성합니다 | BindPdf가 저장 전에 호출되지 않았습니다 | Save를 호출하기 전에 항상 소스 PDF를 바인드하십시오 |
| 양식 필드 값이 기록되지 않음 | 필드 이름이 PDF 내부 필드 이름과 일치하지 않습니다 | Form.FieldNames을 사용하여 사용 가능한 필드 이름을 나열하십시오 |
| 연결이 조용히 실패합니다 | 입력 파일이 암호화되었거나 손상되었습니다 | TryConcatenate을 사용하고 반환 값을 확인하십시오 |
| 편집 후 서명이 무효화됩니다 | 서명 후 내용이 수정되었습니다 | 문서를 최종 단계에서 서명하십시오 |
자주 묻는 질문
Facade와 핵심 Document API의 차이점은 무엇인가요?
Facade는 고수준의 작업 지향 메서드(양식 채우기, 파일 병합)를 제공합니다. 핵심 API (Document, Page, Annotation)는 모든 PDF 객체에 대한 낮은 수준의 액세스를 제공합니다. Facade는 내부적으로 핵심 API를 사용합니다.
여러 파사드 작업을 체인할 수 있나요?
예. 동일한 소스를 바인드하고 작업을 수행한 뒤 한 번 저장합니다. 또는 중간 결과를 저장하고
다음 작업을 위해 다시 바인드합니다.
PdfFileEditor는 비밀번호로 보호된 PDF를 지원합니까?
예. 소유자/사용자 비밀번호를 허용하는 오버로드는 암호화된 파일에 대해 사용할 수 있습니다.
API 참조 요약
| Class / Method | Description |
|---|---|
Form | 필드 값을 읽고 쓰기 위한 AcroForm 파사드 |
Form.FillField | 이름으로 폼 필드 값을 설정 |
Form.GetField | 이름으로 폼 필드 값을 읽기 |
FormEditor | 기존 PDF에서 폼 필드를 추가하거나 수정 |
PdfFileEditor | PDF 페이지 범위를 병합, 분할, 추출 및 삭제 |
PdfFileEditor.Concatenate | 두 개 이상의 PDF를 하나로 병합 |
PdfFileEditor.Extract | 페이지 범위를 새 PDF로 추출 |
PdfContentEditor | 페이지 콘텐츠(텍스트, 주석, 동작) 수정 |
PdfFileSignature | PDF 디지털 서명을 서명하고 검증 |
PdfFileStamp | 페이지에 텍스트 또는 이미지 스탬프 오버레이 |
PdfConverter | PDF 페이지를 래스터 이미지로 렌더링 |
FormattedText | 스탬프 작업을 위한 스타일 텍스트 설명자 |
FontStyle | 글꼴 스타일 열거형(굵게, 기울임 등) |
EncodingType | 문자 인코딩 열거형 |