小编Ola*_*the的帖子

使用 Script-Fu,加载和保存 PNG 会丢失 alpha

我正在尝试在 GIMP 中编写一个脚本,该脚本将加载一个 PNG 文件并以最大压缩率再次保存它(我还计划添加其他处理步骤)。但是,以下脚本似乎破坏了 alpha 信息:

(define (process-png pattern)
  (let* (
      (filelist (cadr (file-glob pattern 1)))
    )
    (while (not (null? filelist))
      (begin
        (catch ()
          (let* (
              (filename (car filelist))
              (image (car (file-png-load RUN-NONINTERACTIVE filename filename)))
            )
            (begin
              (file-png-save2 RUN-NONINTERACTIVE
                  image (car (gimp-image-get-active-drawable image))
                  filename filename
                  0 9 0 0 0 0 0 0 0)
              (gimp-image-delete image)
            )
          )
        )
        (set! filelist (cdr filelist))
      )
    )
  )
)
Run Code Online (Sandbox Code Playgroud)

例如,JQuery 图标中的半透明像素似乎都变得完全透明,使所有内容都出现了别名。

如何解决这个问题?

script-fu

5
推荐指数
1
解决办法
1072
查看次数

标签 统计

script-fu ×1