Hallo,
das Problem, welches hier beschrieben wird.
https://github.com/contao/core/issues/3806
tritt auch bei valumFileUploader auf - zumindest bei manchen Dateien.
Es betrifft schwarze Ränder beim resize von Bildern.
In der Pre-Version von contao 2.11.3 wurde das Problem mittlerweile behoben, allerdings selbst wenn man diesen Fix manuell in 2.11.2 einspielt, behebt dies nicht das Problem bei valumFileUploader.
Vermutlich, weil valumFileUploader einen eigenen Resize-Code bereit stellt.
Ich habe mir das einmal angeschaut und es sieht so aus als würde folgende Anpassung in ValumsFile.php (angelehnt an die Anpassung von Contao Core) das korrekte Resultat liefern:
Code:
public function resize($newFile, $arrResizeResolution = FALSE)
{
$blnExceeds = false;
$blnResized = false;
// Resize image if necessary
if (($arrImageSize = @getimagesize(TL_ROOT . '/' . $newFile)) !== false)
{
// Image is too big
if ($arrImageSize[0] > $GLOBALS['TL_CONFIG']['gdMaxImgWidth'] || $arrImageSize[1] > $GLOBALS['TL_CONFIG']['gdMaxImgHeight'])
{
$blnExceeds = true;
}
else
{
if (is_array($arrResizeResolution))
{
$intImageWidth = $arrResizeResolution[0];
$intImageHeigh = $arrResizeResolution[1];
}
else
{
$intImageWidth = $GLOBALS['TL_CONFIG']['imageWidth'];
$intImageHeigh = $GLOBALS['TL_CONFIG']['imageHeight'];
}
$blnResizeNeeded = false;
// The image exceeds the maximum image width
if ($arrImageSize[0] > $intImageWidth)
{
$blnResizeNeeded = true;
$intWidth = $intImageWidth;
$intHeight = ceil($intImageWidth * $arrImageSize[1] / $arrImageSize[0]);
$arrImageSize = array($intWidth, $intHeight);
}
// The image exceeds the maximum image height
if ($arrImageSize[1] > $intImageHeigh)
{
$blnResizeNeeded = true;
$intWidth = ceil($intImageHeigh * $arrImageSize[0] / $arrImageSize[1]);
$intHeight = $intImageHeigh;
$arrImageSize = array($intWidth, $intHeight);
}
if ($blnResizeNeeded)
{
$this->resizeImage($newFile, $arrImageSize[0], $arrImageSize[1]);
$this->size = filesize(TL_ROOT . '/' . $newFile);
// Recalculate image size
$arrImageSize = @getimagesize(TL_ROOT . '/' . $newFile);
$blnResized = true;
}
}
}
return array(
'blnExceeds' => $blnExceeds,
'blnResized' => $blnResized
);
}
P.S.: Gibt es für valumFileUploader eigentlich auch die Möglichkeit für eine Progressbar (bzw. kommt hier in Zukunft irgendwann etwas)?
Es ist nicht so tragisch, da ich mit dem Status in Form Prozent Werten eh ganz glücklich bin, aber...
EDIT:
Hatte vergessen, noch Teile des alten Codes von unten rauszulöschen, welcher nicht notwendig ist.
Lesezeichen