1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 23:37:36 +00:00

LibGfx: add GIF test suite

Adds a GIF test suite HTML page that contains a selection of test
GIF images and reference PNGs for each frame

Adds a link to the GIF test suite on welcome.html
This commit is contained in:
Peter Nelson 2020-08-30 16:16:41 +01:00 committed by Andreas Kling
parent 8be708454c
commit f63592f871
52 changed files with 139 additions and 0 deletions

View file

@ -0,0 +1,138 @@
<!DOCTYPE html>
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta charset="UTF-8">
<title>GIF Suite Image List</title>
<style>
.b { background:url(gifsuite_files/bkgd.png); }
</style>
</head>
<body class="vsc-initialized">
<h1>GIF Suite Image List</h1>
<p>
Test GIF images are displayed in the leftmost column. Where they contain multiple frames,
each frame is rendered as a reference PNG in subsequent columns, exactly as it should appear.
Any differences indicate a bug in the GIF decoder.
</p>
<table cellpadding="8" border="1">
<tbody>
<tr>
<th>Image</th>
<th>Frame 1</th>
<th>Frame 2</th>
<th>Frame 3</th>
<th>Frame 4</th>
<th>Notes</th>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/static_nontransparent.gif"></td>
<td class="b"><img src="gifsuite_files/static_nontransparent.png"></td>
<td class="b">N/A</td>
<td class="b">N/A</td>
<td class="b">N/A</td>
<td>Static gif with no animation, no transparency</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/animated_noloop.gif"></td>
<td class="b"><img src="gifsuite_files/animated_noloop-0.png"></td>
<td class="b"><img src="gifsuite_files/animated_noloop-1.png"></td>
<td class="b"><img src="gifsuite_files/animated_noloop-2.png"></td>
<td class="b"><img src="gifsuite_files/animated_noloop-3.png"></td>
<td>Animated gif with 4 frames, no loop, no transparency</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/animated_loop.gif"></td>
<td class="b"><img src="gifsuite_files/animated_loop-0.png"></td>
<td class="b"><img src="gifsuite_files/animated_loop-1.png"></td>
<td class="b"><img src="gifsuite_files/animated_loop-2.png"></td>
<td class="b"><img src="gifsuite_files/animated_loop-3.png"></td>
<td>Animated gif with 4 frames, looping forever, no transparency</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/animated_interlaced_loop.gif"></td>
<td class="b"><img src="gifsuite_files/animated_interlaced_loop-0.png"></td>
<td class="b"><img src="gifsuite_files/animated_interlaced_loop-1.png"></td>
<td class="b"><img src="gifsuite_files/animated_interlaced_loop-2.png"></td>
<td class="b"><img src="gifsuite_files/animated_interlaced_loop-3.png"></td>
<td>Interlaced gif with 4 frames, looping forever, no transparency</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/animated_loop_variable_delay.gif"></td>
<td class="b"><img src="gifsuite_files/animated_loop_variable_delay-0.png"></td>
<td class="b"><img src="gifsuite_files/animated_loop_variable_delay-1.png"></td>
<td class="b"><img src="gifsuite_files/animated_loop_variable_delay-2.png"></td>
<td class="b"><img src="gifsuite_files/animated_loop_variable_delay-3.png"></td>
<td>Animated gif with 4 frames, looping forever, no transparency, shorter delay between frames 2 and 3</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/static_transparent.gif"></td>
<td class="b"><img src="gifsuite_files/static_transparent.png"></td>
<td class="b">N/A</td>
<td class="b">N/A</td>
<td class="b">N/A</td>
<td>Static transparent gif with no animation</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/animated_transparent_loop.gif"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_loop-0.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_loop-1.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_loop-2.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_loop-3.png"></td>
<td>Transparent gif with 4 frames, loops forever</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/animated_transparent_restoreprev_loop.gif"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_restoreprev_loop-0.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_restoreprev_loop-1.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_restoreprev_loop-2.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_restoreprev_loop-3.png"></td>
<td>Transparent gif with 4 frames, loops forever, restore previous</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_norestore_loop.gif"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_norestore_loop-0.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_norestore_loop-1.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_norestore_loop-2.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_norestore_loop-3.png"></td>
<td>Transparent gif with 4 transparent frames, loops forever, no dispose</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restorebackground_loop.gif"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restorebackground_loop-0.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restorebackground_loop-1.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restorebackground_loop-2.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restorebackground_loop-3.png"></td>
<td>Transparent gif with 4 transparent frames, loops forever, restore background</td>
</tr>
<tr>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restoreprev_loop.gif"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restoreprev_loop-0.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restoreprev_loop-1.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restoreprev_loop-2.png"></td>
<td class="b"><img src="gifsuite_files/animated_transparent_frame_restoreprev_loop-3.png"></td>
<td>Transparent gif with 4 transparent frames, loops forever, restore previous</td>
</tr>
</tbody>
</table>
</body>
</html>