Пример #1
0
        public static byte[] GetImportBytes(BinaryReader reader)
        {
            var startpos = reader.BaseStream.Position;

            var filetype = reader.ReadBytes(3);

            if (filetype.StartsWith("FWS") || filetype.StartsWith("GFX"))
            {
                if (MessageBox.Show(
                        "Imported file type detected as FWS or GFX, do you want to compress it? \n\n Import as is if not.",
                        "Import",
                        MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    return(compressToCFX(reader));
                }
            }
            else if (filetype.StartsWith("DDS"))
            {
                reader.BaseStream.Seek(0, SeekOrigin.Begin);
                return(DDSUtility.ImportFromDDS(reader));
            }

            reader.BaseStream.Seek(0, SeekOrigin.Begin);
            return(reader.ReadBytes((int)reader.BaseStream.Length));
        }
Пример #2
0
        public static byte[] GetExportBytes(byte[] bytes, string type)
        {
            switch (type)
            {
            case ".swf":
                if (bytes.StartsWith("CFX") || bytes.StartsWith("CWS"))
                {
                    return(uncompressToFWS(bytes));
                }
                break;

            case ".dds":
                return(DDSUtility.ExportAsDDS(bytes));
            }

            return(bytes);
        }