Skip to content

Commit f40ade5

Browse files
phodalcodex
andcommitted
fix(office): preserve full bleed docx cover pages
Co-authored-by: Codex (GPT 5.5) <codex@openai.com>
1 parent 0f4f9fb commit f40ade5

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

src/app/debug/office-wasm-poc/word-preview.tsx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,7 @@ function wordPaginatePreviewPage(page: WordPreviewPage, styleMaps: OfficeTextSty
292292
const layout = wordPageLayout(page.root);
293293
const capacity = wordPageBodyCapacity(layout, page);
294294
if (capacity <= 0 || page.elements.length <= 1) return [page];
295+
if (wordIsCoverLikeFullBleedPage(page, layout)) return [page];
295296

296297
const chunks: WordPreviewPage[] = [];
297298
let current: unknown[] = [];
@@ -317,6 +318,13 @@ function wordPaginatePreviewPage(page: WordPreviewPage, styleMaps: OfficeTextSty
317318
return chunks.length > 0 ? chunks : [page];
318319
}
319320

321+
function wordIsCoverLikeFullBleedPage(page: WordPreviewPage, pageLayout: WordPageLayout): boolean {
322+
return page.elements.length <= 12 && page.elements.some((element) => {
323+
const record = asRecord(element);
324+
return record != null && elementImageReferenceId(record) !== "" && wordIsFullBleedElement(record, pageLayout);
325+
});
326+
}
327+
320328
function wordPreviewPageChunk(page: WordPreviewPage, index: number, elements: unknown[]): WordPreviewPage {
321329
return {
322330
...page,

0 commit comments

Comments
 (0)