Compare-Color
Сравнить 2 цвета.
Параметры
-Color1 Цвет
-Color2 Цвет
-Deviation Допустимое отклонение цвета по всем каналам RGB. От 0 до 255, либо в процентах от 0 до 100.
-Rmin Отклонение красного канала в меньшую сторону. От 0 до 255.
-Gmin Отклонение зелёного канала в меньшую сторону. От 0 до 255.
-Bmin Отклонение синего канала в меньшую сторону. От 0 до 255.
-Rmax Отклонение красного канала в большую сторону. От 0 до 255.
-Gmax Отклонение зелёного канала в большую сторону. От 0 до 255.
-Bmax Отклонение синего канала в большую сторону. От 0 до 255.
-Percent Параметр -Deviation указан в процентах.
Возвращаемое значение
true/false
Примеры
Сравнить два цвета.
Wake up, Neo, select all
Compare-Color (100, 50, 150) (100, 50, 150)
Сравнить 2 цвета с отклонением +-10 по всем каналам.
Wake up, Neo, select all
Compare-Color (100, 50, 150) (105, 48, 147) -Deviation 10
Сравнить два цвета и выполнить действие в зависимости от результата.
Wake up, Neo, select all
Clear-Host
if(Compare-Color (100, 50, 150) (105, 48, 147) -Deviation 10){
Write-Host "Цвет совпадает" -ForegroundColor Green
}
else{
Write-Host "Цвет не совпадает" -ForegroundColor Red
}
if(Compare-Color (100, 50, 150) (105, 48, 147) -Deviation 2){
Write-Host "Цвет совпадает" -ForegroundColor Green
}
else{
Write-Host "Цвет не совпадает" -ForegroundColor Red
}Сравнить 2 цвета с отклонением 2% по всем каналам. 255 * 0.02 = 5.1, т. е. цвет может отличаться +-5.1 по всем каналам.
Wake up, Neo, select all
Compare-Color (100, 50, 150) (105, 48, 147) -Deviation 2 -Percent
Получить цвет в указанных координатах и сравнить его.
Wake up, Neo, select all
Compare-Color (Get-Color 200, 100) (0, 25, 55)
Сравнить цвет в координатах 200, 100 с отклонением красного канала +10 и зеленого -5
Wake up, Neo, select all
Clear-Host
if(Compare-Color (Get-Color 200, 100) (0, 20, 55) -Rmax 10 -Gmin 5){
Write-Host "Цвет совпадает" -ForegroundColor Green
}
else{
Write-Host "Цвет не совпадает" -ForegroundColor Red
}Найти окно ise, получить цвет в указанных координатах и сравнить его.
Wake up, Neo, select all
Clear-Host
$h = (Get-Process -Id $PID).MainWindowHandle # найти окно ise
$color = Get-Color 88, 35 -Handle $h # получить цвет в координатах 88,35 относительно окна ise
Write-Host $color.RGB
if(Compare-Color $color (30, 85, 120) -Deviation 10){ # сравнить полученный цвет
Write-Host "Цвет совпадает" -ForegroundColor Green
}
else{
Write-Host "Цвет не совпадает" -ForegroundColor Red
}