private ICollection<BitmapToWrite> BitmapsToWrite()
{
Dictionary<string, BitmapToWrite> bitmapsToWrite = new Dictionary<string, BitmapToWrite>();
foreach (Special special in eventDB.AllSpecials) {
if (special.kind == SpecialKind.Image) {
string name = special.text;
string path = Path.GetFullPath(Path.Combine(creationSettings.outputDirectory, special.text));
ImageFormat format = special.imageBitmap.RawFormat;
if (creationSettings.fileFormat.kind == MapFileFormatKind.OCAD && creationSettings.fileFormat.version <= 10 && format.Guid == ImageFormat.Png.Guid) {
// Versions prior to 10 don't handle PNG. Use gif instead.
format = ImageFormat.Gif;
path = Path.ChangeExtension(path, ".gif");
}
if (!bitmapsToWrite.ContainsKey(name))
bitmapsToWrite.Add(name, new BitmapToWrite() { Name = name, FullPath = path, Bitmap = special.imageBitmap, Format = format });
}
}
return bitmapsToWrite.Values;
}