mirror of
https://github.com/xiaoqidun/ofdgo.git
synced 2026-10-29 08:46:55 +08:00
1 parent
012569dbc0
commit
1945ea355a
7 files changed
+142
-22
No files matched your search
+10
-6
@@ -93,7 +93,9 @@ func pdfOpaqueVisitor(visitor pdfgo.Visitor) pdfgo.Visitor {
|
||||
return nil
|
||||
}
|
||||
v := pdfgo.Visitor{
|
||||
Path: func(m pdfgo.PathMark) error { return check(m.Style, m.Fill, m.Stroke) },
|
||||
Reference: visitor.Reference,
|
||||
OptionalContent: visitor.OptionalContent,
|
||||
Path: func(m pdfgo.PathMark) error { return check(m.Style, m.Fill, m.Stroke) },
|
||||
Text: func(m pdfgo.TextMark) error {
|
||||
return check(m.Style, m.Mode%4 == 0 || m.Mode%4 == 2, m.Mode%4 == 1 || m.Mode%4 == 2)
|
||||
},
|
||||
@@ -134,10 +136,12 @@ func (p *pdfImporter) groupPaths(mark pdfgo.GroupMark, walk func(pdfgo.Visitor)
|
||||
opaque := true
|
||||
scale := math.Hypot(p.matrix[0], p.matrix[1])
|
||||
collect := pdfgo.Visitor{
|
||||
Warning: visitor.Warning,
|
||||
Text: func(pdfgo.TextMark) error { return errPDFGroupRaster },
|
||||
Image: func(pdfgo.ImageMark) error { return errPDFGroupRaster },
|
||||
Group: func(pdfgo.GroupMark, func(pdfgo.Visitor) error) error { return errPDFGroupRaster },
|
||||
Reference: visitor.Reference,
|
||||
OptionalContent: visitor.OptionalContent,
|
||||
Warning: visitor.Warning,
|
||||
Text: func(pdfgo.TextMark) error { return errPDFGroupRaster },
|
||||
Image: func(pdfgo.ImageMark) error { return errPDFGroupRaster },
|
||||
Group: func(pdfgo.GroupMark, func(pdfgo.Visitor) error) error { return errPDFGroupRaster },
|
||||
}
|
||||
collect.Path = func(path pdfgo.PathMark) error {
|
||||
if path.Style.SoftMask != nil || path.Style.BlendMode != "" && path.Style.BlendMode != "Normal" && path.Style.BlendMode != "Compatible" {
|
||||
@@ -297,7 +301,7 @@ func (p *pdfImporter) rasterGroup(mark pdfgo.GroupMark, walk func(pdfgo.Visitor)
|
||||
// visitor 绑定当前导入器的图元与透明组访问函数
|
||||
// 返回: pdfgo.Visitor 页面访问器
|
||||
func (p *pdfImporter) visitor() pdfgo.Visitor {
|
||||
v := pdfgo.Visitor{Path: p.path, Text: p.text, Image: p.image, Warning: p.warning}
|
||||
v := pdfgo.Visitor{Path: p.path, Text: p.text, Image: p.image, Warning: p.warning, Reference: p.referencePage}
|
||||
v.Group = func(mark pdfgo.GroupMark, walk func(pdfgo.Visitor) error) error { return p.group(mark, walk, v) }
|
||||
return v
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user