>>Bram Van Dam's
note below is missing "()" from the ob_end_clean call:
ob_end_clean; // stop this output buffer
should read
ob_end_clean(); // stop this output buffer
You can then use this for adding content-length headers (for example flash requires a content length in advance to create loaders)
e.g.
...
ob_start(); // start a new output buffer
imagejpeg( $newimage, "", 90 );
$ImageData = ob_get_contents();
$ImageDataLength = ob_get_length();
ob_end_clean(); // stop this output buffer
header("Content-type: image/jpeg") ;
header("Content-Length: ".$ImageDataLength);
echo $ImageData;
...