Skip to content

Commit 8a7906f

Browse files
committed
feat(pdf): expose PDF module through Rix facade
1 parent 2e9e190 commit 8a7906f

15 files changed

Lines changed: 944 additions & 28 deletions

CHANGELOG.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
## v0.9.0
6+
7+
### Added
8+
9+
- Added `@rix/pdf` to the unified Rix facade.
10+
- Added `rix.pdf` public API for PDF document generation.
11+
- Added PDF document creation through `rix.pdf.document()`.
12+
- Added PDF saving through `rix.pdf.save(document, path)`.
13+
- Added PDF byte serialization through `rix.pdf.write(document)`.
14+
- Added high-level text PDF helper through `rix.pdf.make_text(...)`.
15+
- Added PDF image helpers through `rix.pdf.image.load_jpeg(...)` and `rix.pdf.image.from_jpeg_bytes(...)`.
16+
- Added PDF error helpers through `rix.pdf.error`.
17+
- Added public PDF examples under `examples/pdf`.
18+
19+
### Changed
20+
21+
- Updated the unified `rix` facade to mount the PDF module as `rix.pdf`.
22+
- Updated README documentation with `@rix/pdf`, `rix.pdf`, PDF examples, and PDF error handling.
23+
- Updated example CMake configuration to build PDF examples.
24+
- Updated package metadata and lock file for the new PDF dependency.
25+
26+
### Notes
27+
28+
- `rix.pdf` is the high-level public API for users of `@rix/rix`.
29+
- Lower-level `rixlib::pdf` APIs remain available for independent package usage and advanced integration.
30+
31+
## v0.7.0
32+
33+
### Added
34+
35+
- Added `@rix/pdf` to the unified Rix facade.
36+
- Added `rix.pdf` public API for PDF document generation.
37+
- Added PDF document creation through `rix.pdf.document()`.
38+
- Added PDF saving through `rix.pdf.save(document, path)`.
39+
- Added PDF byte serialization through `rix.pdf.write(document)`.
40+
- Added high-level text PDF helper through `rix.pdf.make_text(...)`.
41+
- Added PDF image helpers through `rix.pdf.image.load_jpeg(...)` and `rix.pdf.image.from_jpeg_bytes(...)`.
42+
- Added PDF error helpers through `rix.pdf.error`.
43+
- Added PDF examples under `examples/pdf`.
44+
- Added PDF example targets:
45+
- `rix_pdf_01_basic`
46+
- `rix_pdf_02_text`
47+
- `rix_pdf_03_table`
48+
- `rix_pdf_04_drawing`
49+
- `rix_pdf_05_metadata`
50+
- `rix_pdf_06_make_text`
51+
- `rix_pdf_07_error_handling`
52+
53+
### Changed
54+
55+
- Updated the unified `rix` facade to mount the PDF module as `rix.pdf`.
56+
- Updated public examples to prefer the stable `rix.*` facade API.
57+
- Updated README documentation with `@rix/pdf`, `rix.pdf`, PDF examples, and PDF error handling.
58+
- Updated repository layout documentation to include `examples/pdf` and `packages/pdf`.
59+
60+
### Notes
61+
62+
- `rix.pdf` is the public high-level PDF API for users of `@rix/rix`.
63+
- The lower-level `rixlib::pdf` API remains available for independent package usage and advanced integration.
64+
- PDF writer internals stay hidden behind explicit `PdfResult<T>` and `PdfStatus` values.

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ target_link_libraries(rix
3030
rix::csv
3131
rix::debug
3232
rix::auth
33+
rix::pdf
3334
)
3435

3536
if(CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)

0 commit comments

Comments
 (0)