private string GetDescription(TagTable tagTable)
 {
     //get entry with profileDescriptionTag signature
     TagTableEntry profDesc = tagTable.tagTbEntry.Where(x => x.TagSignature == TagSignatureEnum.profileDescriptionTag).FirstOrDefault();
     //multiLocalizedUnicode string or not
     TypeSignatureEnum type = (TypeSignatureEnum)Utils.uInt32Number((int)profDesc.OffsetOfBegin);
     TextDescription txtDesc = new TextDescription(type,profDesc);
     return txtDesc.Text.Trim(new char[] { '\0' });//del extra characters
 }
 private string GetNumComponents(TagTable tagTable)
 {
     //a three-component matrix-based Input profile shall contain the redMatrixColumnTag
     if (tagTable.tagTbEntry.Any(x=>x.TagSignature==TagSignatureEnum.redMatrixColumnTag))
     {return "3";}
     //a monochrome Input profile shall contain the grayTRCTag
     else if(tagTable.tagTbEntry.Any(x=>x.TagSignature==TagSignatureEnum.grayTRCTag))
     {return "1";}
     else {return "N";}
 }
 public ICCProfile(byte[] dataByte)
 {
     DataProfile = dataByte;
     tagTable = new TagTable(DataProfile);
 }