@polotno/pdf-export 0.1.38 → 0.1.39

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.
Files changed (56) hide show
  1. package/README.md +61 -8
  2. package/lib/index.d.ts +66 -8
  3. package/lib/index.js +25 -145
  4. package/package.json +17 -18
  5. package/lib/compare-render.d.ts +0 -1
  6. package/lib/compare-render.js +0 -185
  7. package/lib/figure.d.ts +0 -10
  8. package/lib/figure.js +0 -54
  9. package/lib/filters.d.ts +0 -2
  10. package/lib/filters.js +0 -163
  11. package/lib/ghostscript.d.ts +0 -21
  12. package/lib/ghostscript.js +0 -132
  13. package/lib/group.d.ts +0 -5
  14. package/lib/group.js +0 -5
  15. package/lib/image.d.ts +0 -38
  16. package/lib/image.js +0 -279
  17. package/lib/line.d.ts +0 -10
  18. package/lib/line.js +0 -66
  19. package/lib/pdf-import/coordinate-transform.d.ts +0 -51
  20. package/lib/pdf-import/coordinate-transform.js +0 -99
  21. package/lib/pdf-import/element-builder.d.ts +0 -21
  22. package/lib/pdf-import/element-builder.js +0 -163
  23. package/lib/pdf-import/font-mapper.d.ts +0 -17
  24. package/lib/pdf-import/font-mapper.js +0 -142
  25. package/lib/pdf-import/index.d.ts +0 -35
  26. package/lib/pdf-import/index.js +0 -105
  27. package/lib/pdf-import/parser.d.ts +0 -29
  28. package/lib/pdf-import/parser.js +0 -285
  29. package/lib/pdf-import/text-analysis.d.ts +0 -17
  30. package/lib/pdf-import/text-analysis.js +0 -186
  31. package/lib/pdf-import/types.d.ts +0 -101
  32. package/lib/pdf-import/types.js +0 -1
  33. package/lib/scripts/compare-json.d.ts +0 -1
  34. package/lib/scripts/compare-json.js +0 -141
  35. package/lib/spot-colors.d.ts +0 -38
  36. package/lib/spot-colors.js +0 -141
  37. package/lib/svg-render.d.ts +0 -9
  38. package/lib/svg-render.js +0 -63
  39. package/lib/svg.d.ts +0 -12
  40. package/lib/svg.js +0 -224
  41. package/lib/text/fonts.d.ts +0 -16
  42. package/lib/text/fonts.js +0 -113
  43. package/lib/text/index.d.ts +0 -8
  44. package/lib/text/index.js +0 -42
  45. package/lib/text/layout.d.ts +0 -22
  46. package/lib/text/layout.js +0 -522
  47. package/lib/text/parser.d.ts +0 -46
  48. package/lib/text/parser.js +0 -415
  49. package/lib/text/render.d.ts +0 -8
  50. package/lib/text/render.js +0 -237
  51. package/lib/text/types.d.ts +0 -91
  52. package/lib/text/types.js +0 -1
  53. package/lib/text.d.ts +0 -39
  54. package/lib/text.js +0 -576
  55. package/lib/utils.d.ts +0 -16
  56. package/lib/utils.js +0 -124
@@ -1,91 +0,0 @@
1
- export interface TextElement {
2
- fontFamily: string;
3
- fontWeight?: string;
4
- fontSize: number;
5
- fontStyle?: string;
6
- fill: string;
7
- opacity: number;
8
- strokeWidth: number;
9
- stroke?: string;
10
- align: string;
11
- textDecoration: string;
12
- letterSpacing?: number;
13
- lineHeight: number;
14
- text: string;
15
- width: number;
16
- height: number;
17
- verticalAlign?: string;
18
- backgroundEnabled?: boolean;
19
- backgroundPadding?: number;
20
- backgroundCornerRadius?: number;
21
- backgroundColor?: string;
22
- }
23
- export interface RenderAttrs {
24
- pdfx1a?: boolean;
25
- textVerticalResizeEnabled?: boolean;
26
- }
27
- export interface TextSegment {
28
- text: string;
29
- bold?: boolean;
30
- italic?: boolean;
31
- underline?: boolean;
32
- color?: string;
33
- }
34
- export interface TabExpansionSegment {
35
- type: 'text' | 'tab';
36
- text?: string;
37
- wordSpacing?: number;
38
- advanceWidth?: number;
39
- }
40
- export interface RenderSegment {
41
- segment: TextSegment;
42
- fontKey: string;
43
- type: 'text' | 'tab';
44
- text?: string;
45
- wordSpacing?: number;
46
- advanceWidth?: number;
47
- }
48
- export interface ListParagraphMeta {
49
- type: 'ul' | 'ol';
50
- index: number;
51
- indentLevel: number;
52
- displayMarker: boolean;
53
- }
54
- export interface ListLineMeta {
55
- type: 'ul' | 'ol';
56
- markerText: string;
57
- indentPx: number;
58
- markerBoxWidth: number;
59
- markerFontSize: number;
60
- markerAlignment: 'center' | 'right';
61
- showMarker: boolean;
62
- textStartPx: number;
63
- }
64
- export interface TextLine {
65
- text: string;
66
- width: number;
67
- fullWidth: number;
68
- listMeta?: ListLineMeta;
69
- }
70
- export interface LineRenderContext {
71
- markerXOffset: number;
72
- lineYOffset: number;
73
- contentStartX: number;
74
- widthOption: number | undefined;
75
- heightOfLine: number;
76
- }
77
- export interface SegmentRenderOptions {
78
- mode: 'fill' | 'stroke';
79
- color?: string;
80
- opacity?: number;
81
- heightOfLine?: number;
82
- offsetX?: number;
83
- offsetY?: number;
84
- applySegmentColor?: (segment: TextSegment) => void;
85
- }
86
- export interface TextMetrics {
87
- textOptions: PDFKit.Mixins.TextOptions;
88
- lineHeightPx: number;
89
- baselineOffset: number;
90
- textLines: TextLine[];
91
- }
package/lib/text/types.js DELETED
@@ -1 +0,0 @@
1
- export {};
package/lib/text.d.ts DELETED
@@ -1,39 +0,0 @@
1
- export interface TextElement {
2
- fontFamily: string;
3
- fontWeight?: string;
4
- fontSize: number;
5
- fontStyle?: string;
6
- fill: string;
7
- opacity: number;
8
- strokeWidth: number;
9
- stroke?: string;
10
- align: string;
11
- textDecoration: string;
12
- letterSpacing?: number;
13
- lineHeight: number;
14
- text: string;
15
- width: number;
16
- height: number;
17
- verticalAlign?: string;
18
- backgroundEnabled?: boolean;
19
- backgroundPadding?: number;
20
- backgroundCornerRadius?: number;
21
- backgroundColor?: string;
22
- }
23
- export interface RenderAttrs {
24
- pdfx1a?: boolean;
25
- textVerticalResizeEnabled?: boolean;
26
- }
27
- export interface TextSegment {
28
- text: string;
29
- bold?: boolean;
30
- italic?: boolean;
31
- underline?: boolean;
32
- color?: string;
33
- }
34
- export declare function getGoogleFontPath(fontFamily: string, fontWeight?: string, italic?: boolean): Promise<string>;
35
- export declare function loadFontIfNeeded(doc: any, element: TextElement, fonts: Record<string, boolean>): Promise<string>;
36
- /**
37
- * Main text rendering function
38
- */
39
- export declare function renderText(doc: PDFKit.PDFDocument, element: TextElement, fonts: Record<string, boolean>, attrs?: RenderAttrs): Promise<void>;