public static void CreateDreamBGPackage() { string filepath = Exporter.filepath; ArrayList List = Exporter.List; ProgressBar progressBar = Exporter.progressBar; bool convert_Images = Exporter.convert_Images; bool singleFile = Exporter.singleFile; if (List.Count > 0) { string strMediaListDir = DreamTools.GetDirectory(DirType.Backgrounds); Crc32 crc = new Crc32(); ZipOutputStream s = new ZipOutputStream(File.Create(filepath)); s.SetLevel(9); //0 - store only to 9 - means best compression ArrayList bgList = new ArrayList(); if (singleFile) { progressBar.Maximum = List.Count; } if (singleFile) { progressBar.Value = 0; } if (singleFile) { Exporter.ExportForm.Enabled = false; } for (int j = 0; j < List.Count; j++) { string [] filetypes = { ".bmp", ".jpg", ".png", ".gif", ".jpeg" }; string strImageDir = strMediaListDir + List[j].ToString(); if (Directory.Exists(strImageDir)) { //find all files from defined FileTypes foreach (string filetype in filetypes) { string[] dirs = Directory.GetFiles(@strImageDir, "*" + filetype); foreach (string dir in dirs) { string bgImage = dir; //mediaList.iItem[k].Path; if (((Path.GetExtension(bgImage).ToLower() != ".jpg") & (Path.GetExtension(bgImage).ToLower() != ".jpeg")) && convert_Images) { Bitmap bmp = new Bitmap(bgImage); System.Drawing.Imaging.ImageCodecInfo ici = BitmapManipulator.GetEncoderInfo("image/jpeg"); EncoderParameters eps = new EncoderParameters(1); eps.Param[0] = new EncoderParameter(Encoder.Quality, 100L); bgImage = DreamTools.GetDirectory(DirType.DataRoot) + "\\" + Path.GetFileNameWithoutExtension(bgImage) + ".jpg"; bmp.Save(bgImage, ici, eps); addToZip(s, crc, bgImage, true); bmp.Dispose(); File.Delete(bgImage); } else if (File.Exists(bgImage)) { addToZip(s, crc, bgImage, true); } } } // addToZip(s,crc,file); } if (singleFile) { progressBar.Value++; } } s.Finish(); s.Close(); if (singleFile) { Exporter.ExportForm.Enabled = true; } } }
public static void CreateDreamMediaPackage() { string filepath = Exporter.filepath; ArrayList List = Exporter.List; ProgressBar progressBar = Exporter.progressBar; bool convert_Images = Exporter.convert_Images; bool singleFile = Exporter.singleFile; if (List.Count > 0) { string strMediaListDir = DreamTools.GetDirectory(DirType.MediaLists); Crc32 crc = new Crc32(); ZipOutputStream s = new ZipOutputStream(File.Create(filepath)); s.SetLevel(9); //0 - store only to 9 - means best compression ImageList mediaList = new ImageList(); ArrayList bgList = new ArrayList(); if (singleFile) { progressBar.Maximum = List.Count; } if (singleFile) { progressBar.Value = 0; } if (singleFile) { Exporter.ExportForm.Enabled = false; } for (int j = 0; j < List.Count; j++) { string file = strMediaListDir + List[j].ToString() + ".xml"; if (File.Exists(file)) { // Include BG Image mediaList.Load(List[j].ToString()); for (int k = 0; k < mediaList.Count; k++) { if (File.Exists(mediaList.iItem[k].Path)) { bool includeBG = true; for (int i = 0; i < bgList.Count; i++) { if (bgList[i].ToString() == mediaList.iItem[k].Path) { includeBG = false; } } if (includeBG) { bgList.Add(mediaList.iItem[k].Path); //DreamTools.DreamBeamPath()+"\\"+ string bgImage = mediaList.iItem[k].Path; if (((Path.GetExtension(bgImage).ToLower() != ".jpg") & (Path.GetExtension(bgImage).ToLower() != ".jpeg")) && convert_Images) { Bitmap bmp = new Bitmap(bgImage); System.Drawing.Imaging.ImageCodecInfo ici = BitmapManipulator.GetEncoderInfo("image/jpeg"); EncoderParameters eps = new EncoderParameters(1); eps.Param[0] = new EncoderParameter(Encoder.Quality, 100L); bgImage = DreamTools.GetDirectory(DirType.DataRoot) + "\\" + Path.GetFileNameWithoutExtension(bgImage) + ".jpg"; bmp.Save(bgImage, ici, eps); addToZip(s, crc, bgImage, true); bmp.Dispose(); File.Delete(bgImage); } else if (File.Exists(bgImage)) { addToZip(s, crc, bgImage, true); } } } } addToZip(s, crc, file, true); } if (singleFile) { progressBar.Value++; } } s.Finish(); s.Close(); if (singleFile) { Exporter.ExportForm.Enabled = true; } } }