Hoi,ik ben een countertje aan het maken.. met php..
de waarde van de counter haal ik uit een db..
maar wat nu niet echt lukt is de grote van de counter
de counter wordt gegenereerd uit een aantal variabelen met
Imagejpeg($im,'',100);
ik heb als counter ongeveer deze vorm
nu is het geval dat de waarde 50 in width en heigth variabel is...
de $content kan ik mooi centreren dat lukt...
maar het vlak ($vlakcolor) lukt niet
ik moet dus een formule hebben die de waarde van $bgPosX en $bgPosY nauwkeurig bepalen ook bij een size != 50
Wie kan mij helpen met zo'n formule..
ik gebruik nu deze waardes om de posities en grotes te bepalen
de waarde van de counter haal ik uit een db..
maar wat nu niet echt lukt is de grote van de counter
de counter wordt gegenereerd uit een aantal variabelen met
Imagejpeg($im,'',100);
ik heb als counter ongeveer deze vorm
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| $c = $content
$b = $backgroundcolor
$v = $vlakcolor
50
<--------------->
12.5 25 12.5
<---><-----><--->
0 1 2 3 4 5 6 7
0 ________________
1 |$b |
2 | ______ |
3 | |$v | | 50
4 | | $c | |
5 | |______| |
6 | |
7 |________________| |
nu is het geval dat de waarde 50 in width en heigth variabel is...
de $content kan ik mooi centreren dat lukt...
maar het vlak ($vlakcolor) lukt niet
code:
1
2
| // ImageFilledRectangle ($plaatje, vanlinks, vanboven, breedte, hoogte, kleur)
ImageFilledRectangle($im, $bgPosX, $bgPosY, $bgWidth, $bgHeight, $vc); |
ik moet dus een formule hebben die de waarde van $bgPosX en $bgPosY nauwkeurig bepalen ook bij een size != 50
Wie kan mij helpen met zo'n formule..
ik gebruik nu deze waardes om de posities en grotes te bepalen
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| // Number of characters of $content
//$content = number_format($content, 0, '', '.');
$noOfChars = strlen($content);
$charWidth = ImageFontWidth(5);
$charHeight = ImageFontHeight(5);
// Give the size of the text
$strWidth = $charWidth * $noOfChars;
$strHeight = $charHeight + 10;
// Give the position of the string to occur ($content)
$strPosX = ($imgWidth / 2) - ($strWidth / 2);
$strPosY = ($imgHeight / 2) - ($strHeight / 2);
// Position of the content background square ($vlakcolor)
$bgPosX = ($imgWidth / 4);
//$strPosX * 0.8;
$bgPosY = ($imgHeight / 4);
//$strPosY * 0.8;
$bgWidth = $strWidth * 4;
//($imgWidth / 1.2);
$bgHeight = $strHeight * 1.1; |