몇 초 안에 시작할 수 있습니다.
설치 한 번. 코드 세 줄.
$ cargo add pdf_oxideuse pdf_oxide::PdfDocument;
let mut doc = PdfDocument::open("paper.pdf")?;
let text = doc.extract_text(0)?;
let images = doc.extract_images(0)?;라이브러리 하나로.
생성|편집|추출
모든 PDF 작업을 단일 의존성으로.
래퍼 없음. 서브프로세스 호출 없음. C/C++/Java 런타임 불필요.
01
생성
모든 소스 형식에서 PDF를 생성.
- Markdown제목, 목록, 테이블, 코드 블록이 포함된 Markdown을 픽셀 단위로 정확한 PDF로 변환.
- HTMLHTML 마크업을 완전한 CSS 레이아웃을 지원하는 구조화된 PDF 문서로 변환.
- 이미지PNG, JPEG, TIFF에서 자동 크기 조정으로 단일 또는 다중 페이지 PDF 생성.
- QR & BarcodesCode128, EAN-13, UPC-A, QR 코드. 오류 정정 수준 설정 가능.
- Builder API페이지 크기, 여백, 글꼴, 메타데이터, 헤더를 메서드 체이닝으로 설정하는 PdfBuilder API.
- 폼텍스트 필드, 체크박스, 라디오 버튼, 드롭다운, 스탬프, 워터마크.
02
편집
기존 PDF의 모든 부분을 수정.
- DOM Editing텍스트 검색, 콘텐츠 교체, 스타일 변경 — 웹 페이지처럼 PDF를 탐색.
- 페이지회전, 자르기, 문서 병합, 페이지 범위 추출, 순서 변경.
- 폼필드 값 가져오기/설정, 필드 추가/제거, 정적 콘텐츠로 평탄화.
- 주석하이라이트, 노트, 링크 추가. 선택적 수정 또는 평탄화.
- 이미지포함된 이미지의 위치 변경, 크기 조정, 정확한 좌표로 교체.
- 보안AES-256 암호화, 비밀번호, 세밀한 권한 플래그.
03
추출
모든 PDF에서 모든 것을 추출.
- 텍스트전체 페이지 텍스트, 글꼴 메타데이터가 포함된 스타일 span, 문자별 위치 정보.
- 이미지콘텐츠 스트림, 중첩된 Form XObject, 색상 공간이 포함된 인라인 이미지.
- Markdown제목 감지 및 테이블 보존이 가능한 깔끔한 Markdown 또는 HTML.
- 폼모든 필드 값과 유형. FDF 또는 XFDF로 내보내기. XFA 분석.
- 메타데이터XMP, Dublin Core, 페이지 라벨, 카탈로그, 트레일러 사전.
- 검색정규표현식, 대소문자 무시, 전체 단어 모드의 전문 검색.
모든 대안 대비 5배 빠름.
3개의 공개 테스트 스위트에서 3,830개의 실제 PDF로 벤치마크.
Node.js, Go, and C# share the same Rust core — expect matching numbers.
| 라이브러리 | 언어 | 평균 | p99 | 통과율 | 라이선스 |
|---|---|---|---|---|---|
| PDF Oxide | 7개 언어 | 0.8ms | 9ms | 100% | MIT |
| PyMuPDF | Python | 4.6ms | 28ms | 99.3% | AGPL-3.0 |
| oxidize_pdf | Rust | 13.5ms | 11ms | 99.1% | MIT |
| pypdfium2 | Python | 4.1ms | 42ms | 99.2% | Apache-2.0 |
| pdfminer | Python | 16.8ms | 124ms | 98.8% | MIT |
| pdfplumber | Python | 23.2ms | 189ms | 98.8% | MIT |
| pypdf | Python | 12.1ms | 97ms | 98.4% | BSD-3 |
| unpdf | Rust | 2.8ms | 10ms | 95.1% | MIT |
| pdf_extract | Rust | 4.08ms | 37ms | 91.5% | Apache-2.0 |
| lopdf | Rust | 0.3ms | 2ms | 80.2% | MIT |
3,830개 PDF (veraPDF, Mozilla pdf.js, DARPA SafeDocs)에서 측정.
단일 스레드, 워밍업 없음, 60초 타임아웃.
100% 신뢰성. 예기치 않은 오류 제로.
3개의 독립적인 공개 테스트 스위트에서 3,830개 PDF로 테스트 완료.
패닉도, 타임아웃도, 크래시도 없습니다.
3,823
유효한 PDF 파싱 성공
단 하나의 실패도 없이
단 하나의 실패도 없이
99.5%
텍스트 품질 동등
PyMuPDF 및 pypdfium2 대비
PyMuPDF 및 pypdfium2 대비
7
의도적으로 손상된 PDF
올바르게 거부
올바르게 거부
테스트 코퍼스는 모든 PDF 버전(1.0–2.0), 암호화된 파일, 잘못된 문서, CJK 인코딩, 그리고 취약한 파서에 크래시를 유발하도록 설계된 DARPA SafeDocs 보안 엣지 케이스를 포함합니다.