public void read(String acbFile) {
try {
FileInputStream fis = new FileInputStream(new File(acbFile));
header = new ACBHeader();
StructUnpacker up = JavaStruct.getUnpacker(fis,
ByteOrder.BIG_ENDIAN);
up.readObject(header);
switch (header.ColorSpaceID) {
case ACBHeader.RGB:
rgbColors = new RGBColor[header.colorCount];
for (int i = 0; i < header.colorCount; i++) {
rgbColors[i] = new RGBColor();
up.readObject(rgbColors[i]);
}
break;
case ACBHeader.CMYK:
cmykColors = new CMYKColor[header.colorCount];
for (int i = 0; i < header.colorCount; i++) {
cmykColors[i] = new CMYKColor();
up.readObject(cmykColors[i]);
}
break;
case ACBHeader.LAB:
labColors = new LabColor[header.colorCount];
for (int i = 0; i < header.colorCount; i++) {
labColors[i] = new LabColor();
up.readObject(labColors[i]);
}
break;
default:
}
} catch (FileNotFoundException e) {