From 0dceb19ac51a30db61ef16e1853c54026fccb8c5 Mon Sep 17 00:00:00 2001 From: 13038267101 Date: Sat, 7 May 2022 18:42:43 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hgdriver/hgdev/hg_scanner_200.cpp | 24 +++++++++++++----------- hgdriver/hgdev/hg_scanner_300.cpp | 24 +++++++++++++----------- hgdriver/hgdev/hg_scanner_400.cpp | 24 +++++++++++++----------- 3 files changed, 39 insertions(+), 33 deletions(-) diff --git a/hgdriver/hgdev/hg_scanner_200.cpp b/hgdriver/hgdev/hg_scanner_200.cpp index 8e74b11..e6604a0 100644 --- a/hgdriver/hgdev/hg_scanner_200.cpp +++ b/hgdriver/hgdev/hg_scanner_200.cpp @@ -635,23 +635,25 @@ void hg_scanner_200::image_process(std::shared_ptr>& buffer) tableLength = 256; else { + tableLength = 768; int index=0; - - unsigned char buf_01[256]; - memcpy(buf_01,custom_gamma_val_->table + index,256); - index += 256; + int buffersize = 256; - unsigned char buf_02[256]; - memcpy(buf_02,custom_gamma_val_->table + index,256); - index += 256; + unsigned char buf_01[buffersize]; + memcpy(buf_01,custom_gamma_val_->table + index,buffersize); + index += buffersize; - unsigned char buf_03[256]; - memcpy(buf_03,custom_gamma_val_->table + index,256); - index += 256; + unsigned char buf_02[buffersize]; + memcpy(buf_02,custom_gamma_val_->table + index,buffersize); + index += buffersize; + + unsigned char buf_03[buffersize]; + memcpy(buf_03,custom_gamma_val_->table + index,buffersize); + index += buffersize; int j =0; - for (size_t i = 0; i < 256; i++) + for (size_t i = 0; i < buffersize; i++) { memcpy(buffer1 + j,buf_01 + i,1); memcpy(buffer1 + (++j),buf_02 + i,1); diff --git a/hgdriver/hgdev/hg_scanner_300.cpp b/hgdriver/hgdev/hg_scanner_300.cpp index 41d17c6..7f81498 100644 --- a/hgdriver/hgdev/hg_scanner_300.cpp +++ b/hgdriver/hgdev/hg_scanner_300.cpp @@ -592,23 +592,25 @@ void hg_scanner_300::image_process(std::shared_ptr>& buffer) tableLength = 256; else { + tableLength = 768; int index=0; - - unsigned char buf_01[256]; - memcpy(buf_01,custom_gamma_val_->table + index,256); - index += 256; + int buffersize = 256; - unsigned char buf_02[256]; - memcpy(buf_02,custom_gamma_val_->table + index,256); - index += 256; + unsigned char buf_01[buffersize]; + memcpy(buf_01,custom_gamma_val_->table + index,buffersize); + index += buffersize; - unsigned char buf_03[256]; - memcpy(buf_03,custom_gamma_val_->table + index,256); - index += 256; + unsigned char buf_02[buffersize]; + memcpy(buf_02,custom_gamma_val_->table + index,buffersize); + index += buffersize; + + unsigned char buf_03[buffersize]; + memcpy(buf_03,custom_gamma_val_->table + index,buffersize); + index += buffersize; int j =0; - for (size_t i = 0; i < 256; i++) + for (size_t i = 0; i < buffersize; i++) { memcpy(buffer1 + j,buf_01 + i,1); memcpy(buffer1 + (++j),buf_02 + i,1); diff --git a/hgdriver/hgdev/hg_scanner_400.cpp b/hgdriver/hgdev/hg_scanner_400.cpp index f59697c..93443eb 100644 --- a/hgdriver/hgdev/hg_scanner_400.cpp +++ b/hgdriver/hgdev/hg_scanner_400.cpp @@ -595,23 +595,25 @@ void hg_scanner_400::image_process(std::shared_ptr>& buffer) tableLength = 256; else { + tableLength = 768; int index=0; - - unsigned char buf_01[256]; - memcpy(buf_01,custom_gamma_val_->table + index,256); - index += 256; + int buffersize = 256; - unsigned char buf_02[256]; - memcpy(buf_02,custom_gamma_val_->table + index,256); - index += 256; + unsigned char buf_01[buffersize]; + memcpy(buf_01,custom_gamma_val_->table + index,buffersize); + index += buffersize; - unsigned char buf_03[256]; - memcpy(buf_03,custom_gamma_val_->table + index,256); - index += 256; + unsigned char buf_02[buffersize]; + memcpy(buf_02,custom_gamma_val_->table + index,buffersize); + index += buffersize; + + unsigned char buf_03[buffersize]; + memcpy(buf_03,custom_gamma_val_->table + index,buffersize); + index += buffersize; int j =0; - for (size_t i = 0; i < 256; i++) + for (size_t i = 0; i < buffersize; i++) { memcpy(buffer1 + j,buf_01 + i,1); memcpy(buffer1 + (++j),buf_02 + i,1);