public bool set(byte[] src) { try { MyDeal.setTByBytes(ref manufacturer, src, 0); MyDeal.setTByBytes(ref version, src, 1); MyDeal.setTByBytes(ref encoding, src, 2); MyDeal.setTByBytes(ref bitsPerPixel, src, 3); MyDeal.setTByBytes(ref Xmin, src, 4); MyDeal.setTByBytes(ref Ymin, src, 6); MyDeal.setTByBytes(ref Xmax, src, 8); MyDeal.setTByBytes(ref Ymax, src, 10); MyDeal.setTByBytes(ref Hdpi, src, 12); MyDeal.setTByBytes(ref Vdpi, src, 14); MyDeal.setBytesByBytes(ref colorMap, src, 16, 48); MyDeal.setTByBytes(ref reserved, src, 64); MyDeal.setTByBytes(ref nPlanes, src, 65); MyDeal.setTByBytes(ref bytesPerLine, src, 66); MyDeal.setTByBytes(ref paletteInfo, src, 68); MyDeal.setTByBytes(ref hScreenSize, src, 70); MyDeal.setTByBytes(ref vScreenSize, src, 72); MyDeal.setBytesByBytes(ref filler, src, 74, 54); } catch (Exception e) { Debug.Print(e.ToString()); return(false); } return(true); }
void setAllByBytes(byte[] bytes, int byteSize) { header.set(bytes); switch (header.nPlanes) { case 1: MyDeal.setBytesByBytes(ref data, bytes, headerSize, byteSize - palette256Space - headerSize); //set data MyDeal.setBytesByBytes(ref colorPalette, bytes, byteSize - palette256Space, palette256Space); //set palette setPalette(); break; case 3: MyDeal.setBytesByBytes(ref data, bytes, headerSize, byteSize - headerSize); //set data colorPalette = null; setPalette(); break; default: MyDeal.setBytesByBytes(ref data, bytes, headerSize, byteSize - palette256Space - headerSize); //set data MyDeal.setBytesByBytes(ref colorPalette, bytes, byteSize - palette256Space, palette256Space); //set palette setPalette(); break; } }