新增长文稿模式

This commit is contained in:
modehua 2023-10-31 03:05:43 -07:00
parent 37c23df3c9
commit f7b0f58022
3 changed files with 25 additions and 7 deletions

View File

@ -211,10 +211,10 @@ void MultiFrameCapture::UpdateScanParam(HG_ScanConfiguration config)
configFPGAParam(config_color, config_dpi);
{
int val = config.params.dpi == 3 ? 600 :(config.params.dpi == 2?300:200);
int val = resolution_ == 3 ? 600 :(resolution_ == 2?300:200);
//除摩尔纹模式
if(config.params.slow_moire && config.params.dpi != 3)
if(config.params.slow_moire && resolution_ != 3)
{
int sp = fpgaparam.Sp + 241; //258 摩尔纹是400dpi 4677的高度
@ -228,16 +228,34 @@ void MultiFrameCapture::UpdateScanParam(HG_ScanConfiguration config)
printf("灰度sp = %d\r\n",sp);
printf("彩色sp = %d\r\n",sp * 3);
}
if (paper_size_ == (unsigned int)PaperSize::G400_MAXSIZE && !config.params.slow_moire) //长文稿模式选择使用 600 dpi走纸速度
{
int sp = 0;
if (color_mode_ == GRAY)
sp = resolution_ == 1 ? 22950 : 9000; //长文稿模式 这几组数据是在600dpi的走纸速度调测的 sptime
else
sp = resolution_ == 1 ? 7800 : 5210;
video->HtCamSetSpTime(sp,fpgaparam.MaxExp); // 2344 灰色 //2023-8-10 最新2650
printf("长幅面 灰度sp = %d\r\n",sp);
if (color_mode_)
{
video->HtCamSetSpTime2(sp * 3);
printf("长幅面 彩色sp = %d\r\n",sp * 3);
}
}
uint32_t cnt = compute_frame(paper_size_ , val) ;
if (m_config.params.dpi == 2 && m_config.params.pageSize == (int)PaperSize::G400_A4)
if (resolution_ == 2 && paper_size_ == (int)PaperSize::G400_A4)
{
cnt -=1 ;
}
if (m_config.params.dpi == 3)
if (resolution_ == 3)
{
cnt +=1 ;
cnt += 2 ;
}
video->HtCamSetFrameCnt(cnt);
printf(" -----------------------设置帧数:%d------------------\r\n",cnt);

View File

@ -105,7 +105,7 @@ private:
{PaperSize::G400_LEGAL,SIZE{216,356}},
{PaperSize::G400_LETTER,SIZE{216,279}},
//{PaperSize::G400_LONGLETTER},
{PaperSize::G400_MAXSIZE,SIZE{210,297 * 2}},
{PaperSize::G400_MAXSIZE,SIZE{210,5500}},
{PaperSize::G400_AUTO,SIZE{210,297}},
{PaperSize::G400_MAXAUTO,SIZE{216,5500}},
};

View File

@ -104,7 +104,7 @@ void Scanner::updateSpeedMode()
unsigned int t_dpi = m_config.params.dpi;
if(m_config.params.pageSize == 17 || m_config.params.pageSize == 19 ) //长文稿采用600dpi模式扫描
if(m_config.params.pageSize == (unsigned int)PaperSize::G400_MAXSIZE || m_config.params.pageSize == (unsigned int)PaperSize::G400_MAXAUTO ) //长文稿采用600dpi模式扫描
t_dpi = 3;
if (m_config.params.slow_moire) //摩尔纹特殊处理
t_dpi = sp = 16;