Contents of TM-S Sample Programs for TM-S9000/S2000 Driver | ||||||||||
Step | Overview | New function used in the step | Related Win32/64 API | Related structure in Win32/64 API | Related .NET API | Related class and properties in .NET API | ||||
1 | This is a sample
program for opening and closing devices, and scanning. |
Opening driver with device name | BiOpenMonPrinter | OpenMonPrinter | ||||||
Register callback | BiSCNMICRSetStatusBackFunction | SCNMICRSetStatusBackFunction | ||||||||
Start scanning | BiSCNMICRFunctionContinuously(, , MF_EXEC) | SCNMICRFunctionContinuously(FunctionType.MF_EXEC) | ||||||||
Cancellation during scanning | BiSCNMICRCancelFunction | SCNMICRCancelFunction | ||||||||
Recovery from recoverable error | BiCancelError | CancelError | ||||||||
Get device status | BiGetStatus | GetStatus | ||||||||
Cancel callback | BiSCNMICRCancelStatusBack | SCNMICRCancelStatusBack | ||||||||
Close driver | BiCloseMonPrinter | CloseMonPrinter | ||||||||
2 | In addition to Step 1, this sample program allows you to select
to scan either a check sheet or a card, and then retrieve and display the
scanned images. |
Media selection - check or card | BiSCNSelectScanUnit | SCNSelectScanUnit | ||||||
Resolution selection | BiSCNMICRFunctionContinuously(, , MF_SET_SCAN_FRONT_PARAM) BiSCNMICRFunctionContinuously(, , MF_SET_SCAN_BACK_PARAM) |
MF_SCAN | sResolution | SCNMICRFunctionContinuously(,
FunctionType.MF_SET_SCAN_FRONT_PARAM) SCNMICRFunctionContinuously(, FunctionType.MF_SET_SCAN_BACK_PARAM) |
MFScan | Resolution | ||||
Saving scanned data to file with an image file format | BiSCNSetImageFormat | SCNSetImageFormat | ||||||||
Select scanning side | BiSCNSelectScanFace | SCNSelectScanFace | ||||||||
Image type selection | BiSCNSetImageQuality | SCNSetImageQuality | ||||||||
Light source selection | BiSCNSetImageTypeOption | SCNSetImageTypeOption | ||||||||
Light source of the scanned image to be retrieved during callback | BiSCNSelectScanImage | SCNSelectScanImage | ||||||||
Obtain image data during callback | BiGetScanImage | GetScanImage | ||||||||
3 | In addition to Step 2, this sample program
retrieves and displays MICR data. It also cleans the MICR. |
Get result of MICR character recognition | BiGetMicrText | GetMicrText | ||||||
MICR font selection - E13B or CMC7 | BiSCNMICRFunctionContinuously(, , MF_SET_MICR_PARAM) | MF_MICR01 | bFont | SCNMICRFunctionContinuously(, FunctionType.MF_SET_MICR_PARAM) | MFMicr | Font | ||||
MICR cleaning | BiMICRCleaning | MICRCleaning | ||||||||
Clears spaces included in MICR data | BiMICRClearSpaces | MICRClearSpaces | ||||||||
4 | In addition to Step 3, this sample program
performs physical endorse/electronic endorse. |
Select endorsement type - physical or electronic (virtual) | BiSetPrintStation | SetPrintStation | ||||||
Template printing settings | BiLoadTemplatePrintArea BiTemplatePrint BiSetTemplatePrintArea |
LoadTemplatePrintArea TemplatePrint SetTemplatePrintArea |
||||||||
Print image in endorsement | BiSCNPrintMemoryImage | SCNPrintMemoryImage | ||||||||
Print text in endorsement | BiSCNPrintText | SCNPrintText | ||||||||
Register callback for start of endorsement print | BiStartEndorsementSetStatusBackFunction | StartEndorsementSetStatusBackFunction | ||||||||
Register callback for end of endorsement print | BiEndEndorsementSetStatusBackFunction | EndEndorsementSetStatusBackFunction | ||||||||
Select endorsement print mode - High speed or Data-waiting | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bEndorsePrintMode | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | EndorsePrintMode | ||||
Select cancel scanning after unreceived data error | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bPrnDataUnreceiveCancel | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | PrnDataUnreceiveCancel | ||||
5 | In addition to Step 3, this sample program
processes cashier's checks. It also prints cut sheets/roll paper (TM-S9000
only). Note: Difference between cashier's check and cut sheet printing is scanning can be enabled after printing a cashier's check. |
Select print station - Cut Sheet or Roll Paper | BiSetPrintStation | SetPrintStation | ||||||
Select whether to scan printed document when performing cut sheet printing. | BiSetPrintCutSheetSettings | SetPrintCutSheetSettings | ||||||||
Specify scanning condition of cut sheet printing | BiPrintCutSheet | PrintCutSheet | ||||||||
Print text on cut sheet during callback using template print | BiSCNPrintMemoryImage | SCNPrintMemoryImage | ||||||||
Print image on cut sheet during callback using template print | BiSCNPrintText | SCNPrintText | ||||||||
Specify buffered print for roll paper printing | BiBufferedPrint(, MF_PRT_BUFFERING) | BufferedPrint(PrintBuffer.MF_PRT_BUFFERING) | ||||||||
Set print area size | BiSetPrintSize | SetPrintSize | ||||||||
Set the inline printing position | BiSetPrintAlignment | SetPrintAlignment | ||||||||
Print text on roll paper | BiPrintText | PrintText | ||||||||
Print image on roll paper | BiPrintImage | PrintImage | ||||||||
Barcode printing on roll paper | BiPrintBarCode | PrintBarCode | ||||||||
Auto cutter for roll paper | BiAutoCutRollPaper | AutoCutRollPaper | ||||||||
Execute roll paper printing | BiBufferedPrint(, MF_PRT_EXEC) | BufferedPrint(MF_PRT_EXEC) | ||||||||
6 | In addition to Step 3, this sample program retrieves and displays OCR-AB recognition results. It also sounds an alarm. | Select OCR-A or OCR-B font for recognition | BiGetOcrABText | MF_OCR_AB | bOcrType | GetOcrABText | MFOcrAb | OcrType | ||
Area definition for OCR-AB recognition | BiGetOcrABText | MF_OCR_AB | bDirection, wStartX, wStartY, wEndX, wEndY | GetOcrABText | MFOcrAb | Direction, StartX, StartY, EndX, EndY | ||||
Retrieve OCR-AB recognition result | BiGetOcrABText | MF_OCR_AB | szOcrStr | GetOcrABText | MFOcrAb | OcrStr | ||||
Select buzzer frequency | BiSCNMICRFunctionContinuously(, , MF_SET_BASE_PARAM) | MF_BASE01 | bBuzzerHz | SCNMICRFunctionContinuously(, FunctionType.MF_SET_BASE_PARAM) | MFBase | BuzzerHz | ||||
Select number of times that buzzer sounds | BiSCNMICRFunctionContinuously(, , MF_SET_BASE_PARAM) | MF_BASE01 | bBuzzerCount | SCNMICRFunctionContinuously(, FunctionType.MF_SET_BASE_PARAM) | MFBase | BuzzerCount | ||||
7 | In addition to Step 3, this sample program processes IQA and displays the results. It also allows the selection of scanning mode (High Speed Mode/Confirmation Mode/Waterfall) and processes scans. | Select scanning mode - High speed mode or confirmation
mode. With high speed mode, the driver automatically choose exit pocket and termination of scanning based on pre-defined settings. With confirmation mode, application can choose exit pocket, termination of scanning based on MICR or image. |
BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bActivationMode | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | ActivationMode | ||
In confirmation mode, application choose feeding option for next document | BiSetBehaviorToScnResult | SetBehaviorToScnResult | ||||||||
Select exit pocket in confirmation mode | BiSetBehaviorToScnResult | SetBehaviorToScnResult | ||||||||
Specify water fall mode | BiSetWaterfallMode | SetWaterfallMode | ||||||||
Enable/disable IQA test | BiSCNMICRFunctionContinuously(, , MF_SET_IQA_PARAM) | MF_IQA | bErrorSelect | SCNMICRFunctionContinuously(, FunctionType.MF_SET_IQA_PARAM) | MFIqa | ErrorSelect | ||||
Select ejection method when IQA error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_IQA_PARAM) | MF_IQA | bErrorEject | SCNMICRFunctionContinuously(, FunctionType.MF_SET_IQA_PARAM) | MFIqa | ErrorEject | ||||
Select whether to continue scanning when IQA error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_IQA_PARAM) | MF_IQA | bCancel | SCNMICRFunctionContinuously(, FunctionType.MF_SET_IQA_PARAM) | MFIqa | Cancel | ||||
Select image type for IQA test | BiSCNMICRFunctionContinuously(, , MF_SET_IQA_PARAM) | MF_IQA | bImageFormat, bColorDepth, bThreshold, bColor, bExOption and sResolution | SCNMICRFunctionContinuously(, FunctionType.MF_SET_IQA_PARAM) | MFIqa | ImageFormat, ColorDepth, Threshold, Color, ExOption and Resolution | ||||
Specify detail condition in IQA test | BiSCNMICRFunctionContinuously(, , MF_SET_IQA_PARAM) | MF_IQA | bUndersize, bOversize, bMincompressed, bMaxcompressed, bFront_rear, bToolight, bToodark, bStreaks, bNoise, bFocus, bCorners, bEdges, bFraming, bSkew, bCarbon, bPiggyback | SCNMICRFunctionContinuously(, FunctionType.MF_SET_IQA_PARAM) | MFIqa | Undersize, Oversize, Mincompressed, Maxcompressed, Front_rear, Toolight, Toodark, Streaks, Noise, Focus, Corners, Edges, Framing, Skew, Carbon, Piggyback | ||||
Get IQA result | BiGetIQAResult | MF_IQARESULT | GetIQAResult | |||||||
8 | In addition to Step 3, this sample program retrieves and displays barcode decode results, and detects errors. It also retrieves device status and device information. | Get current device status | BiGetStatus | GetStatus | ||||||
Get current ink status | BiGetInkStatus | GetInkStatus | ||||||||
Get device information | BiGetPrnCapability | GetPrnCapality | ||||||||
Get maintenance counters | BiGetCounter | GetCounter | ||||||||
Enable/disable barcode decode error detection | BiSCNMICRFunctionContinuously(, ,
MF_SET_BARCODE_FRONT_PARAM) BiSCNMICRFunctionContinuously(, , MF_SET_BARCODE_BACK_PARAM) |
MF_BARCODE | bErrorSelect | SCNMICRFunctionContinuously(,
FunctionType.MF_SET_BARCODE_FRONT_PARAM) SCNMICRFunctionContinuously(, FunctionType.MF_SET_BARCODE_BACK_PARAM) |
MFBarcode | ErrorSelect | ||||
Select ejection method when barcode decode error is detected | BiSCNMICRFunctionContinuously(, ,
MF_SET_BARCODE_FRONT_PARAM) BiSCNMICRFunctionContinuously(, , MF_SET_BARCODE_BACK_PARAM) |
MF_BARCODE | bErrorEject | SCNMICRFunctionContinuously(,
FunctionType.MF_SET_BARCODE_FRONT_PARAM) SCNMICRFunctionContinuously(, FunctionType.MF_SET_BARCODE_BACK_PARAM) |
MFBarcode | ErrorEject | ||||
Select whether to continue scanning when barcode decode error is detected | BiSCNMICRFunctionContinuously(, ,
MF_SET_BARCODE_FRONT_PARAM) BiSCNMICRFunctionContinuously(, , MF_SET_BARCODE_BACK_PARAM) |
MF_BARCODE | bCancel | SCNMICRFunctionContinuously(,
FunctionType.MF_SET_BARCODE_FRONT_PARAM) SCNMICRFunctionContinuously(, FunctionType.MF_SET_BARCODE_BACK_PARAM) |
MFBarcode | Cancel | ||||
Retrieve barcode recognition result | BiGetBarcodeData | GetBarcodeData | ||||||||
Enable/disable mis-insertion detection | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bPaperMisInsertionErrorSelect | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | PaperMisInsertionErrorSelect | ||||
Select ejection method when mis-insertion error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bPaperMisInsertionErrorEject | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | PaperMisInsertionErrorEject | ||||
Select whether to continue scanning when mis-insertion error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bPaperMisInsertionCancel | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | PaperMisInsertionCancel | ||||
Enable/disable double-feed detection | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bDoubleFeedErrorSelect | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | DoubleFeedErrorSelect | ||||
Select ejection method when double feed error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bDoubleFeedErrorEject | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | DoubleFeedErrorEject | ||||
Select whether to continue scanning when double feed error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bDoubleFeedCancel | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | DoubleFeedCancel | ||||
Enable/disable MICR noise detection | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bNoiseErrorSelect | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | NoiseErrorSelect | ||||
Select ejection method when MICR noise error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bNoiseErrorEject | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | NoiseErrorEject | ||||
Select whether to continue scanning when MICR noise error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bNoiseCancel | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | NoiseCancel | ||||
Enable/disable MICR character recognition error detection | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bBaddataErrorSelect | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | BaddataErrorSelect | ||||
Select ejection method when MICR character recognition error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bBaddataCount | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | BaddataCount | ||||
Select whether to continue scanning when MICR character recognition error is detected | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bBaddataCancel | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | BaddataCancel | ||||
Enable/disable to detect errors when magnetic waveform is not found | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bNodataErrorSelect | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | NodataErrorSelect | ||||
Select ejection method when MICR magnetic waveform is not found | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bNodataErrorEject | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | NodataErrorEject | ||||
Select whether to continue scanning when MICR magnetic waveform is not found | BiSCNMICRFunctionContinuously(, , MF_SET_PROCESS_PARAM) | MF_PROCESS01 | bNodataCancel | SCNMICRFunctionContinuously(, FunctionType.MF_SET_PROCESS_PARAM) | MFProcess | NodataCancel | ||||