C#仪器数据文件解析-XPS文件

时间:2022-01-09 06:11:25

XPS为微软推出的类似于Adobe PDF的一种文件格式,个人认为XPS很好,但毕竟PDF已经被大家所熟知,因此XPS的使用很少,也少有仪器数据输出为该格式。

XPS百度百科:https://baike.baidu.com/item/XPS%E6%A0%BC%E5%BC%8F%E6%96%87%E4%BB%B6

以下代码为XPS文档内容的解析示例:

 StringBuilder sb = new StringBuilder();
//读取文档
XpsDocument xpsDocument = new XpsDocument(xpsPath, FileAccess.Read);
//
var reader = xpsDocument.FixedDocumentSequenceReader;
//循环文档
foreach (var document in reader.FixedDocuments)
{
//循环页
foreach (var page in document.FixedPages)
{
//读取XML内容
XmlReader xrdr = page.XmlReader;
while (xrdr.Read())
{
switch (xrdr.NodeType)
{
case XmlNodeType.Element:
if (xrdr.Name == "Glyphs")
sb.Append(xrdr["UnicodeString"]);
break;
default:
break;
}
}
}
}
return sb.ToString();