mirror of
https://github.com/xiaoqidun/ofdgo.git
synced 2026-10-29 15:06:46 +08:00
1 parent
056d7c3979
commit
035bbfb079
3 files changed
+19
-4
No files matched your search
@@ -9,7 +9,7 @@ require (
|
|||||||
github.com/tdewolff/canvas v0.0.0-20260923214215-09804640d00c
|
github.com/tdewolff/canvas v0.0.0-20260923214215-09804640d00c
|
||||||
github.com/tdewolff/font v0.0.0-20260913163313-54f98bb59ee6
|
github.com/tdewolff/font v0.0.0-20260913163313-54f98bb59ee6
|
||||||
github.com/xiaoqidun/jbig2 v1.1.1
|
github.com/xiaoqidun/jbig2 v1.1.1
|
||||||
github.com/xiaoqidun/pdfgo v0.0.0-20260928094736-cdc5f892445c
|
github.com/xiaoqidun/pdfgo v0.0.0-20260928103444-c1e05032dc3a
|
||||||
golang.org/x/crypto v0.57.0
|
golang.org/x/crypto v0.57.0
|
||||||
golang.org/x/image v0.46.0
|
golang.org/x/image v0.46.0
|
||||||
golang.org/x/text v0.42.0
|
golang.org/x/text v0.42.0
|
||||||
|
|||||||
@@ -62,8 +62,8 @@ github.com/tdewolff/test v1.0.12 h1:7F21DqIajswxuche0geHdrUZRCWE4oko4b7bcmkkrxk=
|
|||||||
github.com/tdewolff/test v1.0.12/go.mod h1:XPuWBzvdUzhCuxWO1ojpXsyzsA5bFoS3tO/Q3kFuTG8=
|
github.com/tdewolff/test v1.0.12/go.mod h1:XPuWBzvdUzhCuxWO1ojpXsyzsA5bFoS3tO/Q3kFuTG8=
|
||||||
github.com/xiaoqidun/jbig2 v1.1.1 h1:SjliS9ZO0e9HX5oYUfBuXrfFsXhWricrSz+XY4zORDI=
|
github.com/xiaoqidun/jbig2 v1.1.1 h1:SjliS9ZO0e9HX5oYUfBuXrfFsXhWricrSz+XY4zORDI=
|
||||||
github.com/xiaoqidun/jbig2 v1.1.1/go.mod h1:8QonVWtENmh2kc6l+leqeGl7psb79DWlHDkCpdChjfQ=
|
github.com/xiaoqidun/jbig2 v1.1.1/go.mod h1:8QonVWtENmh2kc6l+leqeGl7psb79DWlHDkCpdChjfQ=
|
||||||
github.com/xiaoqidun/pdfgo v0.0.0-20260928094736-cdc5f892445c h1:6idDj210CT1eyGK/fHDw0hD90GSrLqeRV7ECaP9dfyI=
|
github.com/xiaoqidun/pdfgo v0.0.0-20260928103444-c1e05032dc3a h1:ROTJKhSKiF4LHufA5UjBWwGQimvWQV8hU9SxsrkeTWE=
|
||||||
github.com/xiaoqidun/pdfgo v0.0.0-20260928094736-cdc5f892445c/go.mod h1:4Pf0JO0BEf1uzRY+uZjlMjN/OPn3PYa0YMi6cqPPTLQ=
|
github.com/xiaoqidun/pdfgo v0.0.0-20260928103444-c1e05032dc3a/go.mod h1:4Pf0JO0BEf1uzRY+uZjlMjN/OPn3PYa0YMi6cqPPTLQ=
|
||||||
github.com/xyproto/randomstring v1.0.5 h1:YtlWPoRdgMu3NZtP45drfy1GKoojuR7hmRcnhZqKjWU=
|
github.com/xyproto/randomstring v1.0.5 h1:YtlWPoRdgMu3NZtP45drfy1GKoojuR7hmRcnhZqKjWU=
|
||||||
github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E=
|
github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E=
|
||||||
github.com/yuin/goldmark v1.8.5 h1:r6N5afV5qj/5S4UTch8agZHJ8UxNCMwX7WjkkJam2NA=
|
github.com/yuin/goldmark v1.8.5 h1:r6N5afV5qj/5S4UTch8agZHJ8UxNCMwX7WjkkJam2NA=
|
||||||
|
|||||||
+16
-1
@@ -69,6 +69,21 @@ func (p *pdfImporter) appearanceAnnotation(ctx context.Context, page *pdfgo.Page
|
|||||||
stamp.clipTexts = make(map[*pdfgo.TextClip]TextObject)
|
stamp.clipTexts = make(map[*pdfgo.TextClip]TextObject)
|
||||||
stamp.pageWidth, stamp.pageHeight = box.W, box.H
|
stamp.pageWidth, stamp.pageHeight = box.W, box.H
|
||||||
nodes, err := p.collectCompositeNodes(func(visitor pdfgo.Visitor) error {
|
nodes, err := p.collectCompositeNodes(func(visitor pdfgo.Visitor) error {
|
||||||
|
if annotation.Subtype == "Widget" {
|
||||||
|
visitor.MarkedContent = func(mark pdfgo.MarkedContentMark) error {
|
||||||
|
if mark.Tag == "Tx" && len(mark.Properties) == 0 {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
if mark.Operator == "EMC" {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
if p.warning == nil {
|
||||||
|
return &pdfgo.UnsupportedError{Feature: "widget marked content " + string(mark.Tag)}
|
||||||
|
}
|
||||||
|
p.warning(pdfgo.Diagnostic{Message: "PDF widget marked content " + string(mark.Tag) + " not preserved"})
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
return p.reader.WalkAnnotationAppearance(ctx, page, annotation, visitor)
|
return p.reader.WalkAnnotationAppearance(ctx, page, annotation, visitor)
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -238,7 +253,7 @@ func (p *pdfImporter) formWidget(ctx context.Context, page *pdfgo.Page, annotati
|
|||||||
p.report.Warnings = append(p.report.Warnings, pdfgo.Diagnostic{Page: p.page + 1, Message: "hidden PDF form field not transferred"})
|
p.report.Warnings = append(p.report.Warnings, pdfgo.Diagnostic{Page: p.page + 1, Message: "hidden PDF form field not transferred"})
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
if flags&(8|16) != 0 || annotation.Dictionary["OC"] != nil {
|
if annotation.Dictionary["OC"] != nil {
|
||||||
return &pdfgo.UnsupportedError{Feature: "widget viewing behavior"}
|
return &pdfgo.UnsupportedError{Feature: "widget viewing behavior"}
|
||||||
}
|
}
|
||||||
if err := p.appearanceAnnotation(ctx, page, annotation); err != nil {
|
if err := p.appearanceAnnotation(ctx, page, annotation); err != nil {
|
||||||
|
|||||||
Reference in new issue
Block a user