Spreadsheet styles.xml将字体的alpha值显示为零

时间:2014-11-21 07:33:07

标签: xml fonts openxml spreadsheet

我有一个奇怪的ooxml spreadhsheet文档,其styles.xml具有以下内容:

-<fonts count="3">
-<font>
<sz val="10"/>
 <color rgb="FF000000"/>
 <name val="Arial"/>
</font>
-<font>
<sz val="9"/>
 <color rgb="00333333"/>
 <name val="Arial"/>
 </font>
-<font>
<b/>
<sz val="9"/>
<color rgb="00FFFFFF"/>
<name val="Arial"/>
</font>
</fonts>

我无法在屏幕上呈现它,因为在这种情况下字体的alpha值设置为零。如果我再次重新保存文档,styles.xml中的alpha值将更改为0xFF,并且内容在屏幕上可见。使用XML Parser读取用C语言编写的值的整个代码。原始文档可以在Office套件中打开。是Office套件是丢弃字体的alpha值还是应用变通方法来查看文档?在styles.xml中是否有其他值,我应该在alpha值中查找字体设置为零,以便我可以在屏幕上呈现内容?任何指针。

或换句话说,如果字体的alpha值为零但内容应该仍然可见,那么其他哪些属性可以提供帮助?可能是我可能忽略的xml文件中的另一个值?

1 个答案:

答案 0 :(得分:0)

似乎xml本身存在问题,好像有人明确修改过它。通过在color theme中读取字体时检查styles.xml值来修复它,如果没有设置,则将字体的alpha值设置为0xFF,瞧,一切正常

再次保存同一文档会导致字体的alpha值重置为0xFF,因此证明了我的观点。