在 Syncfusion DocIo .Net Core 中更改图像格式(S 图片)
Change format of image(WPicture) in Syncfusion DocIo .NetCore
我有一个 .net core 2 应用程序。我使用 syncfusion,用于处理 word 文档的 docIO 库。
我有一个 word 文档,我想将文档中所有图像的格式更改为 .png
我发现 WPicture 对象遍历段落:
if (paragraphItem is WPicture)
{
var wpicture = paragraphItem as WPicture;
var imageBytes = wpicture.ImageBytes;
}
如何更改 WPicture 对象的格式?
Essential DocIO 没有直接 API 来更改图像格式。由于 System.Drawing 命名空间在 ASP.NET 核心平台中不可用,您需要使用任何一种替代图像处理库(如 MSDN 中所述)来更改图片的图像格式。
这里,下面的示例代码使用了 CoreCompat 帮助程序库来更改图像格式:
WPicture picture = item as WPicture;
//Load the DocIO WPicture image bytes into CoreCompat Image instance.
Image image = Image.FromStream(new MemoryStream(picture.ImageBytes));
//Check image format, if format is other than png then convert the image as png format.
if (!image.RawFormat.Equals(ImageFormat.Png))
{
MemoryStream imageStream = new MemoryStream();
image.Save(imageStream, ImageFormat.Png);
//Load the png format image into DocIO WPicture instance.
picture.LoadImage(imageStream);
imageStream.Dispose();
}
//Resize the picture width and height.
picture.Width = 400;
picture.Height = 400;
我有一个 .net core 2 应用程序。我使用 syncfusion,用于处理 word 文档的 docIO 库。 我有一个 word 文档,我想将文档中所有图像的格式更改为 .png
我发现 WPicture 对象遍历段落:
if (paragraphItem is WPicture)
{
var wpicture = paragraphItem as WPicture;
var imageBytes = wpicture.ImageBytes;
}
如何更改 WPicture 对象的格式?
Essential DocIO 没有直接 API 来更改图像格式。由于 System.Drawing 命名空间在 ASP.NET 核心平台中不可用,您需要使用任何一种替代图像处理库(如 MSDN 中所述)来更改图片的图像格式。
这里,下面的示例代码使用了 CoreCompat 帮助程序库来更改图像格式:
WPicture picture = item as WPicture;
//Load the DocIO WPicture image bytes into CoreCompat Image instance.
Image image = Image.FromStream(new MemoryStream(picture.ImageBytes));
//Check image format, if format is other than png then convert the image as png format.
if (!image.RawFormat.Equals(ImageFormat.Png))
{
MemoryStream imageStream = new MemoryStream();
image.Save(imageStream, ImageFormat.Png);
//Load the png format image into DocIO WPicture instance.
picture.LoadImage(imageStream);
imageStream.Dispose();
}
//Resize the picture width and height.
picture.Width = 400;
picture.Height = 400;