From b857151bdc54c273bdbb7cadcc527ecfcdc1a5a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=89=BE=E7=AB=B9?= Date: Wed, 25 Jan 2023 17:04:56 +0800 Subject: [PATCH] =?UTF-8?q?zxing.net=E5=BC=95=E7=94=A8=20=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AIStudio.Wpf.DiagramApp.csproj | 6 ---- ...dio.Wpf.DiagramDesigner.Additionals.csproj | 7 +--- .../Controls/Barcode.xaml.cs | 34 ++++++++++++------- 3 files changed, 22 insertions(+), 25 deletions(-) diff --git a/AIStudio.Wpf.DiagramApp/AIStudio.Wpf.DiagramApp.csproj b/AIStudio.Wpf.DiagramApp/AIStudio.Wpf.DiagramApp.csproj index 6ffbb62..e1a927f 100644 --- a/AIStudio.Wpf.DiagramApp/AIStudio.Wpf.DiagramApp.csproj +++ b/AIStudio.Wpf.DiagramApp/AIStudio.Wpf.DiagramApp.csproj @@ -127,12 +127,6 @@ - - - ..\AIStudio.Wpf.DiagramDesigner.Additionals\DLL\zxing.core.dll - - - diff --git a/AIStudio.Wpf.DiagramDesigner.Additionals/AIStudio.Wpf.DiagramDesigner.Additionals.csproj b/AIStudio.Wpf.DiagramDesigner.Additionals/AIStudio.Wpf.DiagramDesigner.Additionals.csproj index 46ef60d..d86ce72 100644 --- a/AIStudio.Wpf.DiagramDesigner.Additionals/AIStudio.Wpf.DiagramDesigner.Additionals.csproj +++ b/AIStudio.Wpf.DiagramDesigner.Additionals/AIStudio.Wpf.DiagramDesigner.Additionals.csproj @@ -18,6 +18,7 @@ + @@ -31,10 +32,4 @@ - - - DLL\zxing.core.dll - - - diff --git a/AIStudio.Wpf.DiagramDesigner.Additionals/Controls/Barcode.xaml.cs b/AIStudio.Wpf.DiagramDesigner.Additionals/Controls/Barcode.xaml.cs index f2e22a0..e6da408 100644 --- a/AIStudio.Wpf.DiagramDesigner.Additionals/Controls/Barcode.xaml.cs +++ b/AIStudio.Wpf.DiagramDesigner.Additionals/Controls/Barcode.xaml.cs @@ -1,20 +1,13 @@ using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; -using System.Windows.Data; -using System.Windows.Documents; -using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; -using System.Windows.Navigation; -using System.Windows.Shapes; using WpfAnimatedGif; using ZXing; +#if !NET5_0_OR_GREATER using ZXing.Presentation; +#endif namespace AIStudio.Wpf.DiagramDesigner.Additionals.Controls { @@ -29,7 +22,7 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Controls } public static readonly DependencyProperty TextProperty = DependencyProperty.Register( - "Text", typeof(string), typeof(Barcode), new FrameworkPropertyMetadata( + nameof(Text), typeof(string), typeof(Barcode), new FrameworkPropertyMetadata( string.Empty, FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender, OnFormattedTextInvalidated)); @@ -41,7 +34,7 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Controls } public static readonly DependencyProperty FormatProperty = DependencyProperty.Register( - "Format", typeof(BarcodeFormat), typeof(Barcode), new FrameworkPropertyMetadata( + nameof(Format), typeof(BarcodeFormat), typeof(Barcode), new FrameworkPropertyMetadata( BarcodeFormat.QR_CODE, FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender, OnFormattedTextInvalidated)); @@ -53,7 +46,7 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Controls } public static readonly DependencyProperty SizeProperty = DependencyProperty.Register( - "Size", typeof(double), typeof(Barcode), new FrameworkPropertyMetadata( + nameof(Size), typeof(double), typeof(Barcode), new FrameworkPropertyMetadata( 512d, FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender, OnFormattedTextInvalidated)); @@ -65,7 +58,7 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Controls } public static readonly DependencyProperty IconProperty = DependencyProperty.Register( - "Icon", typeof(string), typeof(Barcode), new FrameworkPropertyMetadata(null, OnIconChanged)); + nameof(Icon), typeof(string), typeof(Barcode), new FrameworkPropertyMetadata(null, OnIconChanged)); public string Icon { @@ -112,6 +105,20 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Controls private void OnFormattedTextInvalidated() { +#if NET5_0_OR_GREATER + var writer = new BarcodeWriter() + { + Format = Format, + Options = new ZXing.Common.EncodingOptions + { + Height = (int)this.Size, + Width = (int)this.Size, + Margin = 0 + } + }; + var image = writer.Write(Text ?? "AIStudio画板"); + imageBarcodeEncoderGeometry.Data = image; +#else var writer = new BarcodeWriterGeometry { Format = Format, @@ -124,6 +131,7 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Controls }; var image = writer.Write(Text ?? "AIStudio画板"); imageBarcodeEncoderGeometry.Data = image; +#endif } } }