From 46431fb658701489f8d5de4475b02df728c51f36 Mon Sep 17 00:00:00 2001
From: chunxiaqiu <1057644574@qq.com>
Date: 星期三, 18 三月 2026 15:48:26 +0800
Subject: [PATCH] 新增:读码器功能模块,集成华睿读码器并初步实现读码功能

---
 LB_VisionProcesses/Alogrithms/Halcon/2D/HFindCode2dTool/HFindCode2dTool.cs |   24 +++++++++++++++++++++++-
 1 files changed, 23 insertions(+), 1 deletions(-)

diff --git a/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindCode2dTool/HFindCode2dTool.cs b/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindCode2dTool/HFindCode2dTool.cs
index fcf47ec..ed5938c 100644
--- a/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindCode2dTool/HFindCode2dTool.cs
+++ b/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindCode2dTool/HFindCode2dTool.cs
@@ -2,6 +2,7 @@
 using System;
 using System.Collections.Generic;
 using System.Drawing;
+using System.Drawing.Imaging;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
@@ -64,9 +65,30 @@
                         Result = false;
                         return;
                     }
+                    if (InputImage is Bitmap)
+                    {
+                        try
+                        {
+                            using (HImage hImage = new HImage())
+                            {
+                                Bitmap bitmap = (Bitmap)InputImage;
+                                Rectangle rect = new Rectangle(0, 0, ((Bitmap)bitmap).Width, ((Bitmap)bitmap).Height);
+                                BitmapData srcBmpData = ((Bitmap)bitmap).LockBits(rect, ImageLockMode.ReadOnly, PixelFormat.Format32bppRgb);
+                                hImage.GenImageInterleaved(srcBmpData.Scan0, "rgbx", ((Bitmap)bitmap).Width, ((Bitmap)bitmap).Height, 0, "byte", ((Bitmap)bitmap).Width, ((Bitmap)bitmap).Height, 0, 0, -1, 0);
+                                ((Bitmap)bitmap).UnlockBits(srcBmpData);
+                                bitmap.Dispose();
+                                bitmap = null;
+                                InputImage = null;
+                                InputImage = hImage.Clone();
+                            }
+                        }
+                        catch (Exception ex)
+                        {
+                        }
+                    }
                     if (!(InputImage is HObject))
                     {
-                        Msg = "杈撳叆鍥剧墖鏍煎紡涓嶄负Mat";
+                        Msg = "杈撳叆鍥剧墖鏍煎紡涓嶄负HObject";
                         Result = false;
                         return;
                     }

--
Gitblit v1.9.3