Exemplo n.º 1
0
        private StciIndexedSubImage LoadSubImage(Ja2Data.StciSubImage aStciSubImage)
        {
            StciIndexedSubImage _subImage = new StciIndexedSubImage();

            if (aStciSubImage.AuxData != null)
            {
                AuxObjectData _auxData = this.LoadAuxData(aStciSubImage.AuxData);

                _subImage.AuxObjectData = _auxData;
                base.FAuxData.Add(_auxData);
            }

            UnstructuredData _data = new UnstructuredData();

            _data.Data        = aStciSubImage.ImageData;
            _data.UserId      = this.FUserId;
            _data.DateCreated = DateTime.Now;
            this.FUnstructuredData.Add(_data);
            _subImage.UnstructuredData = _data;

            _subImage.DataLength = aStciSubImage.Header.DataLength;
            _subImage.DataOffset = aStciSubImage.Header.DataOffset;
            _subImage.Height     = aStciSubImage.Header.Height;
            _subImage.OffsetX    = aStciSubImage.Header.OffsetX;
            _subImage.OffsetY    = aStciSubImage.Header.OffsetY;
            _subImage.Width      = aStciSubImage.Header.Width;

            _subImage.DateCreated = DateTime.Now;
            _subImage.UserId      = this.FUserId;

            return(_subImage);
        }
Exemplo n.º 2
0
        private byte[] DownloadStiIndexed(SlfRecordStci aStciRecord, int aDataLength)
        {
            Ja2Data.StciHeader _header = DownloadStciHeader(aStciRecord);

            StciIndexed _indexedRec = aStciRecord.StciIndexed.First();

            Ja2Data.StciIndexedHeader _subHeader = new Ja2Data.StciIndexedHeader((UInt16)_indexedRec.NumberOfSubImages);
            _subHeader.BlueDepth      = _indexedRec.BlueDepth;
            _subHeader.GreenDepth     = _indexedRec.GreenDepth;
            _subHeader.RedDepth       = _indexedRec.RedDepth;
            _subHeader.NumberOfColous = (uint)_indexedRec.NumberOfColours;

            _header.SubHeader = _subHeader;

            Ja2Data.StciSubImage[] _subImages = new Ja2Data.StciSubImage[_indexedRec.NumberOfSubImages];
            int i = 0;

            foreach (StciIndexedSubImage _subImage in _indexedRec.StciIndexedSubImage)
            {
                _subImages[i] = this.DownloadStciSubimage(_subImage);
                i++;
            }

            Ja2Data.StciIndexed _stciIndexed = new Ja2Data.StciIndexed(_header, _indexedRec.Palette, _subImages);

            byte[] _buffer = new byte[aDataLength];
            using (MemoryStream _ms = new MemoryStream(_buffer))
            {
                _stciIndexed.Save(_ms);
            }
            return(_buffer);
        }
Exemplo n.º 3
0
        private Ja2Data.StciSubImage DownloadStciSubimage(StciIndexedSubImage aSubImage)
        {
            Ja2Data.StciSubImageHeader _header = new Ja2Data.StciSubImageHeader();
            _header.DataLength = (uint)aSubImage.DataLength;
            _header.DataOffset = (uint)aSubImage.DataOffset;
            _header.Height     = (ushort)aSubImage.Height;
            _header.OffsetX    = (short)aSubImage.OffsetX;
            _header.OffsetY    = (short)aSubImage.OffsetY;
            _header.Width      = (ushort)aSubImage.Width;

            Ja2Data.StciSubImage _stciSubImage = new Ja2Data.StciSubImage(_header);
            _stciSubImage.ImageData = aSubImage.UnstructuredData.Data;
            if (aSubImage.AuxObjectData != null)
            {
                _stciSubImage.AuxData = this.DownloadAuxObjectData(aSubImage.AuxObjectData);
            }

            return(_stciSubImage);
        }