When drupal generate thumbnail for transparent png images without imagecache, the thumbnail is created with black background.
I think the reason: fast_gallery.cache.class.php in createthumb function allways use "imagejpeg" to create the thumbnail image.

I solved this "problem": In fast_gallery.cache.class.php change the "createthumb" function for the following:

public function createthumb($name, $width, $height) {
$name = utf8_decode($name);

// Return without doing anything if the thumbnail already exists
if (file_exists($name . '.thumb'))
return true;

// We're only supporting JPG, PNG, GIF
$src_img = $this->imagecreatefromfile($name);
if ($src_img == FALSE) {
drupal_set_message('Internal cache failed to create thumbnail: ' . $name);
return;
}

// New dimensions
$width_orig = imagesx($src_img);
$height_orig = imagesy($src_img);
$ratio_orig = $width_orig / $height_orig;

if ($width / $height > $ratio_orig) {
$width = $height * $ratio_orig;
} else {
$height = $width / $ratio_orig;
}

// Resample
$dst_img = imagecreatetruecolor($width, $height);
//-- new code begin
$info = getimagesize($name);

if(($info[2] == IMAGETYPE_GIF) || ($info[2]==IMAGETYPE_PNG))
{
imagealphablending($dst_img, false);
imagesavealpha($dst_img, true);
$transparent = imagecolorallocatealpha($dst_img, 0, 0, 0, 127);
imagefilledrectangle($dst_img, 0, 0, $width, $height, $transparent);
}

imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

// Save out the thumbnail file as src type
$types = array (
IMAGETYPE_GIF => 'imagegif',
IMAGETYPE_JPEG => 'imagejpeg',
IMAGETYPE_PNG => 'imagepng',
);
//imagejpeg($dst_img, $name . '.thumb');
$types[$info[2]] ($dst_img, $name . '.thumb');
//-- new code end
// Some cleanup
imagedestroy($dst_img);
imagedestroy($src_img);
}

ps.: Sorry for my english.