public static JObject IntoJObject(DataSpan input)
        {
            var mem    = new MemoryStream(input.Buffer, input.Start, input.Length, false);
            var intput = new StreamReader(mem);

            return(IntoJObject(intput));
        }
示例#2
0
文件: TexFile.cs 项目: takhlaq/Lumina
        public override void LoadFile()
        {
            BinaryReader br = new BinaryReader(new MemoryStream(Data));

            Header = br.ReadStructure <TexHeader>();

            ImageData = Convert(DataSpan.Slice(HeaderLength), Header.Width, Header.Height);
        }
示例#3
0
 public DataSpan Recompress(DataSpan imageData, MagickFormat format = MagickFormat.Jpeg)
 {
     using (var img = new MagickImage(imageData.FullBufferRef))
     {
         img.Format = format;
         return(new DataSpan(img.ToByteArray()));
     }
 }
示例#4
0
文件: TexFile.cs 项目: akuseru/Lumina
        public override void LoadFile()
        {
            Reader.BaseStream.Position = 0;
            Header = Reader.ReadStructure <TexHeader>();

            // todo: this isn't correct and reads out the whole data portion as 1 image instead of accounting for lod levels
            // probably a breaking change to fix this
            ImageData = Convert(DataSpan.Slice(HeaderLength), Header.Width, Header.Height);
        }
示例#5
0
 public DataSpan Resize(DataSpan imageData, int width, int height, MagickFormat format = MagickFormat.Jpeg)
 {
     using (var img = new MagickImage(imageData.FullBufferRef))
     {
         img.Resize(width, height);
         img.Format = format;
         return(new DataSpan(img.ToByteArray()));
     }
 }
示例#6
0
 public static string CalculateMurmurHash(DataSpan data)
 {
     return(MurmurHash64B_Hybrid(data.Buffer, data.Length, data.Start).ToString());
 }
示例#7
0
 public static async Task <Result <BlobContentInfo, Error> > UploadBinaryAsync(this BlobContainer container, string blockName, DataSpan data)
 {
     try
     {
         return(await container.CloudContainer.UploadAsync(blockName, data));
     }
     catch (Exception ex)
     {
         return(ErrorCodes.ServerError.IntoError($"Could not save {blockName}: {ex}"));
     }
 }