Esempio n. 1
0
        public new static PanasonicExif Parse(Stream stream)
        {
            var result = new PanasonicExif();

            result.InternalParse(stream);

            result.ColorMatrix = new[, ]
            {
                { 1.87f, -0.81f, -0.06f },
                { -0.16f, 1.55f, -0.39f },
                { 0.05f, -0.47f, 1.42f }
            };

            if (result.CamMul == null)
            {
                return(result);
            }

            var max = result.CamMul.Max();

            result.WhiteColor = result.CamMul.Select(v => max / v).Reverse().ToArray();
            result.Multiplier = max;

            return(result);
        }
Esempio n. 2
0
        public static new PanasonicExif Parse(Stream stream)
        {
            var result = new PanasonicExif();
            result.InternalParse(stream);

            result.ColorMatrix = new[,]
            {
                {1.87f, -0.81f, -0.06f},
                {-0.16f, 1.55f, -0.39f},
                {0.05f, -0.47f, 1.42f}
            };

            if (result.CamMul == null) return result;

            var max = result.CamMul.Max();
            result.WhiteColor = result.CamMul.Select(v => max/v).Reverse().ToArray();
            result.Multiplier = max;

            return result;
        }
Esempio n. 3
0
 public BitmapFrameDecode(Stream _stream, PanasonicExif _exif)
 {
     exif = _exif;
     stream = _stream;
 }
Esempio n. 4
0
 void ReadExif()
 {
     var position = stream.Position;
     exif = (PanasonicExif)new PanasonicRW2Decoder().DecodeExif(stream);
     stream.Position = position;
 }