mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-04-01 14:46:36 +08:00
项目结构调整
This commit is contained in:
38
Others/WpfAnimatedGif/Decoding/GifHeader.cs
Normal file
38
Others/WpfAnimatedGif/Decoding/GifHeader.cs
Normal file
@@ -0,0 +1,38 @@
|
||||
using System.IO;
|
||||
|
||||
namespace WpfAnimatedGif.Decoding
|
||||
{
|
||||
internal class GifHeader : GifBlock
|
||||
{
|
||||
public string Signature { get; private set; }
|
||||
public string Version { get; private set; }
|
||||
public GifLogicalScreenDescriptor LogicalScreenDescriptor { get; private set; }
|
||||
|
||||
private GifHeader()
|
||||
{
|
||||
}
|
||||
|
||||
internal override GifBlockKind Kind
|
||||
{
|
||||
get { return GifBlockKind.Other; }
|
||||
}
|
||||
|
||||
internal static GifHeader ReadHeader(Stream stream)
|
||||
{
|
||||
var header = new GifHeader();
|
||||
header.Read(stream);
|
||||
return header;
|
||||
}
|
||||
|
||||
private void Read(Stream stream)
|
||||
{
|
||||
Signature = GifHelpers.ReadString(stream, 3);
|
||||
if (Signature != "GIF")
|
||||
throw GifHelpers.InvalidSignatureException(Signature);
|
||||
Version = GifHelpers.ReadString(stream, 3);
|
||||
if (Version != "87a" && Version != "89a")
|
||||
throw GifHelpers.UnsupportedVersionException(Version);
|
||||
LogicalScreenDescriptor = GifLogicalScreenDescriptor.ReadLogicalScreenDescriptor(stream);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user