Hallo!
Ich habe ne kleine Extension geschrieben und wandle hochgeladene Bilder um (ich lass sie klein rechnen). Dazu folgenden Ausschnitt meiner Klasse:
function smallImage($bildname,$params,$alt,$size,$height=0) {
if (file_exists('uploads/tx_icshop/'.$bildname)) {
$img["file"] = 'uploads/tx_icshop/'.$bildname;
$img['file.']["width"] = $size;
if ($height != 0) $img['file.']["height"] = $height;
$img["params"] = 'class="'.$this->prefixId.'_image" '.$params;
$img['altText'] = $alt;
$img['titleText'] = $alt;
$out = $this->cObj->IMAGE($img);
} else {
$out = " ";
}
return $out;
}
Dazu verwende ich das cObj IMAGE. So weit so gut. Doch leider werden die Orignal GIF-Dateien mit 256 Farben auf 64 Farben reduziert. Das sieht natürlich bescheiden aus.
Ich verwende dabei Transparente GIFs und ImageMagick 6.x, welches bei mir bis jetzt sehr gut funktioniert hat.
Meine Versuche mit
$img['params']["fx"] = '-colors 256'
oder
$img['params']["fx"] = '"-colors 256"'
oder
$img["params"] = 'class="'.$this->prefixId.'_image" '.$params.' -colors 256';
schlugen fehl, obwohl solche Angaben laut TSREF erlaubt sind.
Wie kann ich nun angeben, dass die Bilder weiterhin ihren Farbraum behalten?
Grüße
McGregor
P.S. Hier noch der Link zu TSREF
https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/Functions/Imgresource.html