Scripts

Achtergrond met kleurovergang

Maak een file aan copy/paste en voer je kleuren maar in :) Je kan zelf meerdere kleuren toevoegen als je dat wilt. Ik heb de kleuren rood,blauw,wit,lichtgrijs,donkergrijs,zwart,groen en geel ingesteld. Zelf kan je er natuurlijk nog toevoegen. Het script maakt een afbeelding bg.png aan dus wees zeker dat die afbeelding NIET bestaat, je kan zelf een andere naam kiezen als je dat wil. EDIT: - gebruik van switch ipv oneindig veel if's. - 5px hoog en niet meer $factor px hoog voor plaats te besparen

achtergrond-met-kleurovergang
[code]<?php
//hier komen de variabelen
if( $_SERVER['REQUEST_METHOD'] == 'POST' )
{
//kijk of er op knop gedrukt is om te vermijden dat we lege afbeeldingen maken
$c1=$_POST[color1];
$c2=$_POST[color2];

$f='200'; //verander deze waarde om de breedte en de hoogte van de afbeelding te veranderen.  LET OP: deze waarde mag niet groter dan 255 zijn, omdat je maar 255 lines in één image kan trekken. (indien je dat wil doen werk dan met squares van 2/3pt dik ipv lines)

create_image($c1,$c2, $f);
$post=true;
}

//hier komen de functies

function create_image($c1,$c2, $factor) {
$im = @imagecreate($factor, '5') or die("Afbeelding niet gecreëerd");
//we gaan de kleuren bepalen nu, hierbij maakte ik gebruik van http://web.forret.com/tools/color.asp en van http://nl.wikipedia.org/wiki/Lijst_van_HTML-kleuren

//rood
if ($c1 == 1) {
$n1 = 255;
$n2 = 0;
$n3 = 0;
}
if ($c2 == 1) {
$n4 = 255;
$n5 = 0;
$n6 = 0;
}
//blauw
if ($c1 == 2) {
$n1 = 0;
$n2 = 0;
$n3 = 255;
}
if ($c2 == 2) {
$n4 = 0;
$n5 = 0;
$n6 = 255;
}
//wit
if ($c1 == 3) {
$n1 = 255;
$n2 = 255;
$n3 = 255;
}
if ($c2 == 3) {
$n4 = 255;
$n5 = 255;
$n6 = 255;
}
//lichtgrijs
if ($c1 == 4) {
$n1 = 211;
$n2 = 211;
$n3 = 211;
}
if ($c2 == 4) {
$n4 = 211;
$n5 = 211;
$n6 = 211;
}
//donkergrijs
if ($c1 == 5) {
$n1 = 105;
$n2 = 105;
$n3 = 105;
}
if ($c2 == 5) {
$n4 = 105;
$n5 = 105;
$n6 = 105;
}
//zwart
if ($c1 == 6) {
$n1 = 0;
$n2 = 0;
$n3 = 0;
}
if ($c2 == 6) {
$n4 = 0;
$n5 = 0;
$n6 = 0;
}
//groen
if ($c1 == 7) {
$n1 = 50;
$n2 = 205;
$n3 = 50;
}
if ($c2 == 7) {
$n4 = 50;
$n5 = 205;
$n6 = 50;
}
//geel
if ($c1 == 8) {
$n1 = 255;
$n2 = 215;
$n3 = 50;
}
if ($c2 == 8) {
$n4 = 255;
$n5 = 215;
$n6 = 50;
}
//nu maken we een while-loop om elke rij te bepalen
$i=0;

$v1=$n4-$n1;
$v2=$n5-$n2;
$v3=$n6-$n3;

//hier bepalen we hoeveel er tussen de kleuren zit ( RGB appart ), dit verdelen we dan in $factor gelijke deeltjes die er dan geleidelijk aan bijkomen zodat je een kleurovergang verkrijgt.

$v1=$v1 / $factor;
$v2=$v2 / $factor;
$v3=$v3 / $factor;


while($i < $factor) { 
//de breedte van de afbeelding is $factor
$color = imagecolorallocate($im, $n1 + round($i*$v1), $n2 + round($i*$v2), $n3 + round($i*$v3));
imageline ($im,  $i,  0, $i, $factor, $color);
$i++;
}
//image even inpakken
 imagepng($im,"bg.png");
 imagedestroy($im);
}
?>
<html>
<head>
<title>Achtergrondscript</title>
</head>
<div style='display:none'>
<!-- even reclame wegwerken :p -->
<body>
</div>
<form action='?' method='post'>
Kies je kleuren:<br />
Kleur 1:<select name='color1' style='width:200'>
<option value='1' style='background-color:red; color:red'>Rood</option>
<option value='2' style='background-color:blue; color:blue'>Blauw</option>
<option value='3' style='background-color:white; color:white' selected />Wit</option>
<option value='4' style='background-color:D3D3D3; color:D3D3D3' />Lichtgrijs</option>
<option value='5' style='background-color:696969; color:696969' />Donkergrijs</option>
<option value='6' style='background-color:black; color:black' />Zwart</option>
<option value='7' style='background-color:limegreen; color:limegreen' />Groen</option>
<option value='8' style='background-color:gold; color:gold' />Geel</option>
</select><br />
Kleur 2:<select name='color2' style='width:200'>
<option value='1' style='background-color:red; color:red'>Rood</option>
<option value='2' style='background-color:blue; color:blue'>Blauw</option>
<option value='3' style='background-color:white; color:white' selected />Wit</option>
<option value='4' style='background-color:D3D3D3; color:D3D3D3' />Lichtgrijs</option>
<option value='5' style='background-color:696969; color:696969' />Donkergrijs</option>
<option value='6' style='background-color:black; color:black' />Zwart</option>
<option value='7' style='background-color:limegreen; color:limegreen' />Groen</option>
<option value='8' style='background-color:gold; color:gold' />Geel</option>
</select><br />
<input type='submit' value='genereer' />
<?php
if ($post==true) {
echo '<br /><br />
<img src="bg.png" />';
}
include('counter.php');
?>
</form>
</body>
</html>[/code]

Reacties

0
Nog geen reacties.