<!doctype html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<meta http-equiv="content-style-type" content="text/css">
<link rel="stylesheet" type="text/css" href="style.css">
<title>ProGuard Screenshots</title>
<script type="text/javascript" language="JavaScript">
<!--
if (window.self==window.top)
  window.top.location.replace("index.html#"+window.location.pathname+window.location.hash);
else {
  var hash="#"+window.location.pathname.replace(window.top.location.pathname.replace("index.html", ""), "");
  if (window.top.location.hash!=hash)
    window.top.location.hash=hash;
}
//-->
</script>
</head>
<body>

<h2>Screenshots</h2>

<table><tr><td>
<a href="screenshot_gui1.gif" target="other">
<img src="screenshots_gui_small.gif" width="320" height="223" align="right"
 alt="GUI screenshot" usemap="#guimap" /></a>

<map id="guimap" name="guimap">
<area shape="rect" coords="2,7,46,16"  alt="ProGuard"     href="screenshot_gui1.gif" target="other">
<area shape="rect" coords="2,17,46,27" alt="Input/Output" href="screenshot_gui2.gif" target="other">
<area shape="rect" coords="2,28,46,37" alt="Shrinking"    href="screenshot_gui3.gif" target="other">
<area shape="rect" coords="2,38,46,48" alt="Optimization" href="screenshot_gui4.gif" target="other">
<area shape="rect" coords="2,49,46,58" alt="Obfuscation"  href="screenshot_gui5.gif" target="other">
<area shape="rect" coords="2,59,46,69" alt="Information"  href="screenshot_gui6.gif" target="other">
<area shape="rect" coords="2,70,46,79" alt="Process"      href="screenshot_gui7.gif" target="other">
<area shape="rect" coords="2,80,46,90" alt="ReTrace"      href="screenshot_gui8.gif" target="other">
</map>

The graphical user interface to <b>ProGuard</b> works like a wizard. It allows
you to browse through the presented tabs and fill them out.
<p>
You can click on the small tab buttons to see the full-size versions of the
tabs.

</td></tr>
<tr><td>
<a href="screenshot_console.gif" target="other">
<img src="screenshot_console_small.gif" width="320" height="268" align="left"
 alt="Console screenshot" /></a>

Of course, real developers don't need all this point-and-click fluff. They
write short configuration files using their favorite text editors and invoke
<b>ProGuard</b> from the command-line.
<p>
You can click on the image to see the full-size version.

</td></tr></table>

<hr />
<noscript><div><a target="_top" href="index.html" class="button">Show menu</a></div></noscript>
<address>
Copyright &copy; 2002-2011
<a target="other" href="http://www.lafortune.eu/">Eric Lafortune</a>.
</address>
</body>
</html>
