VFP要想控制扫描仪,只要能搞定这个缺点就好用
加菲猫现在来教大家搞定扫描仪,扫描仪跟高拍仪一样,也是有控件的。就是柯达出品的扫描控件。扫描仪都能用,像那种带网络的复印机,可以通过网络扫描,效果也是杠杠。
柯达扫描控件
优点:非常实用的控件,可以完成图像扫描、编辑、批注的功能。
缺点:控件比较老,扫描的文档为BMP格式,文件巨大。
今天我们就来搞定这个缺点,让扫描控件更好用。
一、 安装控件
资源我放在这里
文件分享
解压之后有个DLL目录,双击其中的注册控件.bat
二、 VFP使用
1. VFP表单中拖入柯达扫描控件,Name改为OleScan
2.表单中添加一个控件Caption设为扫描,添加Click事件代码如下
If !Thisform.OleScan.ScannerAvailable()
=Messagebox("没有检测到扫描仪驱动程序",0+64,"信息")
Return
Endif
Thisform.OleScan.Image="c:\temp\xx" &&归档的文件名
Thisform.OleScan.FileType=3 && 3-Bitmap Image (BMP) BMP位图文件
Thisform.OleScan.pageoption=6 &&Overwrite All Pages 覆盖所有页(覆盖文件)
Thisform.OleScan.Scanto=2 && 只归档,意思是只保存
*oImgscan.Scroll=.T.
Thisform.OleScan.StartScan &&开始扫描,扫描
If Thisform.OleScan.StatusCode=0
Thisform.olescan.CloseScanner
Thisform.Refresh()
Endif
要注意的地方scanto参数归档的意思是保存,如果配置成只显示,需要配合柯达编辑控件来实现显示,编辑,保存等操作。
3.测试一下效果
扫描之后,便会在C:\TEMP生成一个xx.bmp文件。
4 因为BMP文件巨大,这里给大家一个另存的函数,方便好用。
Function saveimage2(openfile As String,savefile As String)
lqEncoderClsID_BMP=0h00F47C55041AD3119A730000F81EF32E &&BMP
lqEncoderClsID_JPG=0h01F47C55041AD3119A730000F81EF32E &&JPG
lqEncoderClsID_GIF=0h02F47C55041AD3119A730000F81EF32E &&GIF
lqEncoderClsID_TIF=0h05F47C55041AD3119A730000F81EF32E &&TIF
lqEncoderClsID_PNG=0h06F47C55041AD3119A730000F81EF32E &&PNG
Declare Long GdipLoadImageFromFile In GDIPlus.Dll String cFile, Long @ nativeImage
Declare Long GdipSaveImageToFile In GDIPlus.Dll Long nativeImage, String cFile, ;
String EncoderClsID, String EncoderParameters
Declare Long GdipDisposeImage In GDIPlus.Dll Long nativeImage
lcInputFile=Strconv(openfile+Chr(0),5)
lcOutputFile=Strconv(savefile+Chr(0),5)
lnImage=0
GdipLoadImageFromFile(lcInputFile,@lnImage)
GdipSaveImageToFile(lnImage, lcOutputFile, Evaluate('lqEncoderClsID_'+Upper(Justext(savefile))), Null)
GdipDisposeImage(lnImage)
Erase &openfile
Endfunc
调用方法:
saveimage2("xx.bmp","xx.jpg") &&支持BMP ,JPG ,GIF,TIF ,PNG格式。
搞定扫描仪,看完这篇还不会的话,那就多多学习吧。
VFP要想控制扫描仪,只要能搞定这个缺点就好用相关推荐
- 3秒测试:组建一个网络,需要几个硬件设备搞定?
要是现在随便去路上问一个路人,"网络是什么?"他大概会用一种看白痴的眼光鄙视你. 老杨之前曾写过,普通人眼里的网络和IT人眼里的网络有什么区别,有兴趣的小友可以点击查看:当了8年网 ...
- VFP使用柯达控件控制扫描仪,解决导出文件体积过大的问题
猫猫在做扫描仪控制的时候,使用的柯达扫描控件,这个控件控制扫描仪非常实用,还带有图片编辑的功能,但问题也有,就是导出的图片体积太小了. 我使用的是MYIMG.FLL,结果发现中能修改长度与宽度,图片长 ...
- 掌控板教程 | 搞定 Siri 语音控制,只要半小时!
话不多说,先上效果演示视频: 本教程适用于掌控板及其他 ESP32 开发板. # 前言 # 前段时间,我在公众号上面发了一篇文章:掌控板 V1.1 语音识别初体验 在这篇文章中,我使用了还处于测试阶段 ...
- Python元编程:控制你想控制的一切
很多人不理解"元编程"是个什么东西,关于它也没有一个十分准确的定义.这篇文章要说的是Python里的元编程,实际上也不一定就真的符合"元编程"的定义.只不过我无 ...
- python查看微信撤回消息_想查看微信好友撤回的消息?Python帮你搞定
要说微信最让人恶心的发明,消息撤回绝对能上榜. 比如你现在正和女朋友用微信聊着天,或者跟自己喜欢的女孩子聊着天,一个不留神,你没注意到对方发的消息就被她及时撤回了,这时你很好奇,好奇她到底发了什么?于 ...
- html转word并保持格式不变,表格从Word转Excel想保持格式不变?用这两种方法,保你轻松搞定...
相信在职场办公,大家或多或少都有遇见过这样的问题,需要把Word中的表格转移到Excel中,很多人第一时间就复制黏贴然后再重新调整格式,一两个表格还好说,如果是批量的你怕是要累死了. 表格从Word转 ...
- 怎么让照片变年轻_女生都想要变年轻,但是应该怎么做呐?其实有了背带裤就可以搞定...
每个女生都希望自己永远年轻漂亮,说的冻龄神器,肯定就是我们的背带裤了.逆龄吊带装一上场,少女心马上滥了有么有?而且穿背带裤没有人会说你是在装嫩,因为它就是我们一款日常搭配的一款单品,一款背龄的好帮手而 ...
- 做好PMC管理三大工作,轻松搞定生产计划与物料控制
做好PMC管理三大工作,轻松搞定生产计划与物料控制 PMC管理在工厂企业日常操作中无外乎"后推前拉.滚动排查",概括来讲PMC管理整体职能体现为六个字:计划.控制.协调. 那么如何 ...
- 开篇 | 想成为技术牛人?先搞定网络协议!
PS: 在极客时间买了一门课<趣谈网络协议>,为了帮助自己学习,我把学完的知识整理出来. 为什么网络协议这么重要?它貌似没有多少天搞定MFC.Structs这样的内容更容易带给人成就感,帮 ...
最新文章
- linux 检查权限,检查目录下 文件的权限-linux shell脚本,
- Zxing 竖屏切换 android
- 这是阿里技术专家对 SRE 和稳定性保障的理解
- Citrix Director
- 在一个div里,列表样式图片进行float,实现水平排序
- Linux查看tar实用程序,linux tar指令常用选项
- 八个实用的CMD命令及开始→运行→命令集锦
- c语言ffm是什么错误类型,FFM不能封装flv的问题和替代方案SFF
- Requests Header | Http Header
- 在移动端H5开发中(关于安卓端position:fixed和position:absolute;和虚拟键盘冲突的问题,以及解决方案)...
- [数据结构] 配对堆
- Linux 就该这么学
- qq视频转码失败怎么办_迅捷视频转换器腾讯视频转换失败如何解决?
- HDU6184 Counting Stars(三元环计数)
- a=a*10+b型题目
- java:JDBC的使用与封装
- 计算机主机是几几年的怎么查,怎样查询电脑上次开机时间_电脑开机时间查询方法-系统城...
- Android微信App 分享功能调整,Android 微信SDK分享功能(1)
- 如何关闭WPS文字的选项卡显示方式?如何实现多窗口显示?
- 【AirSim】Windows下搭建AirSim
热门文章
- ROS rviz_satellite功能包可视化GNSS轨迹,卫星地图的使用
- php json 转arraylist,android - 将JSON数组转换为ArrayList
- Evernote导出pdf windows
- 微信小程序应用开发(一)
- UICC 之 USIM 详解全系列——背景与系列介绍
- Mysql数据库查询好慢,除了索引,还能因为什么?
- Day19 Oracle 数据库 创建表 约束 JDBC BaseDAO
- Spring Cloud Commons模块
- android怎么引用ttf字体,非常實用,Android引用ttf圖標字體庫
- 影视解说怎么配音?免费配音软件分享,真人发声选择多样