🐛 Fix pdf outline exporting https://github.com/siyuan-note/siyuan/issues/13319
This commit is contained in:
parent
c8670fe146
commit
1c060947f9
3 changed files with 12 additions and 3 deletions
|
@ -177,7 +177,7 @@ require (
|
|||
|
||||
replace github.com/mattn/go-sqlite3 => github.com/88250/go-sqlite3 v1.14.13-0.20231214121541-e7f54c482950
|
||||
|
||||
replace github.com/pdfcpu/pdfcpu => github.com/88250/pdfcpu v0.3.14-0.20241128123312-a688ff960d4f
|
||||
replace github.com/pdfcpu/pdfcpu => github.com/88250/pdfcpu v0.3.14-0.20241201033812-5a93b7586a01
|
||||
|
||||
//replace github.com/88250/lute => F:\golang\gopath\src\github.com\88250\lute
|
||||
//replace github.com/siyuan-note/dejavu => D:\88250\dejavu
|
||||
|
|
|
@ -16,8 +16,8 @@ github.com/88250/gulu v1.2.3-0.20241127120230-1ae6a9868a2d h1:dexFyk3UkR4c2xpyrC
|
|||
github.com/88250/gulu v1.2.3-0.20241127120230-1ae6a9868a2d/go.mod h1:MUfzyfmbPrRDZLqxc7aPrVYveatTHRfoUa5TynPS0i8=
|
||||
github.com/88250/lute v1.7.7-0.20241130100631-638ecbd0c45d h1:Y6dIReDpaX1zfiC2viEmEo1MNKaW/jpUR+75Bm3nsY4=
|
||||
github.com/88250/lute v1.7.7-0.20241130100631-638ecbd0c45d/go.mod h1:VDAzL8b+oCh+e3NAlmwwLzC53ten0rZlS8NboB7ljtk=
|
||||
github.com/88250/pdfcpu v0.3.14-0.20241128123312-a688ff960d4f h1:oUW8FPgQ/RQzDG3nll1Qe3FfmBvelxjDkNNipF1ntck=
|
||||
github.com/88250/pdfcpu v0.3.14-0.20241128123312-a688ff960d4f/go.mod h1:fVfOloBzs2+W2VJCCbq60XIxc3yJHAZ0Gahv1oO0gyI=
|
||||
github.com/88250/pdfcpu v0.3.14-0.20241201033812-5a93b7586a01 h1:AcFe63RXjIh1XtX/dc4Es3U8bYKjlEkvavHd1nFBOHM=
|
||||
github.com/88250/pdfcpu v0.3.14-0.20241201033812-5a93b7586a01/go.mod h1:fVfOloBzs2+W2VJCCbq60XIxc3yJHAZ0Gahv1oO0gyI=
|
||||
github.com/88250/vitess-sqlparser v0.0.0-20210205111146-56a2ded2aba1 h1:48T899JQDwyyRu9yXHePYlPdHtpJfrJEUGBMH3SMBWY=
|
||||
github.com/88250/vitess-sqlparser v0.0.0-20210205111146-56a2ded2aba1/go.mod h1:U3pckKQIgxxkmZjV5yXQjHdGxQK0o/vEZeZ6cQsxfHw=
|
||||
github.com/ClarkThan/ahocorasick v0.0.0-20231011042242-30d1ef1347f4 h1:r10k4+Lu1mDpiCKa1liAdGJUhB4BJHHJnMvtoli6Hts=
|
||||
|
|
|
@ -1129,6 +1129,7 @@ func processPDFBookmarks(pdfCtx *model.Context, headings []*ast.Node) {
|
|||
return links[i].Page < links[j].Page
|
||||
})
|
||||
|
||||
titles := map[string]bool{}
|
||||
bms := map[string]*pdfcpu.Bookmark{}
|
||||
for _, link := range links {
|
||||
linkID := link.URI[strings.LastIndex(link.URI, "/")+1:]
|
||||
|
@ -1139,6 +1140,14 @@ func processPDFBookmarks(pdfCtx *model.Context, headings []*ast.Node) {
|
|||
}
|
||||
title := b.Content
|
||||
title, _ = url.QueryUnescape(title)
|
||||
for {
|
||||
if _, ok := titles[title]; ok {
|
||||
title += "\x01"
|
||||
} else {
|
||||
titles[title] = true
|
||||
break
|
||||
}
|
||||
}
|
||||
bm := &pdfcpu.Bookmark{
|
||||
Title: title,
|
||||
PageFrom: link.Page,
|
||||
|
|
Loading…
Add table
Reference in a new issue