Beste mede-tweakers,
Na flink wat onderzoek en testen heb ik geen oplossing kunnen vinden hoe ik afbeeldingen op corruptheid kan controleren voordat ik ze probeer te verkleinen (met PHP GD) met alle errors van dien.
In eerste instantie vond ik de volgende 2 oplossingen:
1) Kijk wat de functie getimagesize() voor output geeft.
Daar heb ik naar gekeken alleen retourneerd de functie zelfs bij een corrupte afbeelding nog alle waarden in de array.
Misschien dat dit alleen het geval is wanneer de header-info niet te ernstig beschadigd is maar er zijn in ieder geval genoeg corrupte gevallen die dus niet te signaleren zijn a.d.h.v. deze functie.
2) Gebruik phpThumb
Die doet resizen on the fly, hetzij dan misschien wel met cache maar ik doe niet alleen resizen voor het dataverkeer en de laadsnelheid van een pagina maar ook omdat ik m'n webruimte-gebruik een beetje binnen de perken wil houden. Voor zover ik weet doet phpThumb niet resizen bij upload en dan de onge-resize-de verwijderen. En sowieso.. ik heb inmiddels mijn eigen resizescript aardig uitgebouwd zodat hij zelfs PNG met transparantie kan verkleinden e.d. en wil mijn eigen script dus heel graag blijven gebruiken.
Beide oplossingen gaan (voor mij) dus niet op.
Zijn er mensen die mij hier meer over kunnen vertellen en tips over kunnen geven?
Na flink wat onderzoek en testen heb ik geen oplossing kunnen vinden hoe ik afbeeldingen op corruptheid kan controleren voordat ik ze probeer te verkleinen (met PHP GD) met alle errors van dien.
In eerste instantie vond ik de volgende 2 oplossingen:
1) Kijk wat de functie getimagesize() voor output geeft.
Daar heb ik naar gekeken alleen retourneerd de functie zelfs bij een corrupte afbeelding nog alle waarden in de array.
Array ( [0] => 538968409 [1] => 538968323 [2] => 3 [3] => width="538968409" height="538968323" [bits] => 8 [mime] => image/png )
Misschien dat dit alleen het geval is wanneer de header-info niet te ernstig beschadigd is maar er zijn in ieder geval genoeg corrupte gevallen die dus niet te signaleren zijn a.d.h.v. deze functie.
2) Gebruik phpThumb
Die doet resizen on the fly, hetzij dan misschien wel met cache maar ik doe niet alleen resizen voor het dataverkeer en de laadsnelheid van een pagina maar ook omdat ik m'n webruimte-gebruik een beetje binnen de perken wil houden. Voor zover ik weet doet phpThumb niet resizen bij upload en dan de onge-resize-de verwijderen. En sowieso.. ik heb inmiddels mijn eigen resizescript aardig uitgebouwd zodat hij zelfs PNG met transparantie kan verkleinden e.d. en wil mijn eigen script dus heel graag blijven gebruiken.
Beide oplossingen gaan (voor mij) dus niet op.
Zijn er mensen die mij hier meer over kunnen vertellen en tips over kunnen geven?