图片压缩助手使用说明 助手工具配置image_optimizer.conf[OPTIMIZER_CONF] # ###### 通用配置 ###### # 压缩后的图片的存储路径 默认为当前目录下的 compressedImages目录 # 注意如果指定了输出目录会在该目录下按文件所在路径创建对应层级的目录结构比如 output_dir设置为D:\testdir # 检索到的文件在E:\somedir\subdir\target\file.png那么压缩后的file.png位于 D:\testdir\somedir\subdir\target目录下 # 注意指定的输出目录不能是输入目录的子路径否则会造成死循环(虽然代码已做判断)因为会在子目录下新建目录导致遍历输入目录时会无限遍历 output_dir # 合法文件扩展名如果有多个英文逗号分隔 # 目前仅支持 .jpg, .jpeg, .png valid_extensions .jpg, .jpeg, .png # 最大线程数默认: 本机cpu核数 workers # 是否遍历输入目录的子目录 # 1 -- 是 0 -- 否 默认为 0 traverse_sub_dir 1 # 是否支持正则识别待排除路径 # 1 -- 是 0 -- 否 默认为0 check_path_by_regex 1 # 输入文件名称是和源文件名保持一致 # 1 -- 是 0 -- 否 默认为 0 默认输出文件格式源文件名(不带后缀)-compressed # 注意仅 override_src_image 不等于 1 该配置才有效 keep_name_unchanged 0 # 是否覆盖源图片 # 1 -- 覆盖 0 -- 不覆盖默认为 0 # 注意该配置项为1时指定输出目录路径不起作用即 output_dir 配置项不起作用 override_src_image 0 # 覆盖前是否备份源图片 # 1 -- 备份 0 -- 不备份默认为 0 在文件所在目录下创建bak目录然后拷贝源文件到该目录下 # 仅 override_src_image 1 该配置才有效 backup_src_image 1 # 备份目录名称 backup_dir_name bak # 过滤器--按大小过滤--文件大小大于等于该配置项的文件才压缩 # 单位KB要求整数默认为0 filter_file_size 512 ###### 工具差异化配置 ###### # png压缩工具 # 可选值 pngquant 默认 pngquant(有损压缩) png_comp_tool pngquant # pngquant压缩命令模板 # 参数说明 # -f | --force 强制覆盖已有的输出文件 # --skip-if-larger 仅在转换后的文件小于原始文件时保存 # --output output_image_path 指定输出图片路径 # --quality min-max 不保存低于最小值高于最大值0-100时使用更少的颜色 # --speed N 表示速度与质量的权衡。1代表慢速4代表默认速度11代表快速且粗糙 # --nofs 禁用Floyd-Steinberg抖动算法 # --posterize N 输出低精度颜色例如用于ARGB4444输出 # --strip 移除可选元数据在Mac上默认为开启 # 注意{}为英文输入 pngquant_compress_cmd_template {bin_tool} --force --skip-if-larger --speed 4 --output {output_image_path} {input_image_path} # jpg, jpeg 压缩工具 # 目前仅支持 cv2 jpg_comp_tool cv2 # jpgjpeg cv2压缩配置 # 说明 # -- 控制整体质量数值越低压缩率越高文件越小但画质损失越明显。 要求整数(0-100)默认值 95。适用所有 JPEG 压缩场景核心参数。 cv2_jpeg_quality 42 # 是否优化霍夫曼编码表0关闭1开启 # 开启后可进一步减小文件体积约 5-10%但编码时间略增加。要求整数0/1默认值 1。适用需要更小文件体积时推荐开启 cv2_jpeg_optimize 1 # 是否生成渐进式 JPEG0基线 JPEG1渐进式。渐进式 JPEG 加载时先显示模糊轮廓再逐步清晰适合网页。 要求整数0/1默认值 0。适用网页/移动端图片需浏览器支持渐进式解码。 cv2_jpeg_progressive # 单独控制亮度Luma通道的质量。亮度对视觉影响更大可优先降低此值以压缩。要求整数0-100无默认值。适用灰度图或颜色简单的图像如监控截图。 # 注意配置该参数该参数值越大图片体积越大 cv2_jpeg_luma_quality #单独控制色度Chroma通道的质量。色度对视觉敏感度较低可大幅降低此值。要求整数0-100无默认值。适用颜色变化少的图像如风景照、卡通图。 cv2_jpeg_chroma_quality 输入图片路径配置待压缩图片所在目录路径conf/image_path_included.conf# 需要检索的路径每行代表一个路径 # # 代表注释空行或者注释会自动过滤 # 示例D:\test、/opt/data/images待排除图片路径配置不需要压缩的图片所在目录路径、不需要压缩的图片文件路径conf/image_path_excluded.conf# 需要排除的路径每行代表一个路径 # # 代表注释空行或者注释会自动过滤 # 注意配置支持目录、文件路径 # 示例bak$ -- 以bak结尾的路径都排除日志配置一般不用改conf/log.conf[LOGGING] log_file max_bytes_each 512000 backup_count 10 fmt |(asctime)s |(filename)s[line: |(lineno)d] |(levelname)s: |(message)s logger_name test_logger log_level_in_console 10 log_level_in_logfile 20 console_log_on 1 logfile_log_on 1 [README] log_level 日志级别CRITICAL 50 ERROR 40 WARNING 30 INFO 20 DEBUG 10 NOTSET 0 log_on console_log_on 1 开启控制台日志0则关闭logfile_log_on 1 开启文件日志 0则关闭 log_file log.txt所在的目录必须已存在运行windowscd imageOptimizer imageOptimizer.exelinux# chmod x bin_tools/pngquant # ./imageOptimizer命令行参数工具支持部分命令行参数例如以下./imageOptimizer --input_dir/root/testdir --output_dir/root/mydir参数介绍--input_dirimage_dir_paths-- 待压缩图片所在目录路径如果有多个采用英文逗号分隔默认:inputImages--output_dirimage_dir_paths-- 压缩后图片存储目录路径默认:compressedImages--workersNum-- 最大线程数默认: 本机cpu核数--png_comp_tooltool-- png图片压缩工具, 默认pngquant--jpg_comp_tooltool-- jpg/jpeg图片压缩工具, 默认cv2--traverse_sub_dir-- 是否遍历输入目录的子目录, 添加该参数则表示遍历子目录--check_path_by_regex-- 是否支持正则识别待排除路径。添加该参数则表示支持正则识别。--override_src_image-- 是否覆盖源图片添加该参数则表示覆盖。--backup_src_image-- 覆盖前是否备份源图片, 添加该参数则表示备份。注意如果配置了命令行参数则以命令行参数为准否则读取助手工具配置文件中对应参数配置作者授客