@f-o-t/pdf 0.1.1 → 0.1.4
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/dist/core/index.d.ts +2 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/objects.d.ts +42 -0
- package/dist/core/objects.d.ts.map +1 -0
- package/dist/errors.d.ts +58 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/index-4jtcmpfh.js +48 -0
- package/dist/index-4jtcmpfh.js.map +10 -0
- package/dist/index-jsfksnj3.js +503 -0
- package/dist/index-jsfksnj3.js.map +14 -0
- package/dist/index-kjz7by1m.js +572 -0
- package/dist/index-kjz7by1m.js.map +13 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +111 -0
- package/dist/index.js.map +9 -0
- package/dist/plugins/generation/document.d.ts +38 -0
- package/dist/plugins/generation/document.d.ts.map +1 -0
- package/dist/plugins/generation/fonts.d.ts +59 -0
- package/dist/plugins/generation/fonts.d.ts.map +1 -0
- package/dist/plugins/generation/index.d.ts +5 -0
- package/dist/plugins/generation/index.d.ts.map +1 -0
- package/dist/plugins/generation/index.js +26 -0
- package/dist/plugins/generation/index.js.map +9 -0
- package/dist/plugins/generation/page.d.ts +56 -0
- package/dist/plugins/generation/page.d.ts.map +1 -0
- package/dist/plugins/generation/writer.d.ts +14 -0
- package/dist/plugins/generation/writer.d.ts.map +1 -0
- package/dist/plugins/parsing/index.d.ts +4 -0
- package/dist/plugins/parsing/index.d.ts.map +1 -0
- package/dist/plugins/parsing/index.js +16 -0
- package/dist/plugins/parsing/index.js.map +9 -0
- package/dist/plugins/parsing/lexer.d.ts +76 -0
- package/dist/plugins/parsing/lexer.d.ts.map +1 -0
- package/dist/plugins/parsing/parser.d.ts +63 -0
- package/dist/plugins/parsing/parser.d.ts.map +1 -0
- package/dist/plugins/parsing/reader.d.ts +66 -0
- package/dist/plugins/parsing/reader.d.ts.map +1 -0
- package/dist/schemas.d.ts +233 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/types.d.ts +123 -0
- package/dist/types.d.ts.map +1 -0
- package/package.json +43 -42
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { PDFRef } from "../../types.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Parsed PDF Document
|
|
4
|
+
*/
|
|
5
|
+
export interface ParsedPDF {
|
|
6
|
+
version: string;
|
|
7
|
+
catalog: PDFRef;
|
|
8
|
+
pages: ParsedPDFPage[];
|
|
9
|
+
objects: Map<number, any>;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Parsed PDF Page
|
|
13
|
+
*/
|
|
14
|
+
export interface ParsedPDFPage {
|
|
15
|
+
ref: PDFRef;
|
|
16
|
+
size: {
|
|
17
|
+
width: number;
|
|
18
|
+
height: number;
|
|
19
|
+
};
|
|
20
|
+
content: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* PDF Reader - reads and parses existing PDFs
|
|
24
|
+
*/
|
|
25
|
+
export declare class PDFReader {
|
|
26
|
+
private data;
|
|
27
|
+
private objects;
|
|
28
|
+
constructor(data: Uint8Array);
|
|
29
|
+
/**
|
|
30
|
+
* Parse PDF file
|
|
31
|
+
*/
|
|
32
|
+
parse(): ParsedPDF;
|
|
33
|
+
/**
|
|
34
|
+
* Find startxref offset
|
|
35
|
+
*/
|
|
36
|
+
private findStartXRef;
|
|
37
|
+
/**
|
|
38
|
+
* Parse xref table
|
|
39
|
+
*/
|
|
40
|
+
private parseXRefTable;
|
|
41
|
+
/**
|
|
42
|
+
* Parse trailer dictionary
|
|
43
|
+
*/
|
|
44
|
+
private parseTrailer;
|
|
45
|
+
/**
|
|
46
|
+
* Read all objects from xref table
|
|
47
|
+
*/
|
|
48
|
+
private readObjects;
|
|
49
|
+
/**
|
|
50
|
+
* Parse PDF version from header
|
|
51
|
+
*/
|
|
52
|
+
private parseVersion;
|
|
53
|
+
/**
|
|
54
|
+
* Parse pages from catalog
|
|
55
|
+
*/
|
|
56
|
+
private parsePages;
|
|
57
|
+
/**
|
|
58
|
+
* Parse a single page
|
|
59
|
+
*/
|
|
60
|
+
private parsePage;
|
|
61
|
+
/**
|
|
62
|
+
* Extract text from content stream
|
|
63
|
+
*/
|
|
64
|
+
private extractText;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../../src/plugins/parsing/reader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,MAAM,EAAY,MAAM,gBAAgB,CAAC;AAGtE;;GAEG;AACH,MAAM,WAAW,SAAS;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,SAAS;IACnB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,OAAO,CAA+B;gBAElC,IAAI,EAAE,UAAU;IAI5B;;OAEG;IACH,KAAK,IAAI,SAAS;IA0BlB;;OAEG;IACH,OAAO,CAAC,aAAa;IAUrB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqCtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAYpB;;OAEG;IACH,OAAO,CAAC,WAAW;IAanB;;OAEG;IACH,OAAO,CAAC,YAAY;IAOpB;;OAEG;IACH,OAAO,CAAC,UAAU;IAyBlB;;OAEG;IACH,OAAO,CAAC,SAAS;IAoBjB;;OAEG;IACH,OAAO,CAAC,WAAW;CAiBrB"}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* PDF Reference schema
|
|
4
|
+
*/
|
|
5
|
+
export declare const PDFRefSchema: z.ZodObject<{
|
|
6
|
+
objectNumber: z.ZodNumber;
|
|
7
|
+
generation: z.ZodNumber;
|
|
8
|
+
}, z.core.$strip>;
|
|
9
|
+
/**
|
|
10
|
+
* PDF Name schema
|
|
11
|
+
*/
|
|
12
|
+
export declare const PDFNameSchema: z.ZodObject<{
|
|
13
|
+
type: z.ZodLiteral<"name">;
|
|
14
|
+
value: z.ZodString;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
/**
|
|
17
|
+
* Page size schema
|
|
18
|
+
*/
|
|
19
|
+
export declare const PageSizeSchema: z.ZodUnion<readonly [z.ZodEnum<{
|
|
20
|
+
A4: "A4";
|
|
21
|
+
Letter: "Letter";
|
|
22
|
+
Legal: "Legal";
|
|
23
|
+
A3: "A3";
|
|
24
|
+
A5: "A5";
|
|
25
|
+
Tabloid: "Tabloid";
|
|
26
|
+
}>, z.ZodObject<{
|
|
27
|
+
width: z.ZodNumber;
|
|
28
|
+
height: z.ZodNumber;
|
|
29
|
+
}, z.core.$strip>]>;
|
|
30
|
+
/**
|
|
31
|
+
* RGB color schema
|
|
32
|
+
*/
|
|
33
|
+
export declare const RGBColorSchema: z.ZodObject<{
|
|
34
|
+
type: z.ZodLiteral<"rgb">;
|
|
35
|
+
r: z.ZodNumber;
|
|
36
|
+
g: z.ZodNumber;
|
|
37
|
+
b: z.ZodNumber;
|
|
38
|
+
}, z.core.$strip>;
|
|
39
|
+
/**
|
|
40
|
+
* CMYK color schema
|
|
41
|
+
*/
|
|
42
|
+
export declare const CMYKColorSchema: z.ZodObject<{
|
|
43
|
+
type: z.ZodLiteral<"cmyk">;
|
|
44
|
+
c: z.ZodNumber;
|
|
45
|
+
m: z.ZodNumber;
|
|
46
|
+
y: z.ZodNumber;
|
|
47
|
+
k: z.ZodNumber;
|
|
48
|
+
}, z.core.$strip>;
|
|
49
|
+
/**
|
|
50
|
+
* Gray color schema
|
|
51
|
+
*/
|
|
52
|
+
export declare const GrayColorSchema: z.ZodObject<{
|
|
53
|
+
type: z.ZodLiteral<"gray">;
|
|
54
|
+
gray: z.ZodNumber;
|
|
55
|
+
}, z.core.$strip>;
|
|
56
|
+
/**
|
|
57
|
+
* PDF Color schema
|
|
58
|
+
*/
|
|
59
|
+
export declare const PDFColorSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
60
|
+
type: z.ZodLiteral<"rgb">;
|
|
61
|
+
r: z.ZodNumber;
|
|
62
|
+
g: z.ZodNumber;
|
|
63
|
+
b: z.ZodNumber;
|
|
64
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
65
|
+
type: z.ZodLiteral<"cmyk">;
|
|
66
|
+
c: z.ZodNumber;
|
|
67
|
+
m: z.ZodNumber;
|
|
68
|
+
y: z.ZodNumber;
|
|
69
|
+
k: z.ZodNumber;
|
|
70
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
71
|
+
type: z.ZodLiteral<"gray">;
|
|
72
|
+
gray: z.ZodNumber;
|
|
73
|
+
}, z.core.$strip>]>;
|
|
74
|
+
/**
|
|
75
|
+
* Text options schema
|
|
76
|
+
*/
|
|
77
|
+
export declare const TextOptionsSchema: z.ZodObject<{
|
|
78
|
+
x: z.ZodNumber;
|
|
79
|
+
y: z.ZodNumber;
|
|
80
|
+
size: z.ZodOptional<z.ZodNumber>;
|
|
81
|
+
font: z.ZodOptional<z.ZodString>;
|
|
82
|
+
color: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
|
|
83
|
+
type: z.ZodLiteral<"rgb">;
|
|
84
|
+
r: z.ZodNumber;
|
|
85
|
+
g: z.ZodNumber;
|
|
86
|
+
b: z.ZodNumber;
|
|
87
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
88
|
+
type: z.ZodLiteral<"cmyk">;
|
|
89
|
+
c: z.ZodNumber;
|
|
90
|
+
m: z.ZodNumber;
|
|
91
|
+
y: z.ZodNumber;
|
|
92
|
+
k: z.ZodNumber;
|
|
93
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
94
|
+
type: z.ZodLiteral<"gray">;
|
|
95
|
+
gray: z.ZodNumber;
|
|
96
|
+
}, z.core.$strip>]>>;
|
|
97
|
+
align: z.ZodOptional<z.ZodEnum<{
|
|
98
|
+
left: "left";
|
|
99
|
+
center: "center";
|
|
100
|
+
right: "right";
|
|
101
|
+
}>>;
|
|
102
|
+
}, z.core.$strip>;
|
|
103
|
+
/**
|
|
104
|
+
* Rectangle options schema
|
|
105
|
+
*/
|
|
106
|
+
export declare const RectOptionsSchema: z.ZodObject<{
|
|
107
|
+
x: z.ZodNumber;
|
|
108
|
+
y: z.ZodNumber;
|
|
109
|
+
width: z.ZodNumber;
|
|
110
|
+
height: z.ZodNumber;
|
|
111
|
+
fill: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
|
|
112
|
+
type: z.ZodLiteral<"rgb">;
|
|
113
|
+
r: z.ZodNumber;
|
|
114
|
+
g: z.ZodNumber;
|
|
115
|
+
b: z.ZodNumber;
|
|
116
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
117
|
+
type: z.ZodLiteral<"cmyk">;
|
|
118
|
+
c: z.ZodNumber;
|
|
119
|
+
m: z.ZodNumber;
|
|
120
|
+
y: z.ZodNumber;
|
|
121
|
+
k: z.ZodNumber;
|
|
122
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
123
|
+
type: z.ZodLiteral<"gray">;
|
|
124
|
+
gray: z.ZodNumber;
|
|
125
|
+
}, z.core.$strip>]>>;
|
|
126
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
|
|
127
|
+
type: z.ZodLiteral<"rgb">;
|
|
128
|
+
r: z.ZodNumber;
|
|
129
|
+
g: z.ZodNumber;
|
|
130
|
+
b: z.ZodNumber;
|
|
131
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
132
|
+
type: z.ZodLiteral<"cmyk">;
|
|
133
|
+
c: z.ZodNumber;
|
|
134
|
+
m: z.ZodNumber;
|
|
135
|
+
y: z.ZodNumber;
|
|
136
|
+
k: z.ZodNumber;
|
|
137
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
138
|
+
type: z.ZodLiteral<"gray">;
|
|
139
|
+
gray: z.ZodNumber;
|
|
140
|
+
}, z.core.$strip>]>>;
|
|
141
|
+
lineWidth: z.ZodOptional<z.ZodNumber>;
|
|
142
|
+
}, z.core.$strip>;
|
|
143
|
+
/**
|
|
144
|
+
* Line options schema
|
|
145
|
+
*/
|
|
146
|
+
export declare const LineOptionsSchema: z.ZodObject<{
|
|
147
|
+
x1: z.ZodNumber;
|
|
148
|
+
y1: z.ZodNumber;
|
|
149
|
+
x2: z.ZodNumber;
|
|
150
|
+
y2: z.ZodNumber;
|
|
151
|
+
color: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
|
|
152
|
+
type: z.ZodLiteral<"rgb">;
|
|
153
|
+
r: z.ZodNumber;
|
|
154
|
+
g: z.ZodNumber;
|
|
155
|
+
b: z.ZodNumber;
|
|
156
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
157
|
+
type: z.ZodLiteral<"cmyk">;
|
|
158
|
+
c: z.ZodNumber;
|
|
159
|
+
m: z.ZodNumber;
|
|
160
|
+
y: z.ZodNumber;
|
|
161
|
+
k: z.ZodNumber;
|
|
162
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
163
|
+
type: z.ZodLiteral<"gray">;
|
|
164
|
+
gray: z.ZodNumber;
|
|
165
|
+
}, z.core.$strip>]>>;
|
|
166
|
+
lineWidth: z.ZodOptional<z.ZodNumber>;
|
|
167
|
+
}, z.core.$strip>;
|
|
168
|
+
/**
|
|
169
|
+
* PDF metadata schema
|
|
170
|
+
*/
|
|
171
|
+
export declare const PDFMetadataSchema: z.ZodObject<{
|
|
172
|
+
title: z.ZodOptional<z.ZodString>;
|
|
173
|
+
author: z.ZodOptional<z.ZodString>;
|
|
174
|
+
subject: z.ZodOptional<z.ZodString>;
|
|
175
|
+
keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
176
|
+
creator: z.ZodOptional<z.ZodString>;
|
|
177
|
+
producer: z.ZodOptional<z.ZodString>;
|
|
178
|
+
creationDate: z.ZodOptional<z.ZodDate>;
|
|
179
|
+
modificationDate: z.ZodOptional<z.ZodDate>;
|
|
180
|
+
}, z.core.$strip>;
|
|
181
|
+
/**
|
|
182
|
+
* PDF Dictionary schema (recursive)
|
|
183
|
+
*/
|
|
184
|
+
export declare const PDFDictionarySchema: z.ZodType<Record<string, any>>;
|
|
185
|
+
/**
|
|
186
|
+
* PDF Array schema (recursive)
|
|
187
|
+
*/
|
|
188
|
+
export declare const PDFArraySchema: z.ZodType<any[]>;
|
|
189
|
+
/**
|
|
190
|
+
* PDF Stream schema
|
|
191
|
+
*/
|
|
192
|
+
export declare const PDFStreamSchema: z.ZodObject<{
|
|
193
|
+
dictionary: z.ZodType<Record<string, any>, unknown, z.core.$ZodTypeInternals<Record<string, any>, unknown>>;
|
|
194
|
+
data: z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>;
|
|
195
|
+
}, z.core.$strip>;
|
|
196
|
+
/**
|
|
197
|
+
* PDF Value schema (recursive union)
|
|
198
|
+
*/
|
|
199
|
+
export declare const PDFValueSchema: z.ZodType<any>;
|
|
200
|
+
/**
|
|
201
|
+
* PDF Indirect Object schema
|
|
202
|
+
*/
|
|
203
|
+
export declare const PDFIndirectObjectSchema: z.ZodObject<{
|
|
204
|
+
ref: z.ZodObject<{
|
|
205
|
+
objectNumber: z.ZodNumber;
|
|
206
|
+
generation: z.ZodNumber;
|
|
207
|
+
}, z.core.$strip>;
|
|
208
|
+
value: z.ZodType<any, unknown, z.core.$ZodTypeInternals<any, unknown>>;
|
|
209
|
+
}, z.core.$strip>;
|
|
210
|
+
/**
|
|
211
|
+
* PDF Object Type schema
|
|
212
|
+
*/
|
|
213
|
+
export declare const PDFObjectTypeSchema: z.ZodEnum<{
|
|
214
|
+
string: "string";
|
|
215
|
+
number: "number";
|
|
216
|
+
boolean: "boolean";
|
|
217
|
+
name: "name";
|
|
218
|
+
array: "array";
|
|
219
|
+
dictionary: "dictionary";
|
|
220
|
+
stream: "stream";
|
|
221
|
+
null: "null";
|
|
222
|
+
indirect: "indirect";
|
|
223
|
+
}>;
|
|
224
|
+
/**
|
|
225
|
+
* PDF version schema
|
|
226
|
+
*/
|
|
227
|
+
export declare const PDFVersionSchema: z.ZodEnum<{
|
|
228
|
+
1.4: "1.4";
|
|
229
|
+
1.5: "1.5";
|
|
230
|
+
1.6: "1.6";
|
|
231
|
+
1.7: "1.7";
|
|
232
|
+
}>;
|
|
233
|
+
//# sourceMappingURL=schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,YAAY;;;iBAGvB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,aAAa;;;iBAGxB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;mBAMzB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;iBAKzB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;iBAM1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe;;;iBAG1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;mBAIzB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;iBAO5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQ5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;iBAO5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;iBAS5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAE9D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAE3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe;;;iBAG1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAYzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;iBAGlC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;EAU9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;EAAuC,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PDF object types
|
|
3
|
+
*/
|
|
4
|
+
export type PDFObjectType = "boolean" | "number" | "string" | "name" | "array" | "dictionary" | "stream" | "null" | "indirect";
|
|
5
|
+
/**
|
|
6
|
+
* PDF reference to indirect object
|
|
7
|
+
*/
|
|
8
|
+
export type PDFRef = {
|
|
9
|
+
readonly objectNumber: number;
|
|
10
|
+
readonly generation: number;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* PDF indirect object
|
|
14
|
+
*/
|
|
15
|
+
export type PDFIndirectObject = {
|
|
16
|
+
ref: PDFRef;
|
|
17
|
+
value: PDFValue;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* PDF value types
|
|
21
|
+
*/
|
|
22
|
+
export type PDFValue = boolean | number | string | PDFName | PDFArray | PDFDictionary | PDFStream | null | PDFRef;
|
|
23
|
+
/**
|
|
24
|
+
* PDF Name object
|
|
25
|
+
*/
|
|
26
|
+
export type PDFName = {
|
|
27
|
+
readonly type: "name";
|
|
28
|
+
readonly value: string;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* PDF Array
|
|
32
|
+
*/
|
|
33
|
+
export interface PDFArray extends Array<PDFValue> {
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* PDF Dictionary
|
|
37
|
+
*/
|
|
38
|
+
export interface PDFDictionary extends Record<string, PDFValue> {
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* PDF Stream
|
|
42
|
+
*/
|
|
43
|
+
export type PDFStream = {
|
|
44
|
+
readonly dictionary: PDFDictionary;
|
|
45
|
+
readonly data: Uint8Array;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* PDF Page size presets
|
|
49
|
+
*/
|
|
50
|
+
export type PageSize = "A4" | "Letter" | "Legal" | "A3" | "A5" | "Tabloid" | {
|
|
51
|
+
width: number;
|
|
52
|
+
height: number;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* PDF Color
|
|
56
|
+
*/
|
|
57
|
+
export type PDFColor = {
|
|
58
|
+
type: "rgb";
|
|
59
|
+
r: number;
|
|
60
|
+
g: number;
|
|
61
|
+
b: number;
|
|
62
|
+
} | {
|
|
63
|
+
type: "cmyk";
|
|
64
|
+
c: number;
|
|
65
|
+
m: number;
|
|
66
|
+
y: number;
|
|
67
|
+
k: number;
|
|
68
|
+
} | {
|
|
69
|
+
type: "gray";
|
|
70
|
+
gray: number;
|
|
71
|
+
};
|
|
72
|
+
/**
|
|
73
|
+
* Text options
|
|
74
|
+
*/
|
|
75
|
+
export type TextOptions = {
|
|
76
|
+
x: number;
|
|
77
|
+
y: number;
|
|
78
|
+
size?: number;
|
|
79
|
+
font?: string;
|
|
80
|
+
color?: PDFColor;
|
|
81
|
+
align?: "left" | "center" | "right";
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* Rectangle options
|
|
85
|
+
*/
|
|
86
|
+
export type RectOptions = {
|
|
87
|
+
x: number;
|
|
88
|
+
y: number;
|
|
89
|
+
width: number;
|
|
90
|
+
height: number;
|
|
91
|
+
fill?: PDFColor;
|
|
92
|
+
stroke?: PDFColor;
|
|
93
|
+
lineWidth?: number;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Line options
|
|
97
|
+
*/
|
|
98
|
+
export type LineOptions = {
|
|
99
|
+
x1: number;
|
|
100
|
+
y1: number;
|
|
101
|
+
x2: number;
|
|
102
|
+
y2: number;
|
|
103
|
+
color?: PDFColor;
|
|
104
|
+
lineWidth?: number;
|
|
105
|
+
};
|
|
106
|
+
/**
|
|
107
|
+
* PDF metadata
|
|
108
|
+
*/
|
|
109
|
+
export type PDFMetadata = {
|
|
110
|
+
title?: string;
|
|
111
|
+
author?: string;
|
|
112
|
+
subject?: string;
|
|
113
|
+
keywords?: string[];
|
|
114
|
+
creator?: string;
|
|
115
|
+
producer?: string;
|
|
116
|
+
creationDate?: Date;
|
|
117
|
+
modificationDate?: Date;
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* PDF version
|
|
121
|
+
*/
|
|
122
|
+
export type PDFVersion = "1.4" | "1.5" | "1.6" | "1.7";
|
|
123
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,44 +1,45 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
2
|
+
"name": "@f-o-t/pdf",
|
|
3
|
+
"version": "0.1.4",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"files": [
|
|
6
|
+
"dist"
|
|
7
|
+
],
|
|
8
|
+
"main": "./dist/index.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"default": "./dist/index.js"
|
|
14
|
+
},
|
|
15
|
+
"./plugins/generation": {
|
|
16
|
+
"types": "./dist/plugins/generation/index.d.ts",
|
|
17
|
+
"default": "./dist/plugins/generation/index.js"
|
|
18
|
+
},
|
|
19
|
+
"./plugins/parsing": {
|
|
20
|
+
"types": "./dist/plugins/parsing/index.d.ts",
|
|
21
|
+
"default": "./dist/plugins/parsing/index.js"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"scripts": {
|
|
25
|
+
"build": "bun x --bun fot build",
|
|
26
|
+
"test": "bun x --bun fot test",
|
|
27
|
+
"lint": "bun x --bun fot lint",
|
|
28
|
+
"format": "bun x --bun fot format",
|
|
29
|
+
"typecheck": "bun x --bun fot typecheck"
|
|
30
|
+
},
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@f-o-t/digital-certificate": "^1.0.0",
|
|
33
|
+
"zod": "^4.3.6"
|
|
34
|
+
},
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"@f-o-t/cli": "^1.0.0",
|
|
37
|
+
"@f-o-t/config": "^1.0.0",
|
|
38
|
+
"@types/bun": "latest"
|
|
39
|
+
},
|
|
40
|
+
"repository": {
|
|
41
|
+
"type": "git",
|
|
42
|
+
"url": "https://github.com/F-O-T/libraries.git",
|
|
43
|
+
"directory": "libraries/pdf"
|
|
44
|
+
}
|
|
44
45
|
}
|