我在团块图像和欲读取的图像的尺寸(宽度和高度)
这是我从功能BLOB阅读:
private static CloudBlockBlob ReadBlockBlob(string input, IConfigurationRoot config)
{
CloudStorageAccount storageAccount = new CloudStorageAccount(
new Microsoft.WindowsAzure.Storage.Auth.StorageCredentials(config["storageAccountName"], config["storageKeyValue"]), true);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(config["blobContainer"]);
return container.GetBlockBlobReference(input);
}
我看不出在CloudBlobContainer也不CloudBlockBlob任何有用的元数据。
任何想法如何从BLOB获取图像的尺寸是多少?
谢谢
你不能直接获得图像的尺寸为BLOB通过Blob的属性和元数据的Azure存储存在。唯一的办法就是下载图像斑点,并将其转换通过方法System.Drawing.Image
或System.Drawing.Image.FromFile
得到System.Drawing.Image.FromStream
&Image.Width
到Image.Height
。
否则,您必须先添加一个blob上传图像时,存储图像尺寸数据的元数据。然后,你可以从一个BLOB元数据的图像的尺寸,而无需下载。我推荐这种方式,以避免下载那些大的图像。