Files
2026-06-04 11:42:34 +02:00

108 lines
2.7 KiB
C#

using System;
namespace Hjg.Pngcs.Chunks
{
// Token: 0x02000013 RID: 19
public class PngChunkOFFS : PngChunkSingle
{
// Token: 0x06000082 RID: 130 RVA: 0x000035E8 File Offset: 0x000017E8
public PngChunkOFFS(ImageInfo info)
: base("oFFs", info)
{
}
// Token: 0x06000083 RID: 131 RVA: 0x000035F6 File Offset: 0x000017F6
public override PngChunk.ChunkOrderingConstraint GetOrderingConstraint()
{
return PngChunk.ChunkOrderingConstraint.BEFORE_IDAT;
}
// Token: 0x06000084 RID: 132 RVA: 0x000035FC File Offset: 0x000017FC
public override ChunkRaw CreateRawChunk()
{
ChunkRaw chunkRaw = base.createEmptyChunk(9, true);
PngHelperInternal.WriteInt4tobytes((int)this.posX, chunkRaw.Data, 0);
PngHelperInternal.WriteInt4tobytes((int)this.posY, chunkRaw.Data, 4);
chunkRaw.Data[8] = (byte)this.units;
return chunkRaw;
}
// Token: 0x06000085 RID: 133 RVA: 0x0000364C File Offset: 0x0000184C
public override void ParseFromRaw(ChunkRaw chunk)
{
if (chunk.Length != 9)
{
throw new PngjException("bad chunk length " + chunk);
}
this.posX = (long)PngHelperInternal.ReadInt4fromBytes(chunk.Data, 0);
if (this.posX < 0L)
{
this.posX += 4294967296L;
}
this.posY = (long)PngHelperInternal.ReadInt4fromBytes(chunk.Data, 4);
if (this.posY < 0L)
{
this.posY += 4294967296L;
}
this.units = PngHelperInternal.ReadInt1fromByte(chunk.Data, 8);
}
// Token: 0x06000086 RID: 134 RVA: 0x000036EC File Offset: 0x000018EC
public override void CloneDataFromRead(PngChunk other)
{
PngChunkOFFS pngChunkOFFS = (PngChunkOFFS)other;
this.posX = pngChunkOFFS.posX;
this.posY = pngChunkOFFS.posY;
this.units = pngChunkOFFS.units;
}
// Token: 0x06000087 RID: 135 RVA: 0x00003724 File Offset: 0x00001924
public int GetUnits()
{
return this.units;
}
// Token: 0x06000088 RID: 136 RVA: 0x0000372C File Offset: 0x0000192C
public void SetUnits(int units)
{
this.units = units;
}
// Token: 0x06000089 RID: 137 RVA: 0x00003735 File Offset: 0x00001935
public long GetPosX()
{
return this.posX;
}
// Token: 0x0600008A RID: 138 RVA: 0x0000373D File Offset: 0x0000193D
public void SetPosX(long posX)
{
this.posX = posX;
}
// Token: 0x0600008B RID: 139 RVA: 0x00003746 File Offset: 0x00001946
public long GetPosY()
{
return this.posY;
}
// Token: 0x0600008C RID: 140 RVA: 0x0000374E File Offset: 0x0000194E
public void SetPosY(long posY)
{
this.posY = posY;
}
// Token: 0x0400004C RID: 76
public const string ID = "oFFs";
// Token: 0x0400004D RID: 77
private long posX;
// Token: 0x0400004E RID: 78
private long posY;
// Token: 0x0400004F RID: 79
private int units;
}
}