feat(压缩能力): 接入分级压缩优化窄屏布局
build.yaml / build (push) Successful in 51s

This commit is contained in:
xiaoqidun committed 2026-09-29 21:28:44 +08:00
1 parent f39675233c
commit 773b4195f5
10 files changed
+217 -29

No files matched your search

+11 -2
View File
@@ -241,12 +241,21 @@ func signatureWritePackage(parts map[string][]byte, options SignatureWriteOption
return nil, err
}
var masks map[string]bool
geometry := false
if options.Compression.Mode == CompressionLossy {
masks, err = r.compressionMaskFiles(context.Background(), images)
masks, geometry, err = r.compressionImageSafety(context.Background(), images)
if err != nil {
return nil, err
}
}
dpi := 0
if geometry {
dpi = options.Compression.ImageDPI()
}
sizes, err := r.compressionImageSizes(context.Background(), images, dpi)
if err != nil {
return nil, err
}
seen := make(map[string]bool)
for i, img := range images {
if err := options.progress.report("compress", i, len(images)); err != nil {
@@ -261,7 +270,7 @@ func signatureWritePackage(parts map[string][]byte, options SignatureWriteOption
if masks[strings.ToLower(cleanPackagePath(img.Location))] {
compression.Mode = CompressionLossless
}
if optimized, err := pdfgo.OptimizeImage(context.Background(), data, compression); err == nil {
if optimized, err := pdfgo.OptimizeImageSize(context.Background(), data, compression, sizes[strings.ToLower(cleanPackagePath(img.Location))]); err == nil {
parts[img.Location] = optimized
}
}