Skip to content

Commit 5545589

Browse files
committed
Fix QR/BarCode Errors
1 parent 9a9849b commit 5545589

9 files changed

Lines changed: 36 additions & 305 deletions

File tree

dev/DevWinUI.Base/Common/QRCode/BarcodePngOptions.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ public sealed partial class BarcodePngOptions
1414
public int QuietZoneModules { get; set; } = 10;
1515

1616
/// <summary>Gets or sets the color for dark modules. Default is <see cref="Color.Black"/>.</summary>
17-
public Color DarkColor { get; set; } = Color.Black;
17+
public Color DarkColor { get; set; } = Colors.Black;
1818

1919
/// <summary>Gets or sets the color for light modules. Default is <see cref="Color.White"/>.</summary>
20-
public Color LightColor { get; set; } = Color.White;
20+
public Color LightColor { get; set; } = Colors.White;
2121
}

dev/DevWinUI.Base/Common/QRCode/BarcodePngRenderer.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -99,10 +99,10 @@ private static byte[] CreateImageData(Barcode barcode, int width, int height, Ba
9999

100100
var color = isDark ? options.DarkColor : options.LightColor;
101101
var pixelOffset = rowOffset + 1 + (col * 4);
102-
result[pixelOffset] = color.Red;
103-
result[pixelOffset + 1] = color.Green;
104-
result[pixelOffset + 2] = color.Blue;
105-
result[pixelOffset + 3] = color.Alpha;
102+
result[pixelOffset] = color.R;
103+
result[pixelOffset + 1] = color.G;
104+
result[pixelOffset + 2] = color.B;
105+
result[pixelOffset + 3] = color.A;
106106
}
107107
}
108108

dev/DevWinUI.Base/Common/QRCode/BarcodeSvgOptions.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ public sealed partial class BarcodeSvgOptions
1515
public int QuietZoneModules { get; set; } = 10;
1616

1717
/// <summary>Gets or sets the color for dark modules. Default is <see cref="Color.Black"/>.</summary>
18-
public Color DarkColor { get; set; } = Color.Black;
18+
public Color DarkColor { get; set; } = Colors.Black;
1919

2020
/// <summary>Gets or sets the color for light modules. Default is <see cref="Color.White"/>.</summary>
21-
public Color LightColor { get; set; } = Color.White;
21+
public Color LightColor { get; set; } = Colors.White;
2222
}

dev/DevWinUI.Base/Common/QRCode/Color.cs

Lines changed: 0 additions & 288 deletions
This file was deleted.

dev/DevWinUI.Base/Common/QRCode/Internal/BitBuffer.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
namespace DevWinUI;
1+
using System.Diagnostics.CodeAnalysis;
2+
3+
namespace DevWinUI;
24

35
internal sealed partial class BitBuffer
46
{
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
using System.Globalization;
2+
3+
namespace DevWinUI;
4+
5+
internal static partial class SVGColorHelper
6+
{
7+
public static string ToCssString(this Color color)
8+
{
9+
if (color.A is byte.MaxValue)
10+
{
11+
return $"#{color.R:x2}{color.G:x2}{color.B:x2}";
12+
}
13+
14+
var alpha = (color.A / 255d).ToString("0.###", CultureInfo.InvariantCulture);
15+
return $"rgba({color.R},{color.G},{color.B},{alpha})";
16+
}
17+
}

dev/DevWinUI.Base/Common/QRCode/QRCodePngOptions.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ public sealed partial class QRCodePngOptions
1212
public int QuietZoneModules { get; set; } = 4;
1313

1414
/// <summary>Gets or sets the color for dark modules. Default is <see cref="Color.Black"/>.</summary>
15-
public Color DarkColor { get; set; } = Color.Black;
15+
public Color DarkColor { get; set; } = Colors.Black;
1616

1717
/// <summary>Gets or sets the color for light modules. Default is <see cref="Color.White"/>.</summary>
18-
public Color LightColor { get; set; } = Color.White;
18+
public Color LightColor { get; set; } = Colors.White;
1919
}

dev/DevWinUI.Base/Common/QRCode/QRCodePngRenderer.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,10 +88,10 @@ private static byte[] CreateImageData(QRCode qrCode, int width, int height, QRCo
8888
&& qrCode[sourceRow, sourceCol];
8989
var color = isDark ? options.DarkColor : options.LightColor;
9090
var pixelOffset = rowOffset + 1 + (col * 4);
91-
result[pixelOffset] = color.Red;
92-
result[pixelOffset + 1] = color.Green;
93-
result[pixelOffset + 2] = color.Blue;
94-
result[pixelOffset + 3] = color.Alpha;
91+
result[pixelOffset] = color.R;
92+
result[pixelOffset + 1] = color.G;
93+
result[pixelOffset + 2] = color.B;
94+
result[pixelOffset + 3] = color.A;
9595
}
9696
}
9797

dev/DevWinUI.Base/Common/QRCode/QRCodeSvgOptions.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ public sealed partial class QRCodeSvgOptions
1212
public int QuietZoneModules { get; set; } = 4;
1313

1414
/// <summary>Gets or sets the color for dark modules. Default is <see cref="Color.Black"/>.</summary>
15-
public Color DarkColor { get; set; } = Color.Black;
15+
public Color DarkColor { get; set; } = Colors.Black;
1616

1717
/// <summary>Gets or sets the color for light modules. Default is <see cref="Color.White"/>.</summary>
18-
public Color LightColor { get; set; } = Color.White;
18+
public Color LightColor { get; set; } = Colors.White;
1919

2020
/// <summary>Gets or sets the image source for a centered logo in the SVG output (for example, a URL or a data URI).</summary>
2121
/// <remarks>Logo rendering is only supported by the SVG renderer.</remarks>

0 commit comments

Comments
 (0)