温馨提示×

CentOS GIMP文件格式怎么转换

小樊
42
2025-12-25 05:18:17
栏目: 智能运维

CentOS 下使用 GIMP 进行文件格式转换

一 安装与准备

  • CentOS 上安装 GIMP(含命令行支持)与常用插件:
    • 安装 GIMP 与脚本支持:
      • 对于 CentOS 7sudo yum install gimp gimp-help gimp-data-extras
      • 对于 CentOS 8/Streamsudo dnf install gimp gimp-help gimp-data-extras
    • 若需 CMYK 分离导出,安装 separate+ 插件(GIMP 2.x 常见做法是通过软件源中的 gimp-plugin-registry 提供相关插件;安装后可在 GIMP 的 Image → Separate 中使用)。
    • 如需在脚本中处理 JPEG/PNG 等,建议同时安装 ImageMagicksudo dnf install ImageMagick),便于前置检查或与其他工具配合。

二 图形界面转换步骤

  • 打开 GIMP,导入源文件(如 .jpg/.png/.bmp/.tif 等)。
  • 可选处理:调整尺寸、裁剪、色彩模式(如 RGB/Indexed/灰度)、透明背景等。
  • 导出为所需格式:
    • 菜单 文件 → 导出为(推荐,保留原文件)。
    • 选择目标格式(如 PNG/JPEG/TIFF/GIF/BMP 等),设置质量/压缩参数(JPEG 质量、PNG 压缩级别、是否保留透明等),点击 导出 完成。
  • 说明:GIMP 支持多数常见位图格式的导入与导出;若需 CMYK 工作流,请先安装 separate+ 插件,使用 Image → Separate 进行分离与导出。

三 命令行非交互转换

  • 使用 GIMP 的 Script-Fu 在终端批量转换(无界面,适合自动化)。
  • 示例 1:单文件 JPG → PNG
    gimp -i -b '(let* ((image (car (gimp-file-load RUN-NONINTERACTIVE "input.jpg" "input.jpg")))
                    (drawable (car (gimp-image-get-active-layer image))))
                   (gimp-file-save RUN-NONINTERACTIVE image drawable "output.png" "output.png")
                   (gimp-image-delete image)
                   (gimp-quit 0))' -b '(gimp-quit 0)'
    
  • 示例 2:当前目录批量 JPG → PNG
    gimp -i -b '(let* ((files (cadr (file-glob "*.jpg" 1))))
                   (while (not (null? files))
                     (let* ((f (car files))
                            (img (car (gimp-file-load RUN-NONINTERACTIVE f f)))
                            (lay (car (gimp-image-get-active-layer img))))
                       (gimp-file-save RUN-NONINTERACTIVE img lay
                                        (string-append (substring f 0 (- (string-length f) 4)) ".png")
                                        (string-append (substring f 0 (- (string-length f) 4)) ".png"))
                       (gimp-image-delete img))
                     (set! files (cdr files))))
                   (gimp-quit 0)' -b '(gimp-quit 0)'
    
  • 提示:
    • 上述脚本使用 GIMP 2.x 的 Script-Fu 接口;在 GIMP 3.x 中脚本 API 有变化,需改用 Python-Fu 或相应新版接口。
    • 若需更轻量的批量转换,可考虑使用 ImageMagick(见下一节)。

四 命令行批量转换的替代方案

  • 使用 ImageMagick(通常已预装或可快速安装),适合大批量、无界面、参数化转换:
    • 单文件转换:
      convert input.jpg output.png
      
    • 批量转换(当前目录 .jpg → .png):
      for f in *.jpg; do convert "$f" "${f%.jpg}.png"; done
      
    • 就地修改尺寸(示例:统一到 800×600,不保留原图):
      mogrify -resize 800x600 *.jpg
      
  • 说明:ImageMagick 在 Linux 上广泛用于格式转换、缩放、水印等批处理任务,语法简洁、效率高。

0