]> source.dussan.org Git - nextcloud-server.git/commitdiff
Enable theming background transparency 23680/head
authorJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Sun, 25 Oct 2020 18:15:52 +0000 (19:15 +0100)
committerJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Sun, 25 Oct 2020 18:15:52 +0000 (19:15 +0100)
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
apps/theming/lib/ImageManager.php

index 2b58fa499f43d6ee2cce86419a669da44fa67ac2..a50522cd89549f9a91c81801cb3ac9e76ab93fcc 100644 (file)
@@ -228,13 +228,17 @@ class ImageManager {
                        // either to big or are not progressive rendering.
                        $newImage = @imagecreatefromstring(file_get_contents($tmpFile));
 
+                       // Preserve transparency
+                       imagesavealpha($newImage, true);
+                       imagealphablending($newImage, true);
+
                        $tmpFile = $this->tempManager->getTemporaryFile();
                        $newWidth = (int)(imagesx($newImage) < 4096 ? imagesx($newImage) : 4096);
                        $newHeight = (int)(imagesy($newImage) / (imagesx($newImage) / $newWidth));
                        $outputImage = imagescale($newImage, $newWidth, $newHeight);
 
                        imageinterlace($outputImage, 1);
-                       imagejpeg($outputImage, $tmpFile, 75);
+                       imagepng($outputImage, $tmpFile, 8);
                        imagedestroy($outputImage);
 
                        $target->putContent(file_get_contents($tmpFile));