Closed mquickenden closed 7 years ago
actually works very well tuned color sequence
Function grc { param( [int]$Min =0, [int]$max =255 ) Write-Output ([string](Get-Random -Maximum $max -Minimum $Min) + ',' ) }
Function GenerateRandomColorScheme { param ( [Parameter(Mandatory=$false)] [int] $NumberOfSchemes =1 )
$Hover = '0.3)'
$color = '0.6)'
$border = '1)'
$background = '0.7)'
$ColorSwing = 10
$ColorReference = Get-Random -Minimum 1 -Maximum 3
$BaseColor = (Get-Random -Maximum (200 - $ColorSwing) -Minimum (50 + $ColorSwing))
$BCMax = $BaseColor + $ColorSwing
$BCMin = $BaseColor - $ColorSwing
$ColorScheme = @()
$i = 0
while ($i -ne $NumberOfSchemes ) {
switch ($ColorReference)
{
1 {$base = 'rgba('+ (grc -min $BCMin -max $BCMax) + (grc) + (grc) }
2 {$base = 'rgba('+ (grc) + (grc -min $BCMin -max $BCMax) + (grc) }
3 {$base = 'rgba('+ (grc) + (grc) + (grc -min $BCMin -max $BCMax) }
}
$Scheme = '' | select Colour,Background, Hover ,Border
$Scheme.Background = $base + $background
$Scheme.Border = $base + $border
$Scheme.Colour = $base + $color
$Scheme.Hover = $base + $Hover
$ColorScheme += $Scheme
$i++
}
Write-Output $ColorScheme
}
function grc {Write-Output ([string](Get-Random -Maximum 255 -Minimum 0) + ',' )} Function gro {write-output ('0.' + ([string](Get-Random -Maximum 10 -Minimum 1)))} 'rgba(' + (grc) + (grc) + (grc) + (gro) + ')'
something like this, with opacity fixed for background, border, color and hover :)