Bewegende gìf-jes detecteren
Ik vroeg me af.
is het mogelijk in PHP en e.v.t met een imagemagick om GIF-jes met frames te detecteren, oftewel de bewegende plaatjes?
Deze wil ik namelijk weigeren op mijn site in het fotoalbum.
is het mogelijk in PHP en e.v.t met een imagemagick om GIF-jes met frames te detecteren, oftewel de bewegende plaatjes?
Deze wil ik namelijk weigeren op mijn site in het fotoalbum.
Gesponsorde koppelingen:
Je kan kijken of er info wordt opgeslagen in 1 van de exif secties
Foto's zijn toch eigenlijk nooit gifjes?
Als dat zo is (weet ik niet zeker!) kun je ook controleren op MIME type
Als dat zo is (weet ik niet zeker!) kun je ook controleren op MIME type
Dalando De Zuil op 11/09/2010 20:17:58:
Jajaja je zit nu links door te geven van Google terwijl je zelf altijd topics maakt zonder eens te kijken op Google :s
Internet Verslaafde op 11/09/2010 22:12:05:
Jajaja je zit nu links door te geven van Google terwijl je zelf altijd topics maakt zonder eens te kijken op Google :s
Dalando De Zuil op 11/09/2010 20:17:58:
Jajaja je zit nu links door te geven van Google terwijl je zelf altijd topics maakt zonder eens te kijken op Google :s
De beste manier om het te leren ;)
Waarom weiger je niet volledig gif bestanden? Laat ze gewoon lekker jpg's uploaden...
@ Dalando: Doe niet zo bijdehand want zelf kijk je ook nooit op google!
@ Dalando: Doe niet zo bijdehand want zelf kijk je ook nooit op google!
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/**
* Thanks to ZeBadger for original example, and Davide Gualano for pointing me to it
* Original at http://it.php.net/manual/en/function.imagecreatefromgif.php#59787
**/
function is_animated_gif( $filename )
{
$raw = file_get_contents( $filename );
$offset = 0;
$frames = 0;
while ($frames < 2)
{
$where1 = strpos($raw, "\x00\x21\xF9\x04", $offset);
if ( $where1 === false )
{
break;
}
else
{
$offset = $where1 + 1;
$where2 = strpos( $raw, "\x00\x2C", $offset );
if ( $where2 === false )
{
break;
}
else
{
if ( $where1 + 8 == $where2 )
{
$frames ++;
}
$offset = $where2 + 1;
}
}
}
return $frames > 1;
}
* Thanks to ZeBadger for original example, and Davide Gualano for pointing me to it
* Original at http://it.php.net/manual/en/function.imagecreatefromgif.php#59787
**/
function is_animated_gif( $filename )
{
$raw = file_get_contents( $filename );
$offset = 0;
$frames = 0;
while ($frames < 2)
{
$where1 = strpos($raw, "\x00\x21\xF9\x04", $offset);
if ( $where1 === false )
{
break;
}
else
{
$offset = $where1 + 1;
$where2 = strpos( $raw, "\x00\x2C", $offset );
if ( $where2 === false )
{
break;
}
else
{
if ( $where1 + 8 == $where2 )
{
$frames ++;
}
$offset = $where2 + 1;
}
}
}
return $frames > 1;
}
Milo S op 03/10/2010 18:17:30:
Waarom weiger je niet volledig gif bestanden? Laat ze gewoon lekker jpg's uploaden...
@ Dalando: Doe niet zo bijdehand want zelf kijk je ook nooit op google!
@ Dalando: Doe niet zo bijdehand want zelf kijk je ook nooit op google!
Omdat .gif ook statisch kan zijn :P.



