📄 escherrecorddata.java
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi
// Source File Name: EscherRecordData.java
package jxl.biff.drawing;
import common.Logger;
import jxl.biff.IntegerHelper;
// Referenced classes of package jxl.biff.drawing:
// EscherStream, EscherRecordType
final class EscherRecordData
{
private static Logger logger;
private int pos;
private int instance;
private int version;
private int recordId;
private int length;
private int streamLength;
private boolean container;
private EscherRecordType type;
private EscherStream escherStream;
static Class class$jxl$biff$drawing$EscherRecordData; /* synthetic field */
public EscherRecordData(EscherStream dg, int p)
{
escherStream = dg;
pos = p;
byte data[] = escherStream.getData();
streamLength = data.length;
int value = IntegerHelper.getInt(data[pos], data[pos + 1]);
instance = (value & 0xfff0) >> 4;
version = value & 0xf;
recordId = IntegerHelper.getInt(data[pos + 2], data[pos + 3]);
length = IntegerHelper.getInt(data[pos + 4], data[pos + 5], data[pos + 6], data[pos + 7]);
if(version == 15)
container = true;
else
container = false;
}
public EscherRecordData(EscherRecordType t)
{
type = t;
recordId = type.getValue();
}
public boolean isContainer()
{
return container;
}
public int getLength()
{
return length;
}
public int getRecordId()
{
return recordId;
}
EscherStream getDrawingGroup()
{
return escherStream;
}
int getPos()
{
return pos;
}
EscherRecordType getType()
{
if(type == null)
type = EscherRecordType.getType(recordId);
return type;
}
int getInstance()
{
return instance;
}
void setContainer(boolean c)
{
container = c;
}
void setInstance(int inst)
{
instance = inst;
}
void setLength(int l)
{
length = l;
}
void setVersion(int v)
{
version = v;
}
byte[] setHeaderData(byte d[])
{
byte data[] = new byte[d.length + 8];
System.arraycopy(d, 0, data, 8, d.length);
if(container)
version = 15;
int value = instance << 4;
value |= version;
IntegerHelper.getTwoBytes(value, data, 0);
IntegerHelper.getTwoBytes(recordId, data, 2);
IntegerHelper.getFourBytes(d.length, data, 4);
return data;
}
EscherStream getEscherStream()
{
return escherStream;
}
byte[] getBytes()
{
byte d[] = new byte[length];
System.arraycopy(escherStream.getData(), pos + 8, d, 0, length);
return d;
}
int getStreamLength()
{
return streamLength;
}
static Class class$(String x0)
{
return Class.forName(x0);
ClassNotFoundException x1;
x1;
throw new NoClassDefFoundError(x1.getMessage());
}
static
{
logger = Logger.getLogger(class$jxl$biff$drawing$EscherRecordData != null ? class$jxl$biff$drawing$EscherRecordData : (class$jxl$biff$drawing$EscherRecordData = class$("jxl.biff.drawing.EscherRecordData")));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -