Files
ofdgo/ofdgo_meta.go
T

59 lines
1.7 KiB
Go

// Copyright 2025 肖其顿 (XIAO QI DUN)
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Package ofdgo 首款原生、全平台兼容的纯 Go 语言 OFD 渲染库
package ofdgo
import "encoding/xml"
// OFD OFD入口结构
// 代表OFD文档的根节点
type OFD struct {
XMLName xml.Name `xml:"OFD"`
Version string `xml:"Version,attr"`
DocType string `xml:"DocType,attr"`
DocBody []DocBody `xml:"DocBody"`
}
// DocBody 文档体信息
// 包含文档元数据和根节点路径
type DocBody struct {
DocInfo DocInfo `xml:"DocInfo"`
DocRoot string `xml:"DocRoot"`
Signatures string `xml:"Signatures"`
}
// DocInfo 文档元数据
type DocInfo struct {
DocID string `xml:"DocID"`
Title string `xml:"Title"`
Author string `xml:"Author"`
Subject string `xml:"Subject"`
Abstract string `xml:"Abstract"`
CreationDate string `xml:"CreationDate"`
ModDate string `xml:"ModDate"`
CustomDatas *CustomDatas `xml:"CustomDatas"`
}
// CustomDatas 自定义数据集合
type CustomDatas struct {
CustomData []CustomData `xml:"CustomData"`
}
// CustomData 自定义数据项
type CustomData struct {
Name string `xml:"Name,attr"`
Value string `xml:",chardata"`
}