REBOL [ Title: "Eztwain Support" Author: "Graham Chiu" Company: "SynapseDirect.com" Date: 6-May-2006 File: %eztwain.r Purpose: "Support image grabs from webcam using commercial eztwain library." Library: [ level: 'intermediate platform: 'windows type: [demo module] domain: [animation external-library graphics] tested-under: [view/pro 1.3.2.3.1 http://www.dosadi.com/pub/eztw1.zip %eztwain3.dll] license: 'MIT support: none see-also: none ] ] twainlib: load/library %eztwain3.dll TWAIN_SetAutoScan: make routine! [ "Use the default twain source" flag [integer!] return: [integer!] ] twainlib "TWAIN_SetAutoScan" TWAIN_OpenDefaultSource: make routine! [ "opens the default twain source" return: [integer!] ] twainlib "TWAIN_OpenDefaultSource" twain_logfile: make routine! [ "Set the log file on or off" flag [integer!] ] twainlib "TWAIN_LogFile" twain_sethideui: make routine! [ "Hide the UI" flag [integer!] ] twainlib "TWAIN_SetHideUI" TWAIN_SetFileAppendFlag: make routine! [ "what's this for?" flag [integer!] ] twainlib "TWAIN_SetFileAppendFlag" TWAIN_SetJpegQuality: make routine! [ "Set Jpeg quality" flag [integer!] ] twainlib "TWAIN_SetJpegQuality" TWAIN_OpenSource: make routine! [ "Set twain source" name [string!] return: [integer!] ] twainlib "TWAIN_OpenSource" TWAIN_SetXferCount: make routine! [ "Set the number of images to get" flag [integer!] ] twainlib "TWAIN_SetXferCount" TWAIN_AcquireToFilename: make routine! [ "Get image to file" handle [integer!] file [string!] ] twainlib "TWAIN_AcquireToFilename" TWAIN_LastErrorCode: make routine! [ "Get the last error code" return: [integer!] ] twainlib "TWAIN_LastErrorCode" TWAIN_ReportLastError: make routine! [ "make a log entry" entry [string!] ] twainlib "TWAIN_ReportLastError" TWAIN_SelectImageSource: make routine! [ "Get the default twain source" flag [integer!] ] twainlib "TWAIN_SelectImageSource" halt ; demo follows scanlo: layout [ scannedimage: box 200x200 ] Twain_logfile 1 TWAIN_SetHideUI 1 TWAIN_SetFileAppendFlag 0 TWAIN_SetJpegQuality 75 if 0 <> TWAIN_OpenDefaultSource [ TWAIN_SetXferCount 1 if 0 = TWAIN_SetAutoScan 0 [ alert "Twain source can not single scan" return ] TWAIN_AcquireToFilename 0 "c:\image.jpg" ] if TWAIN_LastErrorCode <> 0 [ TWAIN_ReportLastError "Unable to scan" ] scannedimage/image: load %/c/image.jpg view scanlo