Example #1
0
        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;
                }
            }
        }
Example #2
0
        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;
                }
            }
        }