react-vector-pdf 0.5.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/index.d.ts +27 -1
- package/dist/react-vector-pdf.js +747 -585
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
- **Advanced Components**:
|
|
17
17
|
- **PdfTable**: Supports auto-wrapping, **row spans**, **col spans**, **vertical alignment**, custom cell styling, **striped rows**, and **intelligent page breaking** (keeps spanned rows together).
|
|
18
18
|
- **PdfImage**: Renders images from URLs with options for flow or absolute positioning. Automatically handles page breaks in flow mode.
|
|
19
|
-
- **PdfList**: Bullet and numbered lists with auto-wrapping
|
|
20
|
-
- **PdfView**:
|
|
19
|
+
- **PdfList**: Bullet and numbered lists with auto-wrapping and **orphan protection**.
|
|
20
|
+
- **PdfView**: Advanced container with **perfect multi-page spanning**, support for borders, background colors (rendered strictly behind content), and granular **persistent padding** (padding is maintained across page breaks).
|
|
21
21
|
- **Global Document Options**:
|
|
22
22
|
- **Formatting**: A4, Letter, custom sizes, portrait/landscape orientation, distinct margins, base fonts.
|
|
23
23
|
- **Headers & Footers**: Custom render functions with full control.
|
package/dist/index.d.ts
CHANGED
|
@@ -135,7 +135,13 @@ export declare class PdfRenderer {
|
|
|
135
135
|
private cursorX;
|
|
136
136
|
private cursorY;
|
|
137
137
|
private contentWidth;
|
|
138
|
-
private
|
|
138
|
+
private reservedBottomHeight;
|
|
139
|
+
margin: {
|
|
140
|
+
top: number;
|
|
141
|
+
right: number;
|
|
142
|
+
bottom: number;
|
|
143
|
+
left: number;
|
|
144
|
+
};
|
|
139
145
|
private defaultFont;
|
|
140
146
|
private defaultColor;
|
|
141
147
|
private defaultLineHeight;
|
|
@@ -144,8 +150,13 @@ export declare class PdfRenderer {
|
|
|
144
150
|
private pendingTasks;
|
|
145
151
|
private opQueue;
|
|
146
152
|
private generation;
|
|
153
|
+
private recordingStack;
|
|
147
154
|
private recurringItems;
|
|
148
155
|
constructor(opts?: PDFOptions);
|
|
156
|
+
startRecording(): void;
|
|
157
|
+
stopRecording(): (() => void)[];
|
|
158
|
+
playback(ops: Array<() => void>): void;
|
|
159
|
+
private drawOp;
|
|
149
160
|
get instance(): jsPDF;
|
|
150
161
|
get width(): number;
|
|
151
162
|
get height(): number;
|
|
@@ -161,6 +172,11 @@ export declare class PdfRenderer {
|
|
|
161
172
|
size: number;
|
|
162
173
|
};
|
|
163
174
|
get baseLineHeight(): number;
|
|
175
|
+
setReservedHeight(h: number): void;
|
|
176
|
+
private indentStack;
|
|
177
|
+
private currentIndent;
|
|
178
|
+
pushIndent(left: number, right: number): void;
|
|
179
|
+
popIndent(): void;
|
|
164
180
|
resetFlowCursor(): void;
|
|
165
181
|
reset(): void;
|
|
166
182
|
setHeaderFooter(header?: (pdf: jsPDF, pageNum: number, pageCount: number, renderer: PdfRenderer) => void, footer?: (pdf: jsPDF, pageNum: number, pageCount: number, renderer: PdfRenderer) => void): void;
|
|
@@ -215,6 +231,16 @@ export declare class PdfRenderer {
|
|
|
215
231
|
}): void;
|
|
216
232
|
save(filename: string): void;
|
|
217
233
|
getBlobUrl(): URL;
|
|
234
|
+
/**
|
|
235
|
+
* Injects a filled rectangle at the beginning of the page stream.
|
|
236
|
+
* This ensures the background is drawn BEHIND all other content on the page.
|
|
237
|
+
*/
|
|
238
|
+
injectFill(pageNum: number, rect: {
|
|
239
|
+
x: number;
|
|
240
|
+
y: number;
|
|
241
|
+
w: number;
|
|
242
|
+
h: number;
|
|
243
|
+
}, color: string): void;
|
|
218
244
|
}
|
|
219
245
|
|
|
220
246
|
export declare const PdfTable: default_2.FC<PdfTableProps>;
|