From 50adea220d09e445572e94e225fa7a81b3b2bf89 Mon Sep 17 00:00:00 2001 From: Emily Bourke Date: Tue, 14 Sep 2021 17:07:46 +0100 Subject: pptx: Support footers in the reference doc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In PowerPoint, it’s possible to specify footers across all slides, containing a date (optionally automatically updated to today’s date), the slide number (optionally starting from a higher number than 1), and static text. There’s also an option to hide the footer on the title slide. Before this commit, none of that footer content was pulled through from the reference doc: this commit supports all the functionality listed above. There is one behaviour which may not be immediately obvious: if the reference doc specifies a fixed date (i.e. not automatically updating), and there’s a date specified in the metadata for the document, the footer date is replaced by the metadata date. - Include date, slide number, and static footer content from reference doc - Respect “slide number starts from” option - Respect “Don’t show on title slide” option - Add tests --- test/pptx/footer/basic/output.pptx | Bin 0 -> 52775 bytes test/pptx/footer/basic/reference.pptx | Bin 0 -> 49063 bytes test/pptx/footer/fixed-date/output.pptx | Bin 0 -> 51397 bytes test/pptx/footer/fixed-date/reference.pptx | Bin 0 -> 47996 bytes test/pptx/footer/higher-slide-number/output.pptx | Bin 0 -> 52790 bytes .../pptx/footer/higher-slide-number/reference.pptx | Bin 0 -> 49082 bytes test/pptx/footer/input.native | 66 +++++++++++++++++++++ test/pptx/footer/no-title-slide/output.pptx | Bin 0 -> 52362 bytes test/pptx/footer/no-title-slide/reference.pptx | Bin 0 -> 48423 bytes 9 files changed, 66 insertions(+) create mode 100644 test/pptx/footer/basic/output.pptx create mode 100644 test/pptx/footer/basic/reference.pptx create mode 100644 test/pptx/footer/fixed-date/output.pptx create mode 100644 test/pptx/footer/fixed-date/reference.pptx create mode 100644 test/pptx/footer/higher-slide-number/output.pptx create mode 100644 test/pptx/footer/higher-slide-number/reference.pptx create mode 100644 test/pptx/footer/input.native create mode 100644 test/pptx/footer/no-title-slide/output.pptx create mode 100644 test/pptx/footer/no-title-slide/reference.pptx (limited to 'test/pptx/footer') diff --git a/test/pptx/footer/basic/output.pptx b/test/pptx/footer/basic/output.pptx new file mode 100644 index 000000000..db8814418 Binary files /dev/null and b/test/pptx/footer/basic/output.pptx differ diff --git a/test/pptx/footer/basic/reference.pptx b/test/pptx/footer/basic/reference.pptx new file mode 100644 index 000000000..61f926fa6 Binary files /dev/null and b/test/pptx/footer/basic/reference.pptx differ diff --git a/test/pptx/footer/fixed-date/output.pptx b/test/pptx/footer/fixed-date/output.pptx new file mode 100644 index 000000000..85854a744 Binary files /dev/null and b/test/pptx/footer/fixed-date/output.pptx differ diff --git a/test/pptx/footer/fixed-date/reference.pptx b/test/pptx/footer/fixed-date/reference.pptx new file mode 100644 index 000000000..78bd3ce0d Binary files /dev/null and b/test/pptx/footer/fixed-date/reference.pptx differ diff --git a/test/pptx/footer/higher-slide-number/output.pptx b/test/pptx/footer/higher-slide-number/output.pptx new file mode 100644 index 000000000..c5bc3d047 Binary files /dev/null and b/test/pptx/footer/higher-slide-number/output.pptx differ diff --git a/test/pptx/footer/higher-slide-number/reference.pptx b/test/pptx/footer/higher-slide-number/reference.pptx new file mode 100644 index 000000000..6ada45399 Binary files /dev/null and b/test/pptx/footer/higher-slide-number/reference.pptx differ diff --git a/test/pptx/footer/input.native b/test/pptx/footer/input.native new file mode 100644 index 000000000..2c0ae5c06 --- /dev/null +++ b/test/pptx/footer/input.native @@ -0,0 +1,66 @@ +Pandoc (Meta {unMeta = fromList [("author",MetaInlines [Str "Me"]),("date",MetaInlines [Str "14/09/1995"]),("title",MetaInlines [Str "Slides"])]}) +[Header 2 ("slide-1",[],[]) [Str "Slide",Space,Str "1"] +,Para [Str "Hello",Space,Str "there"] +,Header 1 ("layouts",[],[]) [Str "Layouts"] +,Header 2 ("slide-3",[],[]) [Str "Slide",Space,Str "3"] +,Para [Str "Does",Space,Str "it",Space,Str "work",Space,Str "on",Space,Str "other",Space,Str "layouts?"] +,Table ("",[],[]) (Caption Nothing + []) + [(AlignDefault,ColWidth 5.555555555555555e-2) + ,(AlignDefault,ColWidth 5.555555555555555e-2)] + (TableHead ("",[],[]) + []) + [(TableBody ("",[],[]) (RowHeadColumns 0) + [] + [Row ("",[],[]) + [Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1) + [Plain [Str "1"]] + ,Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1) + [Plain [Str "2"]]]])] + (TableFoot ("",[],[]) + []) +,Header 2 ("slide-4",[],[]) [Str "Slide",Space,Str "4"] +,Div ("",["columns"],[]) + [Div ("",["column"],[]) + [Para [Str "hello",Space,Str "hello"]] + ,Div ("",["column"],[]) + [Para [Str "goood",Space,Str "bye"]]] +,Header 2 ("slide-5",[],[]) [Str "Slide",Space,Str "5"] +,Div ("",["columns"],[]) + [Div ("",["column"],[]) + [Para [Str "Hello",Space,Str "there"] + ,Table ("",[],[]) (Caption Nothing + []) + [(AlignDefault,ColWidth 5.555555555555555e-2) + ,(AlignDefault,ColWidth 5.555555555555555e-2)] + (TableHead ("",[],[]) + []) + [(TableBody ("",[],[]) (RowHeadColumns 0) + [] + [Row ("",[],[]) + [Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1) + [Plain [Str "1"]] + ,Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1) + [Plain [Str "2"]]]])] + (TableFoot ("",[],[]) + [])] + ,Div ("",["column"],[]) + [Para [Str "oh",Space,Str "wait"] + ,Table ("",[],[]) (Caption Nothing + []) + [(AlignDefault,ColWidth 5.555555555555555e-2) + ,(AlignDefault,ColWidth 5.555555555555555e-2)] + (TableHead ("",[],[]) + []) + [(TableBody ("",[],[]) (RowHeadColumns 0) + [] + [Row ("",[],[]) + [Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1) + [Plain [Str "1"]] + ,Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1) + [Plain [Str "2"]]]])] + (TableFoot ("",[],[]) + [])]] +,Header 2 ("section",[],[]) [] +,Div ("",["notes"],[]) + [Para [Str "This",Space,Str "is",Space,Str "a",Space,Str "blank",Space,Str "slide:",Space,Str "does",Space,Str "it",Space,Str "have",Space,Str "a",Space,Str "footer?"]]] diff --git a/test/pptx/footer/no-title-slide/output.pptx b/test/pptx/footer/no-title-slide/output.pptx new file mode 100644 index 000000000..d1475bf1f Binary files /dev/null and b/test/pptx/footer/no-title-slide/output.pptx differ diff --git a/test/pptx/footer/no-title-slide/reference.pptx b/test/pptx/footer/no-title-slide/reference.pptx new file mode 100644 index 000000000..ecd524a9b Binary files /dev/null and b/test/pptx/footer/no-title-slide/reference.pptx differ -- cgit v1.2.3