注意:本TWAIN教程的目的是为您提供一种快速而简单的方法来生成TWAIN程序。有关更深入的TWAIN编程,请参阅吐温演示.
按照以下步骤创建并运行实现LEADTOOLS TWAIN特性的程序。
TwainTutor
.在类之前添加下面的行CTwainTutorApp
声明(请记住,您可能必须更改头文件所在的路径):
# include"..\..\..\..\ 包括\ ClassLib \ ltwrappr.h”
单击类视图选项卡。
CTwainTutorApp(空白)
构造函数。在后面添加以下行//TODO:在这里添加构造代码
:
LBase: LoadLibraries (LT_ALL_LEADLIB);
L_TCHAR * pszLicenseFile = L"将此替换为LEADTOOLS许可文件的路径";
L_TCHAR * pszDeveloperKey = L"将此替换为开发人员密钥";
LSettings:: SetLicenseFile (pszLicenseFile pszDeveloperKey);
创建一个名为Imports.cpp把它放在你的项目文件旁边。
# include“StdAfx.h”
#如果定义(WIN64)
#其他的
# pragma评论(自由,"..\\..\\..\\..\\ Lib \ \ CDLLVC10 \ \ Win32 \ \ Ltwvc_u.lib”)
# endif// #如果已定义(WIN64)
单击解决方案资源管理器选项卡。
在CTwainTutorDlg类之前添加以下类声明。
类LMyTwain:公共LTwain
{
LEAD_DECLAREOBJECT (LMyTwain);
公共:
LMyTwain ();
虚拟~ LMyTwain ();
虚拟L_INT BitmapCallBack(pBITMAPHANDLE pBitmap);
};
单击解决方案资源管理器选项卡。
添加如下类:
LEAD_IMPLEMENTOBJECT (LMyTwain);
LMyTwain: LMyTwain ()
{
EnableCallBack(真正的);
}
LMyTwain:: ~ LMyTwain ()
{
}
L_INT LMyTwain::BitmapCallBack(pBITMAPHANDLE pBitmap)
{
//复制获取的位图
返回成功;
}
单击类视图选项卡
LMyTwain
,以及变量声明把m_MyTwain
.离开访问作为公共并点击好吧.OnInitDialog ()
函数并在该行后添加以下代码:// TODO:添加额外的初始化
APPLICATIONDATA AppData;
memset (appdata 0运算符(APPLICATIONDATA));
AppData。hWnd = m_hWnd;
AppData。uStructSize =运算符(AppData);
lstrcpy (AppData。szManufacturerName _T (领德科技有限公司));
lstrcpy (AppData。szAppProductFamily _T (“铅测试应用”));
lstrcpy (AppData。szVersionInfo _T (“1.0版本”));
lstrcpy (AppData。szAppName _T (“TWAIN测试申请”));
m_MyTwain.InitSession (appdata);
OnDestroy
.在开始括号后添加以下代码{
:
m_MyTwain.EndSession ();
LBase: UnloadLibraries (LT_ALL_LEADLIB);
单击解决方案资源管理器选项卡。
TwainTutor.rc
文件打开它,然后双击对话框,然后双击IDD_TWAINTUTOR_DIALOG
.现在拖放2个按钮和3个单选按钮,并更改它们的属性如下:
控制类型 | ID | 标题 |
---|---|---|
Button1 | IDC_SELECT_SRC | 选择源 |
Button2 | IDC_ACQUIRE | 收购 |
迎合广大 | IDC_NATIVE | 本地的 |
Radio2 | IDC_MEMORY | 内存 |
Radio3 | IDC_FILE | 文件 |
从“视图”菜单中选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR_DIALOG.
双击“选择源代码”按钮,添加如下代码:
m_MyTwain.SelectSource(空);
从“视图”菜单中选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR_DIALOG.
双击收购按钮,并添加以下代码:
pBITMAPHANDLE pBitmap = NULL;
m_MyTwain。收购(pBitmap,运算符(bitmaphandle), ltwain_show_user_interface, null);
从“视图”菜单中选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR_DIALOG.
双击本地的单选按钮,并添加以下代码:
LTWAINPROPERTIES twProps;
memset (&twProps, 0, LTWAINPROPERTIESSIZE);
L_INT nRet = m_MyTwain。getproperty (&twProps运算符(LTWAINPROPERTIES) LTWAIN_PROPERTIES_GETCURRENT);
如果(nRet != SUCCESS)
返回;
twprops . datattransferer . ntransfermode = TWSX_NATIVE;
nRet = m_MyTwain。找(&twProps LTWAIN_PROPERTIES_SET);
如果(nRet != SUCCESS)
返回;
从“视图”菜单中选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR_DIALOG.
双击内存单选按钮,并添加以下代码:
LTWAINPROPERTIES twProps;
memset (&twProps, 0, LTWAINPROPERTIESSIZE);
L_INT nRet = m_MyTwain。getproperty (&twProps运算符(LTWAINPROPERTIES) LTWAIN_PROPERTIES_GETCURRENT);
如果(nRet != SUCCESS)
返回;
twprops . datattransferer . ntransfermode = TWSX_MEMORY;
twProps.DataTransfer.nBufMemCompression = TWCP_NONE;
nRet = m_MyTwain。找(&twProps LTWAIN_PROPERTIES_SET);
如果(nRet != SUCCESS)
返回;
从“视图”菜单中选择其他窗口菜单,然后选择资源视图菜单,然后选择对话框,并选择IDD_TWAINTUTOR_DIALOG.
双击文件单选按钮,并添加以下代码:
LTWAINPROPERTIES twProps;
memset (&twProps, 0, LTWAINPROPERTIESSIZE);
L_INT nRet = m_MyTwain。getproperty (&twProps运算符(LTWAINPROPERTIES) LTWAIN_PROPERTIES_GETCURRENT);
如果(nRet != SUCCESS)
返回;
twProps.DataTransfer.nTransferMode = TWSX_FILE;
lstrcpy (twProps.DataTransfer。szFileName、文本(“c: \ \ twain.bmp”));
nRet = m_MyTwain。找(&twProps LTWAIN_PROPERTIES_SET);
如果(nRet != SUCCESS)
返回;
编译和测试程序。