Scripsit Peter Brodersen:
>> blankt, at jeg ikke har brugt nogle gode PHP-ækvivalenter til
>> python-funktionerne ord() og chr(), som vel nærmest konverterer
>> mellem binært talsystem og decimaltalsystem.
>
> Hvad med PHP-funktionerne ord() og chr() ?
>
http://php.net/ord
>
http://php.net/chr
Avs....
Nå, nu har jeg lavet noget, som ikke uspyr tonsvis af fejlmeddelelser,
men hvor outputfilen kun er mellem 14 og 300 bytes lang, selv om
udgangsfilen er en 47 kB GIF. Det ser ud til, at kun header og palet
slipper over i den ny fil. Er der en oplagt grund til det?
$fi = fopen("in.gif", 'r');
$fo = fopen("out.gif", 'w');
$header = fread($fi, 13);
fwrite($fo, $header);
$l = (1 << (ord($header[10]) & 7) + 1);
for ($i = 0; $i <= $l; $i++) {
$gray = (ord(fread($fi, 1)) + ord(fread($fi, 1)) + ord(fread($fi,
1)))/3;
fwrite($fo, 3*chr($gray));
}
$rest = fread($fi, 99999999999999999999);
fwrite($fo, $rest);
fpassthru($fo);
fclose($fi);
fclose($fo);
--
Med venlig hilsen
Lars Erik Bryld