Dear Aspose team,
I am an Aspose.Cells developer, and I think I found an issue with the fidelity of Excel formatting styles when converting from “XML Spreadsheet 2003” format to XLSX format using Aspose.Cells for Java (version 8.5.2). I open the .xml file with Aspose, and then save it as “SaveFormat.XLSX”, and the files look different when opening in Excel 2010.
I investigated and found that the way format inheritance works in “XML Spreadsheet 2003” format is not preserved by the conversion. The XML format defines styles in a hierarchical manner, but when overriding a styling element, attributes that are not defined in the child style are not inherited in Excel, they are reset to the value of the default style instead.
Example (this is valid “XML Spreadsheet 2003” format obtained by “save as” within Excel 2010) :
Note that the Font Size attribute is defined in the parent style, but not in the child style.
For cells with the style “s22”, the size is interpreted by Excel as 10 (the default), not as 14 from the parent style. All attributes not defined in an overriding element see their value reset to default, not inherited. But after conversion with Aspose, the cell with style “s22” will have size 14, so it looks like Aspose used inheritance logic then computing the format internally, and when saving as xlsx the cell obtains the inherited formatting values.
Has anybody reported issue with the support for “XML Spreadsheet 2003” format, and are you aware of this problem ?
Can you reproduce the issue (I can provide some test files in xml format if that helps) ?
Could this behavior be modified in a future version of Aspose.Cells ?
Thanks and regards,
Aspose.Cells User
<!–[if gte mso 9]>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>EN-US</w:LidThemeOther>
<w:LidThemeAsian>JA</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val=“Cambria Math”/>
<m:brkBin m:val=“before”/>
<m:brkBinSub m:val="–"/>
<m:smallFrac m:val=“off”/>
<m:dispDef/>
<m:lMargin m:val=“0”/>
<m:rMargin m:val=“0”/>
<m:defJc m:val=“centerGroup”/>
<m:wrapIndent m:val=“1440”/>
<m:intLim m:val=“subSup”/>
<m:naryLim m:val=“undOvr”/>
</m:mathPr></w:WordDocument>
<![endif]–><!–[if gte mso 10]>
<![endif]–>