From 3e4863abf614c6b65a05c803dce23bea2de4b1d1 Mon Sep 17 00:00:00 2001
From: doom4ster <doom4ster@gmail.com>
Date: 星期四, 01 二月 2018 17:25:30 +0800
Subject: [PATCH] 65 修正匯入轉向問題

---
 CB_IMGPSScanImp.pas |   23 +++++++++++++++++++----
 1 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/CB_IMGPSScanImp.pas b/CB_IMGPSScanImp.pas
index dc1de33..49bb35a 100644
--- a/CB_IMGPSScanImp.pas
+++ b/CB_IMGPSScanImp.pas
@@ -2792,10 +2792,21 @@
       iGraphic_First := TTiffGraphic.Create;
       iGraphic_sec := TTiffGraphic.Create;
 
-      iGraphic_First.Assign(ISB.Graphic);
+
       //ShowMessage(IntToStr(iGraphic_First.Palette.palNumEntries)); //彩色 會為0  黑白 為2
 
       MpsGetBarcode(ISB_BW.Graphic, MpsBarcodeinf); //判斷A3 有用FormID 所以要先辨條碼
+      For n := 1 To MpsBarcodeinf.Count Do
+      Begin
+        If MpsBarcodeinf.r180[n] <> 0 Then // 依條碼角度轉影像
+        Begin
+          Rotate(ISB.Graphic, MpsBarcodeinf.r180[n]);
+          //MpsGetBarcode(iGraphic_First, MpsBarcodeinf);
+          Break;
+        End;
+      End;
+
+      iGraphic_First.Assign(ISB.Graphic);
       //有必要的話先把影像轉正 再開始切圖
       If CheckNeedCrop(iGraphic_First) Then
       Begin
@@ -2835,10 +2846,11 @@
             If MpsBarcodeinf.r180[n] <> 0 Then // 依條碼角度轉影像
             Begin
               Rotate(iGraphic, MpsBarcodeinf.r180[n]);
-              MpsGetBarcode(iGraphic, MpsBarcodeinf);
+              MpsGetBarcode(ISB_BW.Graphic, MpsBarcodeinf);
               Break;
             End;
           End;
+//ShowMessage('XXX '+IntToStr(MpsBarcodeinf.Count));
           FormID := BarCode2FormID;
 //ShowMessage('FormID='+FormID);
           // 取出FormID
@@ -2904,7 +2916,7 @@
             If MpsBarcodeinf.r180[n] <> 0 Then // 依條碼角度轉影像
             Begin
               Rotate(iGraphic, MpsBarcodeinf.r180[n]);
-              MpsGetBarcode(iGraphic, MpsBarcodeinf);
+              MpsGetBarcode(ISB_BW.Graphic, MpsBarcodeinf);
               Break;
             End;
           End;
@@ -8219,8 +8231,10 @@
 
     if FScanColor = 1 then
     begin
-      ScanColor := ifGray256 ;
+      //ScanColor := ifGray256 ;
+      ScanColor := ifBlackWhite; //
     end;
+
 
     if FScanColor = 2 then
     begin
@@ -8921,6 +8935,7 @@
   if FScanColor = 1 then
   begin
     ScanColor := ifGray256 ;
+    ScanGrayCB.Checked:=True;
   end;
 
   if FScanColor = 2 then

--
Gitblit v1.8.0