AutoHotkey|脚本:用Irfanview把24位真彩图片优化到实际色深

; 考虑到有些抓屏软件png只能24BP真彩色,而实际颜色不过几百或十几,可以减小色深来明显减小文件体积。可以通过本宏和Irfanview来实现。

;================================================

; 在IrfanView的窗口模式下(非全屏),按alt+d,脚本会:

; 先确定颜色数,热键 alt+i+i

; 再减色:热键 alt+i+d后,根据上一步颜色数确定色深

; 保存,确认

;================================================

; 请先检查代码!请勿在重要场合测试!测试前请备份原文件(本脚本不提醒直接覆盖原文件)

!d::

SetTitleMatchMode, 2

; 1 准备

WinActivate, Irfanview

; 2 查色

send, {alt}i

sleep, 20

send, i

winwait, IrfanView - Image properties

controlgettext, OutputVar, Edit12, IrfanView - Image properties

send, {enter}

; 3 减色

send, {alt}i

sleep, 20

send, d

winwait, Decrease

if OutputVar<3

; GuiControl, , Button3, 1;; 无效,只好用下述办法

send, {alt down}2{alt up}{enter}

else if OutputVar<17

send, {alt down}1{alt up}{enter}

else if OutputVar<258

send, {alt down}5{alt up}{enter}

else

{

send, {esc}

MsgBox,,, "颜色数为%OutputVar%,保持真彩,未做减色", 1.5

return

}

; 4 保存

winwait, IrfanView

send, s

winwait, Save

send, {enter}

winwait, IrfanView

send, y

MsgBox,,, "恭喜!已按%OutputVar%色优化并保存", 1.5

return

>