예제 #1
0
        public MapImageWPF(MapImageType type, byte[] data)
            : base(type, data)
        {
            if ((data == null) || (data.Length == 0))
            {                
                _Image = null;
                return;
            }            

            try
            {
                MemoryStream stream = new MemoryStream(Data);
                BitmapImage image = new BitmapImage();
                image.BeginInit();
                image.StreamSource = stream;
                image.EndInit();
                _Image = image;
            }
            catch (InvalidOperationException ex)
            {
                throw new InvalidDataException("Invalid image data", ex);
            }
            catch (NotSupportedException ex)
            {
                throw new InvalidDataException("Invalid image data", ex);
            }
        }
예제 #2
0
        public MapImageWPF(MapImageType type, byte[] data)
            : base(type, data)
        {
            if ((data == null) || (data.Length == 0))
            {
                _Image = null;
                return;
            }

            try
            {
                MemoryStream stream = new MemoryStream(Data);
                BitmapImage image = new BitmapImage();
                image.BeginInit();
                image.StreamSource = stream;
                image.EndInit();
                _Image = image;
            }
            catch (InvalidOperationException ex)
            {
                throw new InvalidDataException("Invalid image data", ex);
            }
            catch (NotSupportedException ex)
            {
                throw new InvalidDataException("Invalid image data", ex);
            }
        }
        public static MapImage DeserializeMapImage(BinaryReader Reader)
        {
            MapImageType imageType = DeserializeMapImageType(Reader);

            if (imageType == MapImageType.Null)
            {
                return(null);
            }
            else
            {
                //MapSize size = DeserializeMapSize(Reader);
                int    len  = DeserializeLength(Reader);
                byte[] data = (len > 0) ? Reader.ReadBytes(len) : null;
                return(new MapImage(imageType, data));
            };
        }
예제 #4
0
 /// <summary>
 /// Картинка
 /// </summary>
 /// <param name="Type">Тип</param>        
 /// <param name="Data">Данные</param>
 public MapImage(MapImageType Type, byte[] Data)
 {
     this.Type = Type;
     this.Data = Data;
 }
예제 #5
0
 /// <summary>
 /// Картинка
 /// </summary>
 /// <param name="Type">Тип</param>
 /// <param name="Data">Данные</param>
 public MapImage(MapImageType Type, byte[] Data)
 {
     this.Type = Type;
     this.Data = Data;
 }
 public static void SerializeMapImageType(BinaryWriter Writer, MapImageType ImageType)
 {
     Writer.Write((UInt16)ImageType);
 }
예제 #7
0
 public static void SerializeMapImageType(BinaryWriter Writer, MapImageType ImageType)
 {
     Writer.Write((UInt16)ImageType);
 }