diff --git a/framework/src/Volo.Abp.Imaging.ImageSharp/Volo.Abp.Imaging.ImageSharp.csproj b/framework/src/Volo.Abp.Imaging.ImageSharp/Volo.Abp.Imaging.ImageSharp.csproj
index bdc66961d2..50ebe11d50 100644
--- a/framework/src/Volo.Abp.Imaging.ImageSharp/Volo.Abp.Imaging.ImageSharp.csproj
+++ b/framework/src/Volo.Abp.Imaging.ImageSharp/Volo.Abp.Imaging.ImageSharp.csproj
@@ -4,7 +4,7 @@
- netstandard2.0;
+ net7.0
Volo.Abp.Imaging.ImageSharp
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
false
diff --git a/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpCompressOptions.cs b/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpCompressOptions.cs
index 3fc291da6f..b7c097324d 100644
--- a/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpCompressOptions.cs
+++ b/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpCompressOptions.cs
@@ -22,7 +22,7 @@ public class ImageSharpCompressOptions
PngEncoder = new PngEncoder {
CompressionLevel = PngCompressionLevel.BestCompression,
- IgnoreMetadata = true
+ SkipMetadata = true
};
WebpEncoder = new WebpEncoder {
diff --git a/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpImageCompressorContributor.cs b/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpImageCompressorContributor.cs
index a54d006b30..276b7aa6c0 100644
--- a/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpImageCompressorContributor.cs
+++ b/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpImageCompressorContributor.cs
@@ -34,14 +34,14 @@ public class ImageSharpImageCompressorContributor : IImageCompressorContributor,
return new ImageCompressResult(stream, ImageProcessState.Unsupported);
}
- var (image, format) = await Image.LoadWithFormatAsync(stream, cancellationToken);
+ var image = await Image.LoadAsync(stream, cancellationToken);
- if (!CanCompress(format.DefaultMimeType))
+ if (!CanCompress(image.Metadata.DecodedImageFormat!.DefaultMimeType))
{
return new ImageCompressResult(stream, ImageProcessState.Unsupported);
}
- var memoryStream = await GetStreamFromImageAsync(image, format, cancellationToken);
+ var memoryStream = await GetStreamFromImageAsync(image, image.Metadata.DecodedImageFormat, cancellationToken);
if (memoryStream.Length < stream.Length)
{
diff --git a/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpImageResizerContributor.cs b/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpImageResizerContributor.cs
index d2ac92eaf7..7710484449 100644
--- a/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpImageResizerContributor.cs
+++ b/framework/src/Volo.Abp.Imaging.ImageSharp/Volo/Abp/Imaging/ImageSharpImageResizerContributor.cs
@@ -24,9 +24,9 @@ public class ImageSharpImageResizerContributor : IImageResizerContributor, ITran
return new ImageResizeResult(stream, ImageProcessState.Unsupported);
}
- var (image, format) = await Image.LoadWithFormatAsync(stream, cancellationToken);
+ var image = await Image.LoadAsync(stream, cancellationToken);
- if (!CanResize(format.DefaultMimeType))
+ if (!CanResize(image.Metadata.DecodedImageFormat!.DefaultMimeType))
{
return new ImageResizeResult(stream, ImageProcessState.Unsupported);
}
@@ -44,7 +44,7 @@ public class ImageSharpImageResizerContributor : IImageResizerContributor, ITran
try
{
- await image.SaveAsync(memoryStream, format, cancellationToken: cancellationToken);
+ await image.SaveAsync(memoryStream, image.Metadata.DecodedImageFormat, cancellationToken: cancellationToken);
memoryStream.Position = 0;
return new ImageResizeResult(memoryStream, ImageProcessState.Done);
}
diff --git a/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Files/ImageFormatHelper.cs b/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Files/ImageFormatHelper.cs
index 9fccb1e03a..32060bf501 100644
--- a/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Files/ImageFormatHelper.cs
+++ b/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Files/ImageFormatHelper.cs
@@ -10,9 +10,9 @@ namespace Volo.Blogging.Areas.Blog.Helpers
{
public static IImageFormat GetImageRawFormat(Stream stream)
{
- using (var image = Image.Load(stream, out var imageFormat))
+ using (var image = Image.Load(stream))
{
- return imageFormat;
+ return image.Metadata.DecodedImageFormat;
}
}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Security/Captcha/SimpleMathsCaptchaGenerator.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Security/Captcha/SimpleMathsCaptchaGenerator.cs
index 220e24f892..7255b6b195 100644
--- a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Security/Captcha/SimpleMathsCaptchaGenerator.cs
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Security/Captcha/SimpleMathsCaptchaGenerator.cs
@@ -109,7 +109,7 @@ public class SimpleMathsCaptchaGenerator : ISingletonDependency
var random = new Random();
var startWith = (byte)random.Next(5, 10);
image.Mutate(ctx => ctx.BackgroundColor(Color.Transparent));
- var fontFamily = SystemFonts.Families.FirstOrDefault(x => x.IsStyleAvailable(options.FontStyle))?.Name ?? SystemFonts.Families.First().Name;
+ var fontFamily = SystemFonts.Families.FirstOrDefault(x => x.GetAvailableStyles().Contains(options.FontStyle)).Name ?? SystemFonts.Families.First().Name;
var font = SystemFonts.CreateFont(fontFamily, options.FontSize, options.FontStyle);
foreach (var character in stringText)
@@ -118,7 +118,10 @@ public class SimpleMathsCaptchaGenerator : ISingletonDependency
var color = options.TextColor[random.Next(0, options.TextColor.Length)];
var location = new PointF(startWith + position, random.Next(6, 13));
image.Mutate(ctx => ctx.DrawText(text, font, color, location));
- position += TextMeasurer.Measure(character.ToString(), new RendererOptions(font, location)).Width;
+ position += TextMeasurer.MeasureSize(character.ToString(), new TextOptions (font)
+ {
+ Origin = location
+ }).Width;
}
//add rotation
@@ -126,7 +129,7 @@ public class SimpleMathsCaptchaGenerator : ISingletonDependency
image.Mutate(ctx => ctx.Transform(rotation));
// add the dynamic image to original image
- var size = (ushort)TextMeasurer.Measure(stringText, new RendererOptions(font)).Width;
+ var size = (ushort)TextMeasurer.MeasureSize(stringText, new TextOptions(font)).Width;
var img = new Image(size + 15, options.Height);
img.Mutate(ctx => ctx.BackgroundColor(Color.White));
@@ -139,7 +142,7 @@ public class SimpleMathsCaptchaGenerator : ISingletonDependency
var y1 = random.Next(0, img.Height);
img.Mutate(ctx =>
- ctx.DrawLines(options.TextColor[random.Next(0, options.TextColor.Length)],
+ ctx.DrawLine(options.TextColor[random.Next(0, options.TextColor.Length)],
RandomTextGenerator.GenerateNextFloat(options.MinLineThickness, options.MaxLineThickness),
new PointF[] { new PointF(x0, y0), new PointF(x1, y1) })
);
@@ -153,7 +156,7 @@ public class SimpleMathsCaptchaGenerator : ISingletonDependency
var y0 = random.Next(0, img.Height);
img.Mutate(
ctx => ctx
- .DrawLines(options.NoiseRateColor[random.Next(0, options.NoiseRateColor.Length)],
+ .DrawLine(options.NoiseRateColor[random.Next(0, options.NoiseRateColor.Length)],
RandomTextGenerator.GenerateNextFloat(0.5, 1.5), new PointF[] { new Vector2(x0, y0), new Vector2(x0, y0) })
);
});