コード例 #1
0
        public override bool Equals(System.Object object_Renamed)
        {
            bool isEqual = false;

            if (base.Equals(object_Renamed) && (object_Renamed is DefineBitsJPEG3))
            {
                DefineBitsJPEG3 defineBitsJPEG3 = (DefineBitsJPEG3)object_Renamed;

                if ((defineBitsJPEG3.alphaDataOffset == this.alphaDataOffset) && ArrayUtil.equals(defineBitsJPEG3.alphaData, this.alphaData))
                {
                    isEqual = true;
                }
            }

            return(isEqual);
        }
コード例 #2
0
		public override void  defineBitsJPEG3(DefineBitsJPEG3 tag)
		{
			tags.Add(tag);
		}
コード例 #3
0
		public virtual void  defineBitsJPEG3(DefineBitsJPEG3 tag)
		{
		}
コード例 #4
0
		private Tag decodeDefineJPEG3(int length)
		{
			DefineBitsJPEG3 t;
			t = new DefineBitsJPEG3();
			int pos = r.Offset;
			int id = r.readUI16();
			t.alphaDataOffset = r.readUI32();
			
			t.data = new byte[(int) t.alphaDataOffset];
			r.readFully(t.data);
			
			length -= (r.Offset - pos);
			byte[] temp = new byte[length];
			r.readFully(temp);
			
			SwfDecoder r1 = new SwfDecoder(new DeflateStream(new MemoryStream(temp), CompressionMode.Decompress, true), SwfVersion);
			
			int alpha, i = 0;
			byte[] alphaData = new byte[length];
			
			while ((alpha = r1.readUI8()) != - 1)
			{
				if (i == alphaData.Length)
				{
					byte[] b = new byte[i + length];
					Array.Copy(alphaData, 0, b, 0, alphaData.Length);
					alphaData = b;
				}
				alphaData[i] = (byte) alpha;
				i++;
			}
			
			t.alphaData = new byte[i];
			Array.Copy(alphaData, 0, t.alphaData, 0, i);
			
			dict.add(id, t);
			return t;
		}