From c38837f3769ffa9d72b8b492756770b504a02562 Mon Sep 17 00:00:00 2001 From: jiangjiaqi Date: Wed, 16 Aug 2023 17:05:48 +0800 Subject: [PATCH] feat: add firstSlideNum prop of PresentationProps --- src/core-interfaces.ts | 1 + src/gen-xml.ts | 2 +- src/pptxgen.ts | 9 +++++++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/core-interfaces.ts b/src/core-interfaces.ts index df6c617a..58941f3a 100644 --- a/src/core-interfaces.ts +++ b/src/core-interfaces.ts @@ -1864,6 +1864,7 @@ export interface PresentationProps { subject: string theme: ThemeProps title: string + firstSlideNum: number } // PRIVATE interface export interface IPresentationProps extends PresentationProps { diff --git a/src/gen-xml.ts b/src/gen-xml.ts index 3a8d5d4e..2da8fbe3 100644 --- a/src/gen-xml.ts +++ b/src/gen-xml.ts @@ -1769,7 +1769,7 @@ export function makeXmlPresentation (pres: IPresentationProps): string { let strXml = `${CRLF}` + '` + `xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main" firstSlideNum="${pres.firstSlideNum}" ${pres.rtlMode ? 'rtl="1"' : ''} saveSubsetFonts="1" autoCompressPictures="0">` // STEP 1: Add slide master (SPEC: tag 1 under ) strXml += '' diff --git a/src/pptxgen.ts b/src/pptxgen.ts index f297ff12..f5b287d4 100644 --- a/src/pptxgen.ts +++ b/src/pptxgen.ts @@ -311,6 +311,15 @@ export default class PptxGenJS implements IPresentationProps { return this._shapes } + private _firstSlideNum = 1 + public get firstSlideNum (): number { + return this._firstSlideNum + } + + public set firstSlideNum (val: number) { + this._firstSlideNum = val + } + constructor () { const layout4x3: PresLayout = { name: 'screen4x3', width: 9144000, height: 6858000 } const layout16x9: PresLayout = { name: 'screen16x9', width: 9144000, height: 5143500 }