从.docx读取theme1.xml,没有命名空间的属性

时间:2013-01-17 15:21:21

标签: c++ docx libopc

我正在制作docx阅读器(libopc和C ++),当我想从theme1.xml获取次要和主要Font时,我遇到了问题。问题是我不知道如何在没有它的情况下为属性编写命名空间:

<a:latin typeface="Calibri"/>

我尝试过:

mce_start_attribute(&reader, _X(""), _X("typeface")) {//type
    _majorFont = (char*) xmlTextReaderConstValue(reader.reader);
}mce_end_attribute(&reader);

mce_start_attribute(&reader, _X("http://www.3w.org/2000/xmlns"), _X("typeface")) {//type
    _majorFont = (char*) xmlTextReaderConstValue(reader.reader);
}mce_end_attribute(&reader);

我得到了同样的结果:没有。

任何建议。 提前谢谢。

1 个答案:

答案 0 :(得分:2)

我自己回答。 在ckeck libopc源代码之后,解决方案是将mce_start_attribute宏中的命名空间值设置为NULL:

mce_start_attribute(&reader, NULL, _X("typeface")) {//type
    _majorFont = (char*) xmlTextReaderConstValue(reader.reader);
}mce_end_attribute(&reader);