Core 패키지 개요
Core · LGPL-3.0Core 패키지(yeeefang/tcpdf-next)는 TCPDF-Next 생태계의 기반입니다. PDF 2.0 문서 생성에 필요한 모든 것을 포함하고 있습니다.
한눈에 보기
| 항목 | 값 |
|---|---|
| PHP 소스 파일 | 148 |
| 모듈 | 16 |
| 테스트 | 908+ |
| 어서션 | 28,881+ |
| PHPStan 레벨 | 8 |
| 진입점 | Document::create() |
| 라이선스 | LGPL-3.0-or-later |
진입점
모든 문서는 Document::create()로 시작합니다:
use Yeeefang\TcpdfNext\Core\Document;
$pdf = Document::create()
->setTitle('My Document')
->addPage()
->setFont('Helvetica', '', 12)
->cell(0, 10, 'Hello World')
->save('output.pdf');Document 클래스는 final이며 PdfDocumentInterface를 구현합니다. 기능은 12개의 조합 가능한 트레이트를 통해 제공됩니다 — 자세한 내용은 설계 철학을 참조하십시오.
모듈 맵
| 모듈 | 네임스페이스 | 파일 수 | 문서 |
|---|---|---|---|
| Core | Core\ | 6 | 문서 |
| Contracts | Contracts\ | 7 | API 레퍼런스 |
| ValueObjects | ValueObjects\ | 5 | 값 객체 |
| Support | Support\ | 1 | API 레퍼런스 |
| Content | Content\ | 6 | 텍스트 출력 |
| Typography | Typography\ | 14 | 타이포그래피, 폰트 |
| Graphics | Graphics\ | 19 | 색상, 그래픽, 이미지 |
| Layout | Layout\ | 6 | 레이아웃 |
| Html | Html\ | 8 | HTML 렌더링 |
| Form | Form\ | 5 | 폼 |
| Barcode | Barcode\ | 12 | 바코드 |
| Navigation | Navigation\ | 11 | 내비게이션 |
| Accessibility | Accessibility\ | 3 | 태그된 PDF |
| Security | Security\ | 14 | 암호화, 서명 |
| Writer | Writer\ | 8 | 출력 |
기능
텍스트 및 타이포그래피
유니코드, BiDi(양방향 텍스트), CJK, 아랍어 셰이핑, 하이픈네이션을 지원합니다. TTF/OTF/Type1/CFF 폰트 서브셋을 제공합니다. 14개의 표준 PDF 폰트가 내장되어 있습니다.
그래픽
도형(선, 사각형, 원, 타원, 다각형, 별, 화살표, 곡선), 그라데이션(선형, 방사형, Coons 패치 메시, Gouraud 삼각형 메시), 패턴 채우기, SVG/EPS 파싱, 이미지 지원(PNG, JPEG, WebP, AVIF)을 제공합니다.
HTML 렌더링
div, p, h1-h6, table(colspan/rowspan), 리스트, 인라인 스타일링을 지원하는 내장 HTML 파서를 제공합니다. 완전한 CSS3(Flexbox, Grid, 웹 폰트)를 사용하려면 Artisan 패키지를 이용하십시오.
바코드
1D: Code 128, EAN-8/13, UPC-A/E, Code 39/93, GS1-128, IMB 등을 지원합니다. 2D: QR Code(ISO 18004), DataMatrix(ISO 16022), PDF417(ISO 15438)을 지원합니다.
보안
SASLprep를 적용한 AES-256 암호화(AESV3 Rev 6)를 지원합니다. 가시/비가시 외관을 갖춘 PAdES B-B 디지털 서명을 제공합니다. RFC 3161 타임스탬프 클라이언트를 포함합니다.
폼
AcroForm 필드: 텍스트, 체크박스, 라디오 버튼, 리스트 박스, 콤보 박스, 버튼을 지원합니다. 폼 플래트닝을 제공합니다.
내비게이션
북마크, 내부/외부 링크, 명명된 목적지, 주석, 목차, 파일 첨부, JavaScript를 지원합니다.
출력
파일 저장, 인라인 표시, 다운로드, 문자열 버퍼를 지원합니다. 대용량 문서를 위한 스트리밍 출력을 제공합니다. 프로그레시브 웹 표시를 위한 선형화를 지원합니다. 재현 가능한 빌드를 위한 결정론적 모드를 제공합니다.