OpenXML Filter: support styles hierarchy in presentation table cells
Issue #1009
resolved
Styles of p:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr/a:tc/a:txBody/a:lstStyle
kind should be considered.
The attached document illustrates the behaviour - the p:sldMaster/p:txStyles/p:otherStyle
is applied to table cells text (cap=”all”
):
Comments (4)
-
reporter -
reporter - attached 1009-1.pptx
-
reporter A related pull request #465 was opened.
-
reporter - changed status to resolved
The pull request #465 was merged.
- Log in to comment
According to the specifiction, styles for a table are specified in one of two ways:
a:tblPr/a:tblStyle
(slide, slide layout or slide master)a:tblPr/a:tblStyleId
-a:tblStyleLst/a:tblStyle
(in tableStyles part)a:tblStyle/
<band1H> (§5.1.4.2.1); <band1V> (§5.1.4.2.2); <band2H> (§5.1.4.2.3); <band2V> (§5.1.4.2.4); <firstCol> (§5.1.4.2.11); <firstRow> (§5.1.4.2.12); <lastCol> (§5.1.4.2.16); <lastRow> (§5.1.4.2.17); <neCell> (§5.1.4.2.20); <nwCell> (§5.1.4.2.21); <seCell> (§5.1.4.2.23); <swCell> (§5.1.4.2.24); <wholeTbl> (§5.1.4.2.34)
/a:tcTxStyle[b, i]
The table elements to consider the styles with are mentioned in
a:tbl/a:tblPr
. If none is pointed out, thea:wholeTbl
has to be used.E.g.:
<a:tblPr firstRow="1" bandRow="1">
The meaninigful "b" and "i" styles of table cell text has to be further merged with
p:otherStyle
in slideMaster part, which in its turn has to be merged withp:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr/a:tc/a:txBody/a:lstStyle
.This behaviour is supported by LibreOffice, however, MS PowerPoint has a little bit deviated implementation - the table cell text style "b" and "i" attributes are not allowed (and the document is considered to be corrupted).
I.e.:
<a:tcTxStyle b="true" i="true">
. For more information, please refer to the attached1009-1.pptx
document.As long as there are other places of the OpenXML filter where the PowerPoint implementation is followed instead of the specification, the scope of this issue is going to be in providing support for the
p:otherStyle
andp:cSld/p:spTree/p:graphicFrame/a:graphic/a:graphicData/a:tbl/a:tr/a:tc/a:txBody/a:lstStyle
.