Annons

Varför omkomprimering av bild som redan har rimlig storlek?

Produkter
(logga in för att koppla)

ztenlund

Aktiv medlem
Det här framstår inte som optimalt... Ska man överdriva bildens storlek maximalt innan man laddar upp den, eller vad? Bilden är 2048 px på längsta sidan och den vänstra är den som laddades upp och den högra vad FS faktiskt har lagrat. Det var ju knappast så att "originalet" var överdrivet stor.

Screenshot 2025-12-19 173003.png

Är denna: https://www.fotosidan.se/gallery/viewpic/3996964.htm?set=mp

Jag försökte lite olika varianter och den blir ju några kb större om man undanber sig att FS konverterar färgrymden som redan är sRGB, men det är ju inte riktigt några kb det handlar om. FS trycker ned storleken till hälften, trots att bilden knappast är för stor och det finns bilder som är betydligt större.
 
Jag prövade att exportera exakt samma bild i samma storlek med samma exportparametrar, men med kvaliteten ställd på 100 istället för 90 (i C1). Då blev bilden 2,57 MiB och laddar man upp den så blir den ~1,8 MiB efter att FS kört den i digitalmangeln. Inte nog med att den blir långt mycket större så blir minskningen i storlek mindre i procent. Jag vill påstå att logiken inte är noll, utan under noll...

(Jag har f.n. inte laddat upp den på 2,57 till länken ovan, utan testade i ett dolt/opublicerat album.)
 
Glömde svara. Minns inte riktigt och det där kan nog ses över. Vi kör imagemagick iallafall. Men jag uppfattar att rent visuellt så verkar det funka bra.
 
Glömde svara. Minns inte riktigt och det där kan nog ses över. Vi kör imagemagick iallafall. Men jag uppfattar att rent visuellt så verkar det funka bra.
Det som fick mig att kolla var dock att jag noterade artefakter i himlen i den mindre visningsstorleken, förstorade och noterade att även den stora bilden var sämre än det jag hade laddat upp. Varför blev ju tydligt när jag kollade hur stor filen var och att FS hade tryckt ned storleken till hälften.

Att sidan kan komprimera överdrivet stora bilder i KB/MB (eller som är större än 2880 px) är inte i sig fel och behövs ju om det ska gå att ladda upp pixelmässigt för stora bilder. Problemet är ju att om det är lagom att bilden är 1 MB så kan man inte ladda upp en bild som är det, för FS kommer då att komprimera den redan komprimerade bilden en gång till och dra ned storleken. Däremot kan man ladda upp en onödigt lite komprimerad bild och då blir det istället mer än 1 MB. Vill man pricka 1 MB får man testa sig fram till vid vilken storlek FS "svarta komprimeringslåda" behagar spotta ur sig en bild som är 1 MB...

Det rimliga vore i mitt tycke att låta bilder som är under maximalt antal pixlar för albumen och under något lämpligt antal KB/MB vara och inte komprimera dem igen helt i onödan. Är bilderna däremot över detta så är det givetvis rimligt att de komprimeras för enkelhetens skull.
 
Jag skrev en liten snutt ni kan kopiera in som borde lösa det mesta. 🙃

$imagePath = 'path/to/your/image.jpg';

// Read EXIF data from the image
$exif = @exif_read_data($imagePath);

if ($exif && isset($exif['Make']) && stripos($exif['Make'], 'Nikon') !== false)
// Eran rutin för att ladda upp bilden
} else {
echo "Något är fel med bilden prova en annan bild";
// Blockera uppladdningen
}
 
ANNONS