├── .gitignore ├── Capture.Vision.Maui.Example ├── Resources │ ├── Fonts │ │ ├── OpenSans-Regular.ttf │ │ └── OpenSans-Semibold.ttf │ ├── AppIcon │ │ ├── appicon.svg │ │ └── appiconfg.svg │ ├── Raw │ │ └── AboutAssets.txt │ ├── Splash │ │ └── splash.svg │ ├── Styles │ │ ├── Colors.xaml │ │ └── Styles.xaml │ └── Images │ │ └── dotnet_bot.svg ├── Properties │ └── launchSettings.json ├── AppShell.xaml.cs ├── Platforms │ ├── Android │ │ ├── Resources │ │ │ └── values │ │ │ │ └── colors.xml │ │ ├── MainApplication.cs │ │ ├── AndroidManifest.xml │ │ └── MainActivity.cs │ ├── iOS │ │ ├── AppDelegate.cs │ │ ├── Program.cs │ │ └── Info.plist │ ├── MacCatalyst │ │ ├── AppDelegate.cs │ │ ├── Program.cs │ │ └── Info.plist │ ├── Windows │ │ ├── App.xaml │ │ ├── app.manifest │ │ ├── App.xaml.cs │ │ └── Package.appxmanifest │ └── Tizen │ │ ├── Main.cs │ │ └── tizen-manifest.xml ├── App.xaml.cs ├── README.md ├── AppShell.xaml ├── MainPage.xaml ├── App.xaml ├── MauiProgram.cs ├── Capture.Vision.Maui.Example.csproj.user ├── MainPage.xaml.cs ├── Capture.Vision.Maui.Example.sln ├── CameraPage.xaml ├── Capture.Vision.Maui.Example.csproj └── CameraPage.xaml.cs ├── Capture.Vision.Maui ├── BarcodeResult.cs ├── AppBuilderExtensions.cs ├── CameraInfo.cs ├── Capture.Vision.Maui.sln ├── DocumenResult.cs ├── CameraViewHandler.cs ├── Capture.Vision.Maui.csproj ├── MrzResult.cs ├── CameraView.cs └── Platforms │ ├── iOS │ └── NativeCameraView.cs │ ├── Windows │ └── NativeCameraView.cs │ └── Android │ └── NativeCameraView.cs └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | /.vs 2 | obj 3 | bin 4 | .vs 5 | -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Resources/Fonts/OpenSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yushulx/Capture-Vision-Maui/HEAD/Capture.Vision.Maui.Example/Resources/Fonts/OpenSans-Regular.ttf -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Resources/Fonts/OpenSans-Semibold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yushulx/Capture-Vision-Maui/HEAD/Capture.Vision.Maui.Example/Resources/Fonts/OpenSans-Semibold.ttf -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": { 3 | "Windows Machine": { 4 | "commandName": "MsixPackage", 5 | "nativeDebugging": false 6 | } 7 | } 8 | } -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/AppShell.xaml.cs: -------------------------------------------------------------------------------- 1 | namespace Capture.Vision.Maui.Example 2 | { 3 | public partial class AppShell : Shell 4 | { 5 | public AppShell() 6 | { 7 | InitializeComponent(); 8 | } 9 | } 10 | } -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Resources/AppIcon/appicon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Platforms/Android/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #512BD4 4 | #2B0B98 5 | #2B0B98 6 | -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/App.xaml.cs: -------------------------------------------------------------------------------- 1 | namespace Capture.Vision.Maui.Example 2 | { 3 | public partial class App : Application 4 | { 5 | public App() 6 | { 7 | InitializeComponent(); 8 | 9 | MainPage = new AppShell(); 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Platforms/iOS/AppDelegate.cs: -------------------------------------------------------------------------------- 1 | using Foundation; 2 | 3 | namespace Capture.Vision.Maui.Example 4 | { 5 | [Register("AppDelegate")] 6 | public class AppDelegate : MauiUIApplicationDelegate 7 | { 8 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); 9 | } 10 | } -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Platforms/MacCatalyst/AppDelegate.cs: -------------------------------------------------------------------------------- 1 | using Foundation; 2 | 3 | namespace Capture.Vision.Maui.Example 4 | { 5 | [Register("AppDelegate")] 6 | public class AppDelegate : MauiUIApplicationDelegate 7 | { 8 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); 9 | } 10 | } -------------------------------------------------------------------------------- /Capture.Vision.Maui/BarcodeResult.cs: -------------------------------------------------------------------------------- 1 | namespace Capture.Vision.Maui 2 | { 3 | public class BarcodeResult 4 | { 5 | public string Text { get; set; } 6 | 7 | public int[] Points { get; set; } 8 | 9 | public string Format1 { get; set; } 10 | 11 | public string Format2 { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/README.md: -------------------------------------------------------------------------------- 1 | # .NET MAUI Barcode, Document, MRZ Scanner 2 | 3 | **Windows** 4 | 5 | https://github.com/yushulx/Capture-Vision-Maui/assets/2202306/63022269-a862-44a3-9217-bc6a9a2866be 6 | 7 | **Android** 8 | 9 | https://github.com/yushulx/Capture-Vision-Maui/assets/2202306/cde6e832-36b4-4789-9f8f-2398fb9f28c2 10 | 11 | -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Platforms/Windows/App.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Capture.Vision.Maui/AppBuilderExtensions.cs: -------------------------------------------------------------------------------- 1 | namespace Capture.Vision.Maui 2 | { 3 | public static class AppBuilderExtensions 4 | { 5 | public static MauiAppBuilder UseNativeCameraView(this MauiAppBuilder builder) 6 | { 7 | builder.ConfigureMauiHandlers(h => 8 | { 9 | h.AddHandler(typeof(CameraView), typeof(CameraViewHandler)); 10 | }); 11 | return builder; 12 | } 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Platforms/Tizen/Main.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Maui; 2 | using Microsoft.Maui.Hosting; 3 | using System; 4 | 5 | namespace Capture.Vision.Maui.Example 6 | { 7 | internal class Program : MauiApplication 8 | { 9 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); 10 | 11 | static void Main(string[] args) 12 | { 13 | var app = new Program(); 14 | app.Run(args); 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Platforms/Android/MainApplication.cs: -------------------------------------------------------------------------------- 1 | using Android.App; 2 | using Android.Runtime; 3 | 4 | namespace Capture.Vision.Maui.Example 5 | { 6 | [Application] 7 | public class MainApplication : MauiApplication 8 | { 9 | public MainApplication(IntPtr handle, JniHandleOwnership ownership) 10 | : base(handle, ownership) 11 | { 12 | } 13 | 14 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); 15 | } 16 | } -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/AppShell.xaml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Platforms/Android/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/Platforms/MacCatalyst/Program.cs: -------------------------------------------------------------------------------- 1 | using ObjCRuntime; 2 | using UIKit; 3 | 4 | namespace Capture.Vision.Maui.Example 5 | { 6 | public class Program 7 | { 8 | // This is the main entry point of the application. 9 | static void Main(string[] args) 10 | { 11 | // if you want to use a different Application Delegate class from "AppDelegate" 12 | // you can specify it here. 13 | UIApplication.Main(args, null, typeof(AppDelegate)); 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Capture.Vision.Maui.Example/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 11 | 12 |