# include“ltwrappr.h”
L_INTLTwain:: FastAcquire (pszBaseFileName、uFlags uTransferMode, nFormat, nBitsPerPixel, bMultiPageFile, uUserBufSize, bUsePreferredBuffer)
获得图像(s)的马克·吐温源和存储图像文件(s)使用快速吐温特性。这个函数是可用的文档/医疗工具包。
字符串包含图像文件的基本名称(s)来保存获得的数据。
标志指示是否显示制造商的用户界面。结合值在适当的时候使用位或(|)。以下是有效值:
价值 | 意义 |
---|---|
0 | [0]没有显示制造商的用户界面。 |
LTWAIN_SHOW_USER_INTERFACE | [0 x0001]显示非模态的制造商的用户界面。 |
LTWAIN_MODAL_USER_INTERFACE | [0 x0002]显示制造商的用户界面是一个模态对话框。它是有效的只有LTWAIN_ SHOW_USER_INTERFACE标志被设置。 |
LTWAIN_KEEPOPEN | 吐温数据源[0 x0020]开放后扫描。 |
国旗表明获取图像时使用的传输模式(年代)。可能的值是:
价值 | 意义 |
---|---|
LTWAIN_FILE_MODE | [0 x001]使用的文件传输模式。 |
LTWAIN_BUFFER_MODE | [0 x002]使用内存传输模式。 |
LTWAIN_NATIVE_MODE | [0 x004]使用本机传输模式。 |
输出文件格式。有效值取决于所使用的传输模式。
生成的文件的像素的深度。注意,并非所有比特每像素可用于所有文件格式。有效值,请参考输出文件的格式。如果nBitsPerPixel为0,该文件将存储使用最接近BitsPerPixel价值支持的格式。
国旗表明是否保存多个图像到一个多页文件(如果输出文件格式支持多页文件),或在一个单独的文件中每个页面。可能的值是:
价值 | 意义 |
---|---|
真正的 | 保存在一个多页文件。 |
假 | 保存在单独的文件。 |
指定一个用户定义的缓冲区大小。这个值是有效的只有uTransferMode LTWAIN_BUFFER_MODE和bUsePreferredBuffer是错误的。这个值必须是一个16的倍数。
国旗表明是否使用用户定义的缓冲区大小或TWAIN-driver-preferred缓冲区大小。可能的值是:
价值 | 意义 |
---|---|
真正的 | 使用TWAIN-driver-preferred缓冲区大小。uUserBufSize的值将被忽略。 |
假 | 在uUserBufSize参数使用用户定义的缓冲区大小。 |
价值 | 意义 |
---|---|
成功 | 函数是成功的。 |
< 1 | 一个错误发生。指返回代码。 |
基于扫描仪的类型,这个函数使用决定了最好和最快的扫描方法。该方法用于实际扫描图像的(而不是测试)。调用LTwain: FindFastConfig在调用这个函数来检索之前最好的扫描配置pOutBestConfig参数,然后通过成员的值在pOutBestConfig这个函数。
如果nFormat中指定的文件格式不支持多页文件,bMultiPageFile将被忽略的价值和功能将自动保存在单独的文件中获得图像。将进行文件的命名如下:如果字符串在pszBaseFileName Temp.jpg,图像的方法将追加数量(0001、0002等),文件的名称。因此,输出文件的名称将“Temp0001.jpg”、“Temp0002.jpg”,等等。
9999多页应该获得,编号交换机使用实际的页码。“Temp9999.jpg”之后,下一个页面扫描将命名为“Temp10000.jpg”,和下面的页面将会“Temp10001.jpg”,等“Temp99999.jpg”之后,下一个页面扫描将命名为“Temp100000.jpg”,和下面的页面将会“Temp100001.jpg”,等等。
如果文件格式支持多页文件,该函数将使用bMultiPageFile参数来决定如何保存多个图像。如果bMultiPageFile是假的,每个扫描页面将被保存到一个单独的文件,在上面的段落中描述的相同的方式。如果bMultiPageFile是真的,输出文件的名称将确切的字符串中使用pszBaseFileName(例如,“Temp.jpg”),它将保存为一个多页文件。
取消了收购操作调用LTwain: CancelAcquire。
阻止收购图像只有吐温源的支线,电话LTwain: StopFeeder在LTwain: AcquireCallBack函数时解雇。
您可以实现相同的功能在使用这个函数LTwain: AcquireMulti。
LTWAIN_KEEPOPEN国旗只能在下列情况下:
必需的dll和库
L_VOID CFastTwain:: AcquireCallBack (L_INT nPage, L_TCHAR * pszFileName L_BOOL bFinishScan)
{
L_TCHAR szTemp [MAX_PATH];
如果(bFinishScan)
{
wsprintf (szTemp文本(“页面# % d扫描并保存到文件名称% s \ n”)、nPage pszFileName);
对话框(NULL, szTemp文本(“通知”),MB_OK);
}
}
L_INT LTwain__FastAcquireExample (HWND HWND, CFastTwain * MyClass)
{
L_INT nRet;
L_BOOL bAvailable;
APPLICATIONDATA AppData;
/ *查看如果吐温安装* /
bAvailable = MyClass - > IsAvailable ();
如果(bAvailable)
{
ZeroMemory (appdata运算符(AppData));
AppData。uStructSize =运算符(AppData);
AppData。hWnd = hWnd;
lstrcpy (AppData。szManufacturerName、文本(“技术领先,公司。”));
lstrcpy (AppData。szAppProductFamily、文本(“铅测试应用程序”));
lstrcpy (AppData。szVersionInfo、文本(“1.0版本”));
lstrcpy (AppData。szAppName、文本(“马克·吐温测试应用程序”));
nRet = MyClass - > InitSession (appdata);
如果(nRet ! =成功)
返回nRet;
}
MyClass - > EnableCallBack(真正的);
nRet = MyClass - > FastAcquire (
MAKE_IMAGE_PATH(文本(“test.bmp”)),
LTWAIN_SHOW_USER_INTERFACE,
LTWAIN_FILE_MODE,
FILE_BMP,
1,
真的,
0,
真正的);
如果(nRet = =成功)
对话框(hWnd,文本(“快速吐温函数成功”),文本(“通知”),MB_OK);
其他的
对话框(hWnd,文本(“错误发生在快速吐温功能! ! !”),文本(“错误! ! !”),MB_OK);
返回nRet;
}