我有一些代码来转换一个图像,它现在正在工作,但是生成的图像的宽度非常小。我想强迫它使用宽度为600 to。我的代码如下所示:
public async Task<string> ConvertImage(byte[] data)
{
// Create our settings
var settings = new MagickReadSettings
{
Width = 600
};
// Create our image
using (var image = new MagickImage(data, settings))
{
// Create a new memory stream
using (var memoryStream = new MemoryStream())
{
// Set to a png
image.Format = MagickFormat.Png;
image.Write(memoryStream);
memoryStream.Position = 0;
// Create a new blob block to hold our image
var blockBlob = container.GetBlockBlobReference(Guid.NewGuid().ToString() + ".png");
// Upload to azure
await blockBlob.UploadFromStreamAsync(memoryStream);
// Return the blobs url
return blockBlob.StorageUri.PrimaryUri.ToString();
}
}
}我上传的图像是一个AI文件,但当它被转换时,它只有64 it宽。有人知道为什么我能修好吗?
发布于 2016-03-05 23:25:57
对于当前版本的Magick.NET,这是预期的行为。但是在看到您的帖子之后,我们对ImageMagick/Magick.NET做了一些更改,使用Magick.NET 7.0.0.0103和更高版本,您将得到一个符合您指定的宽度和高度的边界内的图像。因此,当您指定宽度为600时,您将得到一个600像素宽的图像。
https://stackoverflow.com/questions/35601899
复制相似问题