postext 1.39.0 → 1.40.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.
Files changed (125) hide show
  1. package/dist/__tests__/comics/frames.test.js +0 -8
  2. package/dist/__tests__/comics/frames.test.js.map +1 -1
  3. package/dist/__tests__/comics/textPanelsStripsSpreads.test.d.ts +2 -0
  4. package/dist/__tests__/comics/textPanelsStripsSpreads.test.d.ts.map +1 -0
  5. package/dist/__tests__/comics/textPanelsStripsSpreads.test.js +277 -0
  6. package/dist/__tests__/comics/textPanelsStripsSpreads.test.js.map +1 -0
  7. package/dist/__tests__/composed/fit.test.js +77 -0
  8. package/dist/__tests__/composed/fit.test.js.map +1 -1
  9. package/dist/__tests__/composed/frameModesChain.test.d.ts +2 -0
  10. package/dist/__tests__/composed/frameModesChain.test.d.ts.map +1 -0
  11. package/dist/__tests__/composed/frameModesChain.test.js +69 -0
  12. package/dist/__tests__/composed/frameModesChain.test.js.map +1 -0
  13. package/dist/__tests__/composed/framePictures.test.d.ts +2 -0
  14. package/dist/__tests__/composed/framePictures.test.d.ts.map +1 -0
  15. package/dist/__tests__/composed/framePictures.test.js +121 -0
  16. package/dist/__tests__/composed/framePictures.test.js.map +1 -0
  17. package/dist/__tests__/composed/frameWritingMode.test.js +79 -3
  18. package/dist/__tests__/composed/frameWritingMode.test.js.map +1 -1
  19. package/dist/__tests__/composed/labels.test.js +19 -0
  20. package/dist/__tests__/composed/labels.test.js.map +1 -1
  21. package/dist/__tests__/composed/labelsMirrored.test.d.ts +2 -0
  22. package/dist/__tests__/composed/labelsMirrored.test.d.ts.map +1 -0
  23. package/dist/__tests__/composed/labelsMirrored.test.js +128 -0
  24. package/dist/__tests__/composed/labelsMirrored.test.js.map +1 -0
  25. package/dist/__tests__/composed/measureMemo.test.d.ts +2 -0
  26. package/dist/__tests__/composed/measureMemo.test.d.ts.map +1 -0
  27. package/dist/__tests__/composed/measureMemo.test.js +45 -0
  28. package/dist/__tests__/composed/measureMemo.test.js.map +1 -0
  29. package/dist/__tests__/composedTemplates.test.js +5 -2
  30. package/dist/__tests__/composedTemplates.test.js.map +1 -1
  31. package/dist/__tests__/exports.test.js +3 -0
  32. package/dist/__tests__/exports.test.js.map +1 -1
  33. package/dist/__tests__/migrate/labelsOnPictures.test.js +49 -1
  34. package/dist/__tests__/migrate/labelsOnPictures.test.js.map +1 -1
  35. package/dist/canvas-backend/composed.d.ts +2 -2
  36. package/dist/canvas-backend/composed.d.ts.map +1 -1
  37. package/dist/canvas-backend/composed.js +11 -2
  38. package/dist/canvas-backend/composed.js.map +1 -1
  39. package/dist/canvas-backend/index.d.ts.map +1 -1
  40. package/dist/canvas-backend/index.js +10 -1
  41. package/dist/canvas-backend/index.js.map +1 -1
  42. package/dist/canvas-backend/mirrorFrame.d.ts +19 -0
  43. package/dist/canvas-backend/mirrorFrame.d.ts.map +1 -1
  44. package/dist/canvas-backend/mirrorFrame.js +47 -0
  45. package/dist/canvas-backend/mirrorFrame.js.map +1 -1
  46. package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
  47. package/dist/canvas-backend/renderResourceBlock.js +35 -26
  48. package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
  49. package/dist/comics/frames.d.ts +5 -0
  50. package/dist/comics/frames.d.ts.map +1 -1
  51. package/dist/comics/frames.js +7 -0
  52. package/dist/comics/frames.js.map +1 -1
  53. package/dist/comics/layoutPage.d.ts +5 -0
  54. package/dist/comics/layoutPage.d.ts.map +1 -1
  55. package/dist/comics/layoutPage.js +9 -0
  56. package/dist/comics/layoutPage.js.map +1 -1
  57. package/dist/comics/sourceMap.d.ts.map +1 -1
  58. package/dist/comics/sourceMap.js +6 -4
  59. package/dist/comics/sourceMap.js.map +1 -1
  60. package/dist/comics/spread.d.ts +6 -1
  61. package/dist/comics/spread.d.ts.map +1 -1
  62. package/dist/comics/spread.js +15 -1
  63. package/dist/comics/spread.js.map +1 -1
  64. package/dist/comics/textPanels.d.ts +30 -6
  65. package/dist/comics/textPanels.d.ts.map +1 -1
  66. package/dist/comics/textPanels.js +226 -69
  67. package/dist/comics/textPanels.js.map +1 -1
  68. package/dist/comics/transform.d.ts.map +1 -1
  69. package/dist/comics/transform.js +4 -2
  70. package/dist/comics/transform.js.map +1 -1
  71. package/dist/composed/labels.d.ts +9 -0
  72. package/dist/composed/labels.d.ts.map +1 -1
  73. package/dist/composed/labels.js +36 -4
  74. package/dist/composed/labels.js.map +1 -1
  75. package/dist/composed/paint.d.ts +10 -6
  76. package/dist/composed/paint.d.ts.map +1 -1
  77. package/dist/composed/paint.js +38 -7
  78. package/dist/composed/paint.js.map +1 -1
  79. package/dist/composed/sourceMap.d.ts.map +1 -1
  80. package/dist/composed/sourceMap.js +7 -1
  81. package/dist/composed/sourceMap.js.map +1 -1
  82. package/dist/composed/templates.d.ts.map +1 -1
  83. package/dist/composed/templates.js +9 -4
  84. package/dist/composed/templates.js.map +1 -1
  85. package/dist/composed/types.d.ts +9 -4
  86. package/dist/composed/types.d.ts.map +1 -1
  87. package/dist/html-backend.d.ts.map +1 -1
  88. package/dist/html-backend.js +36 -14
  89. package/dist/html-backend.js.map +1 -1
  90. package/dist/index.d.ts +2 -2
  91. package/dist/index.d.ts.map +1 -1
  92. package/dist/index.js +2 -2
  93. package/dist/index.js.map +1 -1
  94. package/dist/migrate/pageDesign.d.ts +6 -1
  95. package/dist/migrate/pageDesign.d.ts.map +1 -1
  96. package/dist/migrate/pageDesign.js +26 -10
  97. package/dist/migrate/pageDesign.js.map +1 -1
  98. package/dist/migrate/textToMarkdown.js +4 -3
  99. package/dist/migrate/textToMarkdown.js.map +1 -1
  100. package/dist/pipeline/build.d.ts.map +1 -1
  101. package/dist/pipeline/build.js +67 -10
  102. package/dist/pipeline/build.js.map +1 -1
  103. package/dist/pipeline/calloutLayout.d.ts +11 -0
  104. package/dist/pipeline/calloutLayout.d.ts.map +1 -1
  105. package/dist/pipeline/calloutLayout.js +20 -1
  106. package/dist/pipeline/calloutLayout.js.map +1 -1
  107. package/dist/pipeline/composedLayout.d.ts.map +1 -1
  108. package/dist/pipeline/composedLayout.js +103 -24
  109. package/dist/pipeline/composedLayout.js.map +1 -1
  110. package/dist/pipeline/frameLayout.d.ts +5 -1
  111. package/dist/pipeline/frameLayout.d.ts.map +1 -1
  112. package/dist/pipeline/frameLayout.js +1 -0
  113. package/dist/pipeline/frameLayout.js.map +1 -1
  114. package/dist/pipeline/measureMemo.d.ts +39 -0
  115. package/dist/pipeline/measureMemo.d.ts.map +1 -0
  116. package/dist/pipeline/measureMemo.js +61 -0
  117. package/dist/pipeline/measureMemo.js.map +1 -0
  118. package/dist/pipeline/mirrorFrame.d.ts +2 -1
  119. package/dist/pipeline/mirrorFrame.d.ts.map +1 -1
  120. package/dist/pipeline/mirrorFrame.js +31 -5
  121. package/dist/pipeline/mirrorFrame.js.map +1 -1
  122. package/dist/vdt.d.ts +17 -0
  123. package/dist/vdt.d.ts.map +1 -1
  124. package/dist/vdt.js.map +1 -1
  125. package/package.json +1 -1
@@ -13,11 +13,12 @@ import type { ResolvedCalloutStyleConfig } from '../types';
13
13
  import type { ResolvedConfig, VDTBlock } from '../vdt';
14
14
  import type { BlockMeasureContext } from './measureContentBlock';
15
15
  import type { ParagraphContainerPlan } from './paragraphContainers';
16
+ import type { MeasureMemo } from './measureMemo';
16
17
  import { type BoxHeadingDesign, type CalloutLayoutInput, type CalloutLayoutResult, type CalloutLineWidth, type GroupPos, type PlannedCallout } from './calloutLayout';
17
18
  /** What a frame of a composed page (#855) adds to a box's layout: its exact
18
19
  * height, where content shorter than it sits, the rectangles its text
19
20
  * runs round, and the scale of its pictures (#858). Absent for callouts. */
20
- export type FrameBoxOptions = Pick<CalloutLayoutInput, 'boxHeight' | 'verticalAlign' | 'exclusions' | 'pictureScale' | 'continuedMark'>;
21
+ export type FrameBoxOptions = Pick<CalloutLayoutInput, 'boxHeight' | 'verticalAlign' | 'exclusions' | 'pictureScale' | 'continuedMark' | 'uprightMaxLength'>;
21
22
  /** What the box typesetter reads of a layout pass. */
22
23
  export interface FrameLayoutPass {
23
24
  /** The pass's content blocks (after every block transform). */
@@ -42,6 +43,9 @@ export interface FrameLayoutPass {
42
43
  /** The room a heading's own design takes in a box (#906; see
43
44
  * `CalloutLayoutInput.headingDesign`). */
44
45
  headingDesign?: BoxHeadingDesign;
46
+ /** The measurements of one layout of a composed page (#953), dropped
47
+ * with it. */
48
+ measureMemo?: MeasureMemo;
45
49
  }
46
50
  /** A position inside a box's children where a fragment starts or ends:
47
51
  * before child `child` (a position in `children`), past its first
@@ -1 +1 @@
1
- {"version":3,"file":"frameLayout.d.ts","sourceRoot":"","sources":["../../src/pipeline/frameLayout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frameLayout.d.ts","sourceRoot":"","sources":["../../src/pipeline/frameLayout.ts"],"names":[],"mappings":"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"}
@@ -86,6 +86,7 @@ export const makeCalloutLayouter = (pass, startIdx, plan, style) => {
86
86
  mirrored,
87
87
  stripBlock: pass.stripBlock,
88
88
  ...(pass.headingDesign ? { headingDesign: pass.headingDesign } : {}),
89
+ ...(pass.measureMemo ? { measureMemo: pass.measureMemo } : {}),
89
90
  ...frame,
90
91
  });
91
92
  };
@@ -1 +1 @@
1
- {"version":3,"file":"frameLayout.js","sourceRoot":"","sources":["../../src/pipeline/frameLayout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frameLayout.js","sourceRoot":"","sources":["../../src/pipeline/frameLayout.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * A memo of the box typesetter's measurements for one layout of a composed
3
+ * page (#953).
4
+ *
5
+ * The reflow ladder (#858) lays the page again at every step, and the
6
+ * frames that did not change set the same paragraphs at the same widths
7
+ * each time (most `measureContentBlock` calls of a ladder repeat an earlier
8
+ * one). A memo made for one `layoutComposedPage` run, and dropped with it,
9
+ * answers the repeats. It lives only as long as the run because what a
10
+ * measurement reads besides its arguments (the boxes that left the flow, a
11
+ * block's numbers) is fixed for the run and may change before the next one.
12
+ */
13
+ import type { ContentBlock } from '../parse';
14
+ import type { ResolvedCalloutStyleConfig } from '../types';
15
+ import { type BlockMeasureContext, type DropCapNote, type MeasureContentBlockOptions, type MeasuredContentBlock } from './measureContentBlock';
16
+ interface MemoEntry {
17
+ result: MeasuredContentBlock | null;
18
+ /** The drop cap note the measurement left for the block, if any (it
19
+ * writes the notes of its context as a side effect). */
20
+ note: DropCapNote | undefined;
21
+ /** The measurement marked the block as set without letter-spacing. */
22
+ joined: boolean;
23
+ }
24
+ export interface MeasureMemo {
25
+ readonly ids: WeakMap<object, number>;
26
+ next: number;
27
+ readonly entries: Map<string, MemoEntry>;
28
+ }
29
+ export declare function createMeasureMemo(): MeasureMemo;
30
+ /** `measureContentBlock(raw, blockIdx, width, derived, { styleOverride })`
31
+ * for a box of `style` whose children are measured in `ctx` (`derived` is
32
+ * `ctx` with the box's typography), remembered in `memo`. What the box's
33
+ * typography changes in the measurement is its `body` and `lists`
34
+ * (`deriveCalloutResolvedConfig`), which the styles a frame derives from
35
+ * one style share by identity. A figure or table is laid out afresh: its
36
+ * result is placed by moving it, so it is not kept. */
37
+ export declare function measureBlockMemo(memo: MeasureMemo, ctx: BlockMeasureContext, style: ResolvedCalloutStyleConfig, derived: BlockMeasureContext, raw: ContentBlock, blockIdx: number, width: number, styleOverride: MeasureContentBlockOptions['styleOverride']): MeasuredContentBlock | null;
38
+ export {};
39
+ //# sourceMappingURL=measureMemo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"measureMemo.d.ts","sourceRoot":"","sources":["../../src/pipeline/measureMemo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAI3D,OAAO,EAAuB,KAAK,mBAAmB,EAAE,KAAK,WAAW,EAAE,KAAK,0BAA0B,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEpK,UAAU,SAAS;IACjB,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACpC;6DACyD;IACzD,IAAI,EAAE,WAAW,GAAG,SAAS,CAAC;IAC9B,sEAAsE;IACtE,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CAC1C;AAED,wBAAgB,iBAAiB,IAAI,WAAW,CAE/C;AASD;;;;;;wDAMwD;AACxD,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,mBAAmB,EACxB,KAAK,EAAE,0BAA0B,EACjC,OAAO,EAAE,mBAAmB,EAC5B,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,0BAA0B,CAAC,eAAe,CAAC,GACzD,oBAAoB,GAAG,IAAI,CAqB7B"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * A memo of the box typesetter's measurements for one layout of a composed
3
+ * page (#953).
4
+ *
5
+ * The reflow ladder (#858) lays the page again at every step, and the
6
+ * frames that did not change set the same paragraphs at the same widths
7
+ * each time (most `measureContentBlock` calls of a ladder repeat an earlier
8
+ * one). A memo made for one `layoutComposedPage` run, and dropped with it,
9
+ * answers the repeats. It lives only as long as the run because what a
10
+ * measurement reads besides its arguments (the boxes that left the flow, a
11
+ * block's numbers) is fixed for the run and may change before the next one.
12
+ */
13
+ import { getMeasureArabicNumbers, getMeasureDirection } from '../measure/bidiLines';
14
+ import { measureLanguageKey } from '../measure/canvas';
15
+ import { getMeasureRegion, getMeasureUprightDigits, getMeasureWritingMode } from '../measure/vertical';
16
+ import { measureContentBlock } from './measureContentBlock';
17
+ export function createMeasureMemo() {
18
+ return { ids: new WeakMap(), next: 1, entries: new Map() };
19
+ }
20
+ const idOf = (memo, o) => {
21
+ if (!o)
22
+ return 0;
23
+ let id = memo.ids.get(o);
24
+ if (id === undefined)
25
+ memo.ids.set(o, (id = memo.next++));
26
+ return id;
27
+ };
28
+ /** `measureContentBlock(raw, blockIdx, width, derived, { styleOverride })`
29
+ * for a box of `style` whose children are measured in `ctx` (`derived` is
30
+ * `ctx` with the box's typography), remembered in `memo`. What the box's
31
+ * typography changes in the measurement is its `body` and `lists`
32
+ * (`deriveCalloutResolvedConfig`), which the styles a frame derives from
33
+ * one style share by identity. A figure or table is laid out afresh: its
34
+ * result is placed by moving it, so it is not kept. */
35
+ export function measureBlockMemo(memo, ctx, style, derived, raw, blockIdx, width, styleOverride) {
36
+ const key = `${idOf(memo, ctx)}|${style.id}|${idOf(memo, style.body)}|${idOf(memo, style.lists)}|${blockIdx}|${width}|${idOf(memo, styleOverride)}|${getMeasureWritingMode()}${getMeasureRegion()}${getMeasureUprightDigits()}${getMeasureDirection()}${getMeasureArabicNumbers() ? 'a' : ''}${measureLanguageKey()}`;
37
+ const notes = derived.dropCapNotes;
38
+ const known = memo.entries.get(key);
39
+ if (known) {
40
+ if (notes) {
41
+ if (known.note)
42
+ notes.set(blockIdx, known.note);
43
+ else
44
+ notes.delete(blockIdx);
45
+ }
46
+ if (known.joined)
47
+ derived.joiningLetterSpacing?.add(blockIdx);
48
+ return known.result;
49
+ }
50
+ const joinedBefore = derived.joiningLetterSpacing?.has(blockIdx) ?? false;
51
+ const result = measureContentBlock(raw, blockIdx, width, derived, { styleOverride });
52
+ if (!result || result.resourceBlock)
53
+ return result;
54
+ memo.entries.set(key, {
55
+ result,
56
+ note: notes?.get(blockIdx),
57
+ joined: !joinedBefore && (derived.joiningLetterSpacing?.has(blockIdx) ?? false),
58
+ });
59
+ return result;
60
+ }
61
+ //# sourceMappingURL=measureMemo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"measureMemo.js","sourceRoot":"","sources":["../../src/pipeline/measureMemo.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,8 @@ import { type VDTDocument, type VDTPage } from '../vdt';
30
30
  export declare function mirroredLineOrder(order: readonly number[] | undefined, n: number): number[] | undefined;
31
31
  /** Turn the line order of everything set in the flow of `page` when its
32
32
  * flow is mirrored (columns, floats, margin notes); see the module
33
- * comment. Design slots are left alone. */
33
+ * comment. Design slots are left alone, and so are the frames painted
34
+ * unmirrored (#960). */
34
35
  export declare function orientPageLinesToFrame(page: VDTPage): void;
35
36
  /** {@link orientPageLinesToFrame} on every page of `doc`. */
36
37
  export declare function orientLinesToFrames(doc: VDTDocument): void;
@@ -1 +1 @@
1
- {"version":3,"file":"mirrorFrame.d.ts","sourceRoot":"","sources":["../../src/pipeline/mirrorFrame.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAIL,KAAK,WAAW,EAGhB,KAAK,OAAO,EACb,MAAM,QAAQ,CAAC;AAMhB;;sCAEsC;AACtC,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAIvG;AAwFD;;4CAE4C;AAC5C,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAQ1D;AAED,6DAA6D;AAC7D,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAO1D"}
1
+ {"version":3,"file":"mirrorFrame.d.ts","sourceRoot":"","sources":["../../src/pipeline/mirrorFrame.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAIL,KAAK,WAAW,EAGhB,KAAK,OAAO,EACb,MAAM,QAAQ,CAAC;AAMhB;;sCAEsC;AACtC,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAIvG;AAqGD;;;yBAGyB;AACzB,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAS1D;AAED,6DAA6D;AAC7D,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAW1D"}
@@ -133,33 +133,59 @@ function orientBlock(block) {
133
133
  if (block.resourceBlock)
134
134
  block.resourceBlock = orientResourceBlock(block.resourceBlock);
135
135
  }
136
+ /** The blocks of the frames of `page` painted unmirrored through its
137
+ * mirrored flow (`VDTFrame.unmirrorX`, #960): set as on a left-to-right
138
+ * page, their lines keep the measurer's order. */
139
+ function unmirroredBlocks(page) {
140
+ const out = new Set();
141
+ const frames = (page.composed?.frames ?? []).filter((f) => f.unmirrorX !== undefined);
142
+ if (frames.length === 0)
143
+ return out;
144
+ const ids = new Set(frames.flatMap((f) => f.blockIds));
145
+ for (const block of page.floats ?? [])
146
+ if (ids.has(block.id))
147
+ out.add(block);
148
+ for (const f of frames)
149
+ for (const block of f.facingBlocks ?? [])
150
+ out.add(block);
151
+ return out;
152
+ }
136
153
  /** Turn the line order of everything set in the flow of `page` when its
137
154
  * flow is mirrored (columns, floats, margin notes); see the module
138
- * comment. Design slots are left alone. */
155
+ * comment. Design slots are left alone, and so are the frames painted
156
+ * unmirrored (#960). */
139
157
  export function orientPageLinesToFrame(page) {
140
158
  if (!pageIsMirrored(page))
141
159
  return;
160
+ const skip = unmirroredBlocks(page);
142
161
  for (const col of page.columns)
143
162
  for (const block of col.blocks)
144
163
  orientBlock(block);
145
164
  for (const block of page.floats ?? [])
146
- orientBlock(block);
165
+ if (!skip.has(block))
166
+ orientBlock(block);
147
167
  for (const block of page.marginNotes)
148
168
  orientBlock(block);
149
169
  // The half of a spread frame painted on the facing page (#861): a copy
150
170
  // of the frame's blocks, set in this page's mirrored frame like its own.
151
171
  for (const frame of page.composed?.frames ?? [])
152
172
  for (const block of frame.facingBlocks ?? [])
153
- orientBlock(block);
173
+ if (!skip.has(block))
174
+ orientBlock(block);
154
175
  }
155
176
  /** {@link orientPageLinesToFrame} on every page of `doc`. */
156
177
  export function orientLinesToFrames(doc) {
157
- for (const page of doc.pages)
178
+ const skip = new Set();
179
+ for (const page of doc.pages) {
158
180
  orientPageLinesToFrame(page);
181
+ if (pageIsMirrored(page))
182
+ for (const b of unmirroredBlocks(page))
183
+ skip.add(b);
184
+ }
159
185
  // Blocks the pages do not list (none today) are turned with their page.
160
186
  for (const block of doc.blocks) {
161
187
  const page = block.pageIndex >= 0 ? doc.pages[block.pageIndex] : undefined;
162
- if (page && pageIsMirrored(page))
188
+ if (page && pageIsMirrored(page) && !skip.has(block))
163
189
  orientBlock(block);
164
190
  }
165
191
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mirrorFrame.js","sourceRoot":"","sources":["../../src/pipeline/mirrorFrame.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mirrorFrame.js","sourceRoot":"","sources":["../../src/pipeline/mirrorFrame.ts"],"names":[],"mappings":"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"}
package/dist/vdt.d.ts CHANGED
@@ -1423,6 +1423,14 @@ export interface VDTFigureLabelLayout {
1423
1423
  * turned a quarter turn clockwise (`rotate` includes it), and painted
1424
1424
  * with the vertical glyph painter, characters upright in their cells. */
1425
1425
  vertical?: VDTVerticalText;
1426
+ /** Set on the layout of a vertical label in the flow of a mirrored
1427
+ * (right-to-left) page (#955): its geometry is the reflection of the
1428
+ * label's about the body's vertical axis, as every label's is there, but
1429
+ * its lines are kept as they were set (cells in text order, no run
1430
+ * order turned), so a painter reflects the frame back about the body,
1431
+ * paints the layout as {@link unmirrorLabelLayout} gives it back and
1432
+ * the label reads down its columns as on any page. */
1433
+ mirrored?: true;
1426
1434
  }
1427
1435
  /**
1428
1436
  * A paragraph's drop cap (#623, {@link VDTBlock.dropCap}), in page
@@ -2540,6 +2548,15 @@ export interface VDTFrame {
2540
2548
  * as a page of that mode is painted. `framePageRect` gives the box on
2541
2549
  * the page. */
2542
2550
  writingMode?: 'horizontal-tb' | 'vertical-rl';
2551
+ /** Set on a vertical frame of a right-to-left page (#960): the page's
2552
+ * mirror (`VDTMirroredFlowFrame.mirror.originX`), which the frame's
2553
+ * content is turned back through. The page's flow is painted mirrored,
2554
+ * which would set a vertical frame's lines from left to right; the
2555
+ * frame is laid out as on a left-to-right page, {@link frameMatrix}
2556
+ * puts it where the page shows it (the mirror included) and the
2557
+ * backends paint its text without the flow's counter-flip, as the
2558
+ * sheet reads it. */
2559
+ unmirrorX?: number;
2543
2560
  /** For a `'vertical-rl'` frame: what its vertical lines need, as a
2544
2561
  * vertical page's flow has it (`VDTVerticalFlowFrame`). */
2545
2562
  centralBaselines?: Record<string, number>;