2025-04-20 00:32:41 +10:00

48 lines
996 B
Go

package model
import "encoding/xml"
type TocNCXHead struct {
XMLName xml.Name `xml:"head"`
Meta []TocNCXHeadMeta `xml:"meta"`
}
type TocNCXHeadMeta struct {
XMLName xml.Name `xml:"meta"`
Content string `xml:"content,attr"`
Name string `xml:"name,attr"`
}
func (h *TocNCXHead) Marshal() (string, error) {
xmlBytes, err := xml.Marshal(h)
if err != nil {
return "", err
}
return string(xmlBytes), nil
}
type NavPoint struct {
Id string `xml:"id,attr"`
PlayOrder int `xml:"playOrder,attr"`
Label string `xml:"navLabel>text"`
Content NavPointContent `xml:"content"`
NavPoints []*NavPoint `xml:"navPoint"`
}
type NavPointContent struct {
Src string `xml:"src,attr"`
}
type NavMap struct {
XMLName xml.Name `xml:"navMap"`
Points []*NavPoint `xml:"navPoint"`
}
func (n *NavMap) Marshal() (string, error) {
xmlBytes, err := xml.Marshal(n)
if err != nil {
return "", err
}
return string(xmlBytes), nil
}