1. 제품
  2.   Aspose.PDF
  3.   Aspose.PDF FOSS for .NET

Aspose.PDF FOSS - Aspose.PDF .NET용 FOSS

.NET에서 PDF 문서를 생성하고 조작하세요 — 주석, 양식 필드, 텍스트 추출, 페이지 관리, 암호화, 그리고 HTML/SVG/Markdown 가져오기를 지원합니다. MIT 라이선스.

PDF 생성 및 조작을 위한 무료 MIT 라이선스 .NET 라이브러리

Aspose.PDF FOSS for .NET은 C#와 .NET에서 PDF 문서를 생성하고 작업하기 위한 MIT 라이선스 라이브러리입니다. 중앙 진입점은 Document 클래스이며, 파일 경로, 바이트 배열, 스트림 또는 비밀번호 보호 소스에서의 생성을 지원하고, 전체 PDF 사양에 걸친 Open, Save, Merge, Encrypt, Decrypt, 및 Convert 작업을 노출합니다.

이 라이브러리는 Document, Page, PageCollection를 통해 문서 구조를 다루는 805개의 클래스를 제공하며; AnnotationCollection을 통해 풍부한 주석을 지원하고 (여기에는 AddTextAnnotation, AddLinkAnnotation, AddHighlightAnnotation, AddWatermarkAnnotation, AddRedactAnnotation가 포함됩니다); Form, ButtonField, CheckboxField, RadioButtonField, ChoiceField와 함께 인터랙티브 폼을 제공하고; TextFragmentAbsorberTextFragment를 통해 텍스트 추출 및 검색을 수행하며; AbsorbedTable, AbsorbedRow, AbsorbedCell를 사용한 표 감지를 지원하고; Document.EncryptDocument.Decrypt을 통해 문서 보안을 제공합니다. 형식 변환은 HTML, SVG 및 Markdown 가져오기를 지원하며 PDF 내보내기도 가능합니다.

Aspose.PDF FOSS를 .NET용으로 NuGet에서 설치하십시오: dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha. 이 라이브러리는 MIT 라이선스로 완전하게 제공되며 런타임 비용이나 사용 제한이 없습니다. 엔터프라이즈 기능 및 지원은 Aspose.PDF for .NET — Enterprise Product를 참조하십시오.

문서 구조 및 페이지 관리

  • Document API: Document()를 사용하여 새 PDF를 만들거나 Document.Open(path), Document.Open(data), Document.Open(stream)를 통해 기존 파일을 열 수 있습니다.
  • 페이지 관리: PageCollection를 통해 페이지를 추가, 액세스 및 재정렬합니다. 각 PageWidth, Height, MediaBox, 회전 및 Annotations을 노출합니다.
  • Merge and split: 여러 파일을 Document.Merge(documents) 또는 Document.MergeDocuments(files)으로 결합합니다. 특정 페이지는 Document.ImportPageDocument.ImportPages으로 가져옵니다.
  • 메타데이터: 문서 메타데이터를 DocumentInfoDocument.GetOrCreateMetadata()를 통해 읽고 쓸 수 있습니다.
  • Serialization: 문서를 Document.Save(filename), Document.Save(stream, format), 또는 Document.ToArray()와(과) 함께 저장합니다.

일반적인 문서 처리 시나리오

  • PDF 생성: 문서를 프로그래밍 방식으로 생성하려면 Document 인스턴스를 만들고 페이지에 콘텐츠를 채워 넣으세요.
  • 문서 분석: 메타데이터 검사, 페이지 차원 측정 또는 양식 필드 열거를 위해 기존 파일을 엽니다.
  • 페이지 조작: Document.ImportPagePage API를 사용하여 페이지를 크기 조정, 회전 또는 재정렬합니다.
  • Batch merging: 보고서 섹션 또는 청구서 페이지를 Document.MergeDocuments를 사용하여 단일 PDF로 결합합니다.

주석 및 양식 필드

  • Rich annotation API: AnnotationCollection는 텍스트, 링크, 하이라이트, 밑줄, 취소선, 사각형, 원, 선, 잉크, 스탬프, 캐럿, 레드랙, 워터마크, 폴리곤 및 폴리라인 주석에 대한 메서드를 노출합니다.
  • 링크 작업: AddLinkAnnotation(rect, uri)을 사용하여 URI 링크를 추가하거나 AddLinkAnnotation(rect, destinationPage, destRect)을 사용하여 내부 페이지 점프 링크를 추가합니다.
  • 대화형 양식: 문서 양식에 Document.Form을 통해 접근하여 ButtonField, CheckboxField, RadioButtonField, 및 ChoiceField 인스턴스를 열거하거나 생성합니다.
  • 주석 선택: 페이지 전체에서 유형별로 주석을 필터링하려면 AnnotationSelector를 사용하고, 유형별 Visit 오버로드를 사용합니다.
  • Annotation flags: 가시성, 인쇄 및 잠금 동작을 AnnotationFlags을 통해 제어합니다.

문서 검토 및 협업 시나리오

  • Markup review: 문서 검토 워크플로를 위해 강조 표시, 밑줄 또는 자유 텍스트 주석을 추가합니다.
  • Redaction: AddRedactAnnotation를 사용하여 민감한 콘텐츠 영역을 영구적으로 제거합니다.
  • Watermarking: 페이지에 CONFIDENTIAL 또는 APPROVED 텍스트를 AddWatermarkAnnotationAddStampAnnotation와 함께 스탬프합니다.
  • 인터랙티브 양식: 데이터 캡처 파이프라인을 위해 라디오 버튼, 체크박스 및 선택 목록이 포함된 작성 가능한 문서를 만듭니다.

텍스트 추출 및 검색

  • 텍스트 검색: TextFragmentAbsorber를 사용하여 페이지 또는 문서 전체에서 모든 텍스트 조각을 찾고, 선택적 구문 매칭을 수행합니다.
  • 조각 속성:TextFragmentText, Position, TextState (font, size, colour), 및 경계 사각형을 노출합니다.
  • Text state control: TextFragmentStateFont, FontSize, ForegroundColor, BackgroundColor, 및 렌더링 모드에 대한 액세스를 제공합니다.
  • 표 감지: 각각 RectTextFragments를 제공하는 AbsorbedTable, AbsorbedRow, 및 AbsorbedCell를 통해 표 형식의 콘텐츠를 식별하고 추출합니다.

텍스트 및 데이터 추출 시나리오

  • 콘텐츠 인덱싱: 전체 텍스트 검색 파이프라인을 위해 모든 페이지 텍스트를 추출합니다.
  • 폼 데이터 추출: 서버 측 처리용으로 제출된 필드 값을 읽습니다.
  • 청구서 파싱: AbsorbedTable를 사용하여 재무 PDF에서 표 형식의 행 및 열 데이터를 구문 분석합니다.
  • 레드라인 비교: 특정 텍스트 조각을 찾아 정확한 위치 기반 주석 또는 교체를 수행합니다.

보안 및 암호화

  • AES 및 RC4 암호화: Document.Encrypt(userPassword, ownerPassword, permissions, algorithm)를 사용하여 Algorithm.AESx128, AESx256, 또는 RC4x128으로 문서를 암호화합니다.
  • Permission control: 인쇄, 복사 및 접근성을 DocumentPrivilege를 통해 제한합니다.
  • Password management: Document.ChangePasswords를 사용하여 사용자 및 소유자 비밀번호를 변경합니다.
  • 복호화: Document.Decrypt() 를 사용하여 보호를 제거합니다.
  • 디지털 서명: 서명 필드와 PKCS#7 데이터를 SignatureAlgorithm 유형을 통해 액세스합니다.

문서 보안 시나리오

  • 기밀 배포: PDF를 수신자별 비밀번호로 암호화한 후 전달합니다.
  • 인쇄 전용 계약: 복사를 방지하기 위해 인쇄 전용 DocumentPrivilege이 포함된 소유자 비밀번호를 적용합니다.
  • Compliance archiving: 보안 검토 후 내부 아카이브에서 암호화를 제거합니다.
  • 서명 검증: 수신된 PDF에 포함된 디지털 서명을 검사하여 진위 확인을 수행합니다.

PDF를 열고, 링크 주석을 추가한 뒤 저장하기

기존 PDF를 열고, 페이지 1에 URI 링크 주석을 첨부한 다음 결과를 저장합니다.

using Aspose.Pdf;

var data = System.IO.File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
var page = doc.Pages[1];
var action = PdfAction.CreateUri("https://aspose.com");
page.Annotations.AddLinkAnnotation(
    new Rectangle(50, 700, 200, 720), action);
using var ms = new System.IO.MemoryStream();
doc.Save(ms);
System.IO.File.WriteAllBytes("output.pdf", ms.ToArray());

워터마크 주석 추가

기존 문서의 1페이지에 워터마크를 스탬프하고 직렬화를 통해 라운드 트립합니다.

using Aspose.Pdf;
var input = System.IO.File.ReadAllBytes("report.pdf");
using var doc = Document.Open(input);
doc.Pages[1].Annotations.AddWatermarkAnnotation(
    new Rectangle(0, 0, 612, 792), "CONFIDENTIAL");
var saved = doc.ToArray();
System.IO.File.WriteAllBytes("watermarked.pdf", saved);

페이지에서 텍스트 조각 추출

첫 페이지의 모든 텍스트 조각을 열거하려면 TextFragmentAbsorber을(를) 사용하십시오.

using Aspose.Pdf;
using Aspose.Pdf.Text;

var data = System.IO.File.ReadAllBytes("document.pdf");
using var doc = Document.Open(data);
var absorber = new TextFragmentAbsorber();
absorber.Visit(doc.Pages[1]);
foreach (var fragment in absorber.TextFragments)
{
    Console.WriteLine(fragment.Text);
}

자주 묻는 질문

Aspose.PDF FOSS for .NET의 라이선스 모델은 무엇인가요?

Aspose.PDF FOSS - Aspose.PDF .NET용 FOSS는 MIT 라이선스로 배포되어 상용 제품에서도 런타임 비용 없이 자유롭게 사용할 수 있습니다. 소스 코드는 GitHub에 공개되어 있습니다.

Aspose.PDF FOSS for .NET를 어떻게 설치하나요?

dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha를 사용하여 NuGet에서 설치하십시오. 이 라이브러리는 .NET 8 이상을 대상으로 하며 네이티브 종속성이 없습니다.

Aspose.PDF FOSS for .NET가 지원하는 파일 형식은 무엇입니까?

이 라이브러리는 PDF를 읽고 쓸 수 있으며 HTML, SVG, Markdown의 가져오기를 지원합니다. 래스터 내보내기도 가능하여 PDF 페이지를 BMP, JPEG, PNG, TIFF 형식으로 렌더링할 수 있습니다.

새 PDF 문서를 어떻게 만들나요?

Document.Create()를 사용하여 빈 문서를 만든 다음 페이지를 추가하고 Document.Save(stream) 또는 Document.ToArray()로 저장하십시오.

Aspose.PDF FOSS for .NET를 사용하려면 라이선스 키가 필요합니까?

라이선스 키나 활성화 단계가 필요하지 않습니다. 이 라이브러리는 MIT 라이선스 하에 비용 없이 완전 무허가로 실행됩니다.

  

지원 및 학습 자료

 한국어