107 lines
3.8 KiB
C#
107 lines
3.8 KiB
C#
using System;
|
|
using System.IO;
|
|
|
|
namespace Hjg.Pngcs.Chunks
|
|
{
|
|
// Token: 0x02000028 RID: 40
|
|
public class PngChunkIHDR : PngChunkSingle
|
|
{
|
|
// Token: 0x17000020 RID: 32
|
|
// (get) Token: 0x06000161 RID: 353 RVA: 0x0000651B File Offset: 0x0000471B
|
|
// (set) Token: 0x06000162 RID: 354 RVA: 0x00006523 File Offset: 0x00004723
|
|
public int Cols { get; set; }
|
|
|
|
// Token: 0x17000021 RID: 33
|
|
// (get) Token: 0x06000163 RID: 355 RVA: 0x0000652C File Offset: 0x0000472C
|
|
// (set) Token: 0x06000164 RID: 356 RVA: 0x00006534 File Offset: 0x00004734
|
|
public int Rows { get; set; }
|
|
|
|
// Token: 0x17000022 RID: 34
|
|
// (get) Token: 0x06000165 RID: 357 RVA: 0x0000653D File Offset: 0x0000473D
|
|
// (set) Token: 0x06000166 RID: 358 RVA: 0x00006545 File Offset: 0x00004745
|
|
public int Bitspc { get; set; }
|
|
|
|
// Token: 0x17000023 RID: 35
|
|
// (get) Token: 0x06000167 RID: 359 RVA: 0x0000654E File Offset: 0x0000474E
|
|
// (set) Token: 0x06000168 RID: 360 RVA: 0x00006556 File Offset: 0x00004756
|
|
public int Colormodel { get; set; }
|
|
|
|
// Token: 0x17000024 RID: 36
|
|
// (get) Token: 0x06000169 RID: 361 RVA: 0x0000655F File Offset: 0x0000475F
|
|
// (set) Token: 0x0600016A RID: 362 RVA: 0x00006567 File Offset: 0x00004767
|
|
public int Compmeth { get; set; }
|
|
|
|
// Token: 0x17000025 RID: 37
|
|
// (get) Token: 0x0600016B RID: 363 RVA: 0x00006570 File Offset: 0x00004770
|
|
// (set) Token: 0x0600016C RID: 364 RVA: 0x00006578 File Offset: 0x00004778
|
|
public int Filmeth { get; set; }
|
|
|
|
// Token: 0x17000026 RID: 38
|
|
// (get) Token: 0x0600016D RID: 365 RVA: 0x00006581 File Offset: 0x00004781
|
|
// (set) Token: 0x0600016E RID: 366 RVA: 0x00006589 File Offset: 0x00004789
|
|
public int Interlaced { get; set; }
|
|
|
|
// Token: 0x0600016F RID: 367 RVA: 0x00006592 File Offset: 0x00004792
|
|
public PngChunkIHDR(ImageInfo info)
|
|
: base("IHDR", info)
|
|
{
|
|
}
|
|
|
|
// Token: 0x06000170 RID: 368 RVA: 0x000065A0 File Offset: 0x000047A0
|
|
public override PngChunk.ChunkOrderingConstraint GetOrderingConstraint()
|
|
{
|
|
return PngChunk.ChunkOrderingConstraint.NA;
|
|
}
|
|
|
|
// Token: 0x06000171 RID: 369 RVA: 0x000065A4 File Offset: 0x000047A4
|
|
public override ChunkRaw CreateRawChunk()
|
|
{
|
|
ChunkRaw chunkRaw = new ChunkRaw(13, ChunkHelper.b_IHDR, true);
|
|
int num = 0;
|
|
PngHelperInternal.WriteInt4tobytes(this.Cols, chunkRaw.Data, num);
|
|
num += 4;
|
|
PngHelperInternal.WriteInt4tobytes(this.Rows, chunkRaw.Data, num);
|
|
num += 4;
|
|
chunkRaw.Data[num++] = (byte)this.Bitspc;
|
|
chunkRaw.Data[num++] = (byte)this.Colormodel;
|
|
chunkRaw.Data[num++] = (byte)this.Compmeth;
|
|
chunkRaw.Data[num++] = (byte)this.Filmeth;
|
|
chunkRaw.Data[num++] = (byte)this.Interlaced;
|
|
return chunkRaw;
|
|
}
|
|
|
|
// Token: 0x06000172 RID: 370 RVA: 0x00006650 File Offset: 0x00004850
|
|
public override void ParseFromRaw(ChunkRaw c)
|
|
{
|
|
if (c.Length != 13)
|
|
{
|
|
throw new PngjException("Bad IDHR len " + c.Length);
|
|
}
|
|
MemoryStream asByteStream = c.GetAsByteStream();
|
|
this.Cols = PngHelperInternal.ReadInt4(asByteStream);
|
|
this.Rows = PngHelperInternal.ReadInt4(asByteStream);
|
|
this.Bitspc = PngHelperInternal.ReadByte(asByteStream);
|
|
this.Colormodel = PngHelperInternal.ReadByte(asByteStream);
|
|
this.Compmeth = PngHelperInternal.ReadByte(asByteStream);
|
|
this.Filmeth = PngHelperInternal.ReadByte(asByteStream);
|
|
this.Interlaced = PngHelperInternal.ReadByte(asByteStream);
|
|
}
|
|
|
|
// Token: 0x06000173 RID: 371 RVA: 0x000066E0 File Offset: 0x000048E0
|
|
public override void CloneDataFromRead(PngChunk other)
|
|
{
|
|
PngChunkIHDR pngChunkIHDR = (PngChunkIHDR)other;
|
|
this.Cols = pngChunkIHDR.Cols;
|
|
this.Rows = pngChunkIHDR.Rows;
|
|
this.Bitspc = pngChunkIHDR.Bitspc;
|
|
this.Colormodel = pngChunkIHDR.Colormodel;
|
|
this.Compmeth = pngChunkIHDR.Compmeth;
|
|
this.Filmeth = pngChunkIHDR.Filmeth;
|
|
this.Interlaced = pngChunkIHDR.Interlaced;
|
|
}
|
|
|
|
// Token: 0x040000BB RID: 187
|
|
public const string ID = "IHDR";
|
|
}
|
|
}
|