Skip to content

Commit 142b954

Browse files
committed
fixed GetJpeg
1 parent 072500e commit 142b954

File tree

5 files changed

+30
-9
lines changed

5 files changed

+30
-9
lines changed

example/SlideViewer/SlideViewer.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
<TargetFrameworks>net48;netcoreapp3.1</TargetFrameworks>
66
<UseWPF>true</UseWPF>
77
<PackageLicenseExpression>MIT</PackageLicenseExpression>
8+
<Version>1.1.1</Version>
89
</PropertyGroup>
910

1011
<ItemGroup>

src/OpenSlideSharp.BruTile/OpenSlideSharp.BruTile.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<PackageReleaseNotes>OpenSlideSharp for BruTile</PackageReleaseNotes>
1414
<Description>OpenSlideSharp for BruTile</Description>
1515
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
16-
<Version>1.1.0</Version>
16+
<Version>1.1.1</Version>
1717
</PropertyGroup>
1818

1919
<ItemGroup>

src/OpenSlideSharp.BruTile/Utilities.cs

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
using System;
44
using System.Collections.Generic;
55
using System.Linq;
6-
using Range = OpenCvSharp.Range;
76

87
namespace OpenSlideSharp.BruTile
98
{
@@ -53,6 +52,7 @@ public static unsafe byte[] GetJpeg(byte[] bgraBytes, int bytesPerPixel, int byt
5352
var scalar = new Scalar((int)(background >> 24 & 0xFF), (int)(background >> 16 & 0xFF), (int)(background >> 8 & 0xFF), (int)(background & 0xFF));
5453
using (var dst = new Mat(dstHeight, dstWidth, pixel, scalar))
5554
{
55+
src.SaveImage($"{Guid.NewGuid()}.jpg");
5656
DrawImage(src, dst);
5757
return dst.ToBytes(".jpg", prms);
5858
}
@@ -71,11 +71,21 @@ private static void DrawImage(Mat src, Mat dst)
7171
var fx = (double)dst.Width / src.Width;
7272
var fy = (double)dst.Height / src.Height;
7373
var fmin = Math.Min(fx, fy);
74-
using (var srcResized = src.Resize(new Size(src.Width * fmin, src.Height * fmin)))
74+
if (fmin < 1) // src > dst
7575
{
76-
using (var sub = new Mat(dst, new Rect(0, 0, srcResized.Width, srcResized.Height)))
76+
using (var srcResized = src.Resize(new Size(src.Width * fmin, src.Height * fmin)))
7777
{
78-
srcResized.CopyTo(sub);
78+
using (var sub = new Mat(dst, new Rect(0, 0, srcResized.Width, srcResized.Height)))
79+
{
80+
srcResized.CopyTo(sub);
81+
}
82+
}
83+
}
84+
else // src <= dst
85+
{
86+
using (var sub = new Mat(dst, new Rect(0, 0, src.Width, src.Height)))
87+
{
88+
src.CopyTo(sub);
7989
}
8090
}
8191
}

src/OpenSlideSharp.OpencvExtensions/JpegExtensions.cs

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,11 +69,21 @@ private static void DrawImage(Mat src, Mat dst)
6969
var fx = (double)dst.Width / src.Width;
7070
var fy = (double)dst.Height / src.Height;
7171
var fmin = Math.Min(fx, fy);
72-
using (var srcResized = src.Resize(new Size(src.Width * fmin, src.Height * fmin)))
72+
if (fmin < 1) // src > dst
7373
{
74-
using (var sub = new Mat(dst, new Rect(0, 0, srcResized.Width, srcResized.Height)))
74+
using (var srcResized = src.Resize(new Size(src.Width * fmin, src.Height * fmin)))
7575
{
76-
srcResized.CopyTo(sub);
76+
using (var sub = new Mat(dst, new Rect(0, 0, srcResized.Width, srcResized.Height)))
77+
{
78+
srcResized.CopyTo(sub);
79+
}
80+
}
81+
}
82+
else // src <= dst
83+
{
84+
using (var sub = new Mat(dst, new Rect(0, 0, src.Width, src.Height)))
85+
{
86+
src.CopyTo(sub);
7787
}
7888
}
7989
}

src/OpenSlideSharp.OpencvExtensions/OpenSlideSharp.OpencvExtensions.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
<PackageReleaseNotes>OpenSlideSharp opencv extensions</PackageReleaseNotes>
1313
<Description>OpenSlideSharp opencv mat extensions</Description>
1414
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
15-
<Version>1.1.0</Version>
15+
<Version>1.1.1</Version>
1616
</PropertyGroup>
1717

1818

0 commit comments

Comments
 (0)