feat(图像签章): 完善图像取消与签章缓存
build.yaml / build (push) Successful in 48s

This commit is contained in:
xiaoqidun committed 2026-10-12 19:18:25 +08:00
1 parent 3d37b0d510
commit 5d1fd593cd
4 files changed
+91 -18

No files matched your search

+11 -3
View File
@@ -16,6 +16,7 @@ package ofdgo
import (
"bytes"
"context"
"fmt"
"image"
"math"
@@ -158,20 +159,27 @@ func (c *semanticCompiler) drawStampContent(stamp Stamp) error {
if c.textOnly || c.measure || len(stamp.Data) == 0 {
return nil
}
ctx := c.renderer.pageContext
if ctx == nil {
ctx = context.Background()
}
if err := ctx.Err(); err != nil {
return err
}
if stamp.Type == "ofd" {
reader, err := NewReader(bytes.NewReader(stamp.Data), int64(len(stamp.Data)))
if err != nil {
return err
}
defer reader.Close()
document, err := reader.Doc()
document, err := reader.DocContext(ctx)
if err != nil {
return err
}
renderer := c.renderer.childRenderer(reader)
renderer.TransparentBackground = true
for _, reference := range document.Pages.Page {
content, err := reader.PageContent(reference)
content, err := reader.PageContentContext(ctx, reference)
if err != nil {
return err
}
@@ -218,7 +226,7 @@ func (c *semanticCompiler) drawStampContent(stamp Stamp) error {
}
return nil
}
img, _, err := decodeImageData(stamp.Data)
img, _, err := decodeImageDataContext(ctx, stamp.Data)
if err != nil {
return err
}