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); }
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; }
public BitmapFrameDecode(Stream _stream, PanasonicExif _exif) { exif = _exif; stream = _stream; }
void ReadExif() { var position = stream.Position; exif = (PanasonicExif)new PanasonicRW2Decoder().DecodeExif(stream); stream.Position = position; }