private BufferedImage buildLegend( GetLegendGraphic req, Legends renderer, Style style, boolean originalSize,
HashMap<String, BufferedImage> legendMap ) {
BufferedImage img = MapService.prepareImage( req );
Graphics2D g = img.createGraphics();
g.setRenderingHint( KEY_ANTIALIASING, VALUE_ANTIALIAS_ON );
g.setRenderingHint( KEY_TEXT_ANTIALIASING, VALUE_TEXT_ANTIALIAS_ON );
renderer.paintLegend( style, req.getWidth(), req.getHeight(), g );
g.dispose();
if ( req.getFormat().equals( "image/png; mode=8bit" ) || req.getFormat().equals( "image/png; subtype=8bit" )
|| req.getFormat().equals( "image/gif" ) ) {
img = postprocessPng8bit( img );
}
if ( originalSize ) {
legendMap.put( req.getFormat(), img );
}
return img;
}