// // Copyright (c) James Jackson-South and contributors. // Licensed under the Apache License, Version 2.0. // namespace SixLabors.ImageSharp.Benchmarks.Image { using System.Collections.Generic; using System.IO; using BenchmarkDotNet.Attributes; using ImageSharp.Formats; using ImageSharp.Formats.Jpeg.GolangPort; using ImageSharp.PixelFormats; using SixLabors.ImageSharp.Formats.Jpeg; using CoreImage = ImageSharp.Image; [Config(typeof(Config.Short))] public class DecodeJpegMultiple : MultiImageBenchmarkBase { protected override IEnumerable InputImageSubfoldersOrFiles => new[] { "Jpg/baseline", "Jpg/progressive", }; protected override IEnumerable SearchPatterns => new[] { "*.jpg" }; [Benchmark(Description = "DecodeJpegMultiple - ImageSharp")] public void DecodeJpegImageSharpNwq() { this.ForEachStream( ms => CoreImage.Load(ms) ); } [Benchmark(Baseline = true, Description = "DecodeJpegMultiple - System.Drawing")] public void DecodeJpegSystemDrawing() { this.ForEachStream( System.Drawing.Image.FromStream ); } } }