Exemplo n.º 1
0
        public static async void ConvertDirToDds(int qMin, int qMax, bool delSrc)
        {
            int counter = 1;

            FileInfo[] files = IOUtils.GetFiles();

            Program.PreProcessing();
            foreach (FileInfo file in files)
            {
                Program.ShowProgress("Converting Image ", counter, files.Length);
                counter++;
                switch (Config.GetInt("ddsEnc"))
                {
                case 0: ConvertToDds(file.FullName, delSrc); break;

                case 1: DdsInterface.Crunch(file.FullName, qMin, qMax, delSrc); break;

                case 2: DdsInterface.NvCompress(file.FullName, Path.ChangeExtension(file.FullName, "dds"), delSrc); break;
                }
                if (counter % 2 == 0)
                {
                    await Program.PutTaskDelay();
                }
            }
            Program.PostProcessing();
        }
Exemplo n.º 2
0
        public static async Task ConvertToDds(string path, int qMin, int qMax, bool delSrc = false)
        {
            long   bytesSrc = new FileInfo(path).Length;
            string outPath  = Path.ChangeExtension(path, null) + ".dds";

            switch (await Config.GetInt("ddsEnc"))
            {
            case 0: await ConvertToDdsNative(path); break;

            case 1: await DdsInterface.NvCompress(path, outPath); break;

            case 2: await DdsInterface.Texconv(path); break;

            case 3: await DdsInterface.Crunch(path, qMin, qMax); break;
            }

            PostProcessing(path, outPath, bytesSrc, delSrc);
        }
Exemplo n.º 3
0
        public static void ConvertFileList(string[] files, ComboBox qualityCombox, ComboBox qualityMaxCombox, IF selectedFormat, CheckBox delSrcCbox)
        {
            int qMin = qualityCombox.GetInt();
            int qMax = qMin;

            if (!string.IsNullOrWhiteSpace(qualityMaxCombox.Text.Trim()))
            {
                qMax = qualityMaxCombox.GetInt();
            }

            foreach (string file in files)
            {
                Program.Print("\nDropped File: " + Path.GetFileName(file).Truncate(90));
                if (!IOUtils.IsPathDirectory(file))
                {
                    if (selectedFormat == IF.JPG)
                    {
                        ConvertUtils.ConvertToJpeg(file, qMin, qMax, delSrcCbox.Checked);
                    }

                    if (selectedFormat == IF.PNG)
                    {
                        ConvertUtils.ConvertToPng(file, qMin, delSrcCbox.Checked);
                    }

                    if (selectedFormat == IF.DDS)
                    {
                        if (Config.GetInt("ddsEnc") == 0)
                        {
                            ConvertUtils.ConvertToDds(file, delSrcCbox.Checked);
                        }
                        if (Config.GetInt("ddsEnc") == 1)
                        {
                            DdsInterface.NvCompress(file, Path.ChangeExtension(file, "dds"), delSrcCbox.Checked);
                        }
                        if (Config.GetInt("ddsEnc") == 2)
                        {
                            DdsInterface.Crunch(file, qMin, qMax, delSrcCbox.Checked);
                        }
                    }

                    if (selectedFormat == IF.TGA)
                    {
                        ConvertUtils.ConvertToTga(file, delSrcCbox.Checked);
                    }

                    if (selectedFormat == IF.WEBP)
                    {
                        ConvertUtils.ConvertToWebp(file, qMin, qMax, delSrcCbox.Checked);
                    }

                    if (selectedFormat == IF.J2K)
                    {
                        ConvertUtils.ConvertToJpeg2000(file, qMin, delSrcCbox.Checked);
                    }

                    if (selectedFormat == IF.FLIF)
                    {
                        if (Config.GetInt("flifEnc") == 1)
                        {
                            FlifInterface.EncodeImage(file, qMin, delSrcCbox.Checked);
                        }
                        else
                        {
                            ConvertUtils.ConvertToFlif(file, qMin, delSrcCbox.Checked);
                        }
                    }

                    if (selectedFormat == IF.BMP)
                    {
                        ConvertUtils.ConvertToBmp(file, delSrcCbox.Checked);
                    }

                    if (selectedFormat == IF.AVIF)
                    {
                        ConvertUtils.ConvertToAvif(file, qMin, delSrcCbox.Checked);
                    }

                    if (selectedFormat == IF.HEIF)
                    {
                        HeifInterface.EncodeImage(file, qMin, delSrcCbox.Checked);
                    }
                }
            }
        }