Method and apparatus for interactively creating a card which includes video and cardholder information5617528Abstract A card creation apparatus including a microprocessor which controls operation of the card creation apparatus based on a predetermined card design that specifies positions on a planar surface of a card for layout frames of a video picture and cardholder information fields which are to be printed on the card is provided. An input mechanism is operatively coupled to the microprocessor to input a plurality of user commands and cardholder information corresponding to the cardholder information fields. A video camera is operatively coupled to the microprocessor to obtain a video picture of a subject. A display is operatively coupled to the microprocessor to display an image of the predetermined card design including the video picture and cardholder information within the predetermined card design substantially as can be printed in response to one user command of the plurality of user commands. A method of creating a card also is provided. Claims What is claimed is: Description FIELD OF THE INVENTION
TABLE 1
______________________________________
Kodak CCD 4000 RGB Video Camera Specifications
______________________________________
Dimension 7.62 .+-. 0.254 cm (3.0 .+-. 0.1")
high .times. 9.144 .+-. 0.254 cm (3.6 .+-.
0.1") wide .times. 9.652 .+-. 0.254 cm
(3.8 .+-. 0.1") long
Scanning 525 lines, (2:1 interlace)
Image Device 0.847 cm (1/3 inch) interline
transfer CCD
Interlace 2:1
Edge Enhancement
10IRE overshoot on 50 IRE Step
(horizontal only)
Resolution 768 horizontal .times. 484 vertical
pixels
Signal to Noise
Gamma Correction = 0.45
Ratio 50 dB minimum (luminance)
45 dB minimum (chroma PM)
Lens Mount C-mount
Camera Mounting
1/4-20 UNC
Connectors Lens Control: 6-pin female
Mini-Din
External (genlock): 8-pin
female Mini-Din
Frame-Store: 8-pin female Mini-
Din
Power: 4-pin female Mini-Din
RGB/S/NTSC Composite Video: 9-
pin D-Subminiature female
Electrical Voltage: 12 VDC
Consumption: 6.72 Watts maximum
(12V @ 560 mA)
Output: NTSC Video: 1.0 Vp-p,
Z = 75 W
RGB Video: 0.7 Vpp, Z = 75 W
RGB Sync: 2.0 Vp-p, 75 W
Operating -5.degree. C. (23.degree. F.) to 40.degree. C.
(104.degree. F.)
Temperature Range
______________________________________
The camera assembly includes an automatic electronic flash, as detailed in Table 2.
TABLE 2
______________________________________
Electronic Flash Specifications
______________________________________
Dimensions 14.91 cm (5.87") wide .times. 8.89 cm
(3.5") high .times. 4.75 cm (1.87")
deep
Accessories Removable sensor, 30.48 cm
(12") shutter cord
Intensity 2900 beam candle power seconds
(BCPS) minimum 5500.degree. Kelvin
color temperature
F-Stop Settings
4 automatic F-stop selections
to match the depth of field
Flash Duration 1/1000 to 1/30000 second in
automatic mode
Angles of 45.degree. vertical, 60.degree. horizontal
Illumination
______________________________________
The camera assembly also includes a zoom lens, as detailed in Table 3.
TABLE 3
______________________________________
Zoom Lens Specifications
______________________________________
Focal Length 1.2 cm-7.2 cm
F-Stop F1.4
Iris Adjust Manual
Lens Mount C-mount
______________________________________
A frame grabber printed circuit board, as detailed in Table 4 is installed in the microcomputer 42 (e.g., personal computer (PC)) for converting the video image from the camera into an image format that the microcomputer can read, display, and save. It is the device that captures and digitizes the live video image as the image is sent from the video camera. TABLE 4 Frame Grabber Specifications Interface 16-bit data bus host (PC/AT compatible) Digitizing real-time, interlaced video (30 frames per second) Memory 1 Megabyte (MB), RGB composite S-Video, 15-bit Color Output video graphics adapter (VGA) The card creation apparatus and method of the preferred embodiment operates in the Microsoft Windows operating system. Although it will be appreciated, that the present invention might be utilized in other operating systems. The basic card creation apparatus 40 consists of the following software components: Windows Operating System Printer Driver Capture Board Driver Database Driver Image Capture Software In addition, your system may include the following software drivers for peripheral devices: Scanner Option Driver Signature Pad Option Driver Magnetic Stripe Encoder Option Driver The following information briefly describes all of the software driver components. The printer driver translates the image and text output of the card creation system 40 into a language that the card or report printer can read. The capture driver controls the camera's capturing an of an image and the computer monitor's display of that image. The database driver software program enables communication between the card creation system 40 and the database to which you save data. The card creation system 40 ships with four different database drivers. Each card creation site must install at least one. If the site does not save cardholder data, the site will not use the database driver. The scanner option driver interprets a scanned image, digitally reconstructs it, and then displays the image on your screen. It also enables you to adjust the scanner settings you see on your screen. The signature option driver enables communication between the signature pad and the card creation system 40. It also enables you to adjust the signature option settings you see on screen. The magnetic stripe encoder option driver allows the card creation system 40 to work with your magnetic stripe encoder. It delivers data to be encoded to the encoder and reads encoded information back into the card creation system 40 once you encode the card. The card creation apparatus 40 can be summarized as follows in reference to FIGS. 1-84. The card creation apparatus includes a microprocessor 42 which controls operation of the card creation apparatus 40 based on a predetermined card design which specifies positions on a planar surface of a card for layout frames of a video picture and cardholder information fields which are to be printed on the card. An input mechanism 48, 50, 52 is operatively coupled to the microprocessor 42 to input to the microprocessor 42 a plurality of user commands and cardholder information corresponding to the cardholder information fields. A video camera 54, 56 is operatively coupled to the microprocessor 42 to obtain a video picture of a subject. A display 46 is operatively coupled to the microprocessor 42 to display an image of the predetermined card design including the video picture and cardholder information within the predetermined card design substantially as can be printed in response to one user command of the plurality of user commands. The microprocessor 42 preferably includes a design mechanism 74 for interactively creating the predetermined card design by displaying the predetermined card design on the display 46 and modifying specific positions on a planar surface of a card for each of the layout frames of the video picture and the cardholder information fields in response to several user commands of the plurality of user commands. This interactive card design is further enhanced by having precision placement capabilities of the card fields by specifying exact coordinates, height, and width of card fields. This allows a user to pinpoint card fields which makes alignment and placement easier. The design mechanism 74 preferably is programmed to provide for placing static fields in the predetermined card design such that a card background can be specified for use with several related cards. By using these static fields a picture and text background can be specified for use by one customer company, department within a company, or security level group within a company. The microprocessor 42 preferably provides for automatic selection of a card background from a plurality of card backgrounds based on contents of cardholder information associated with a particular cardholder. This automatic selection is termed data driven production and it eliminates a user from some types of data entry so that strict conformity with other generated cards is enforced within a single group or company by the microprocessor 42 making decisions based on data entered as of cardholder information. The design mechanism 74 also preferably includes the capability to designate a particular cardholder information field in the predetermined card design as a bar code field. Optionally, the card creation apparatus includes a bar code field type which is a black on black bar code. This printing of bar codes on a black background makes photocopying of the bar codes from a card very difficult. The microprocessor 42 preferably further includes a database interface for storing and retrieving the cardholder information in a card creation database. The microprocessor 42 preferably further includes a linker 76 for generating a link file and a Data Capture Window by selecting one predetermined card design from a plurality of predetermined card designs with associated cardholder information fields. Subsequently, particular sources for the cardholder information as well as particular storage destinations for the cardholder information are determined in response to user commands. The linker 76 preferably includes a mechanism for incorporating particular source and destination designations for the video picture in the link file and the Data Capture Window in response to user commands. The database interface in the preferred embodiment is open database connectivity (ODBC) compliant such that at least some customer information can be stored and retrieved from a database external to the card creation apparatus. Details of the ODBC compliant will be discussed in later sections. The microprocessor 42 also preferably includes a filter for extending functionality of the card creation apparatus 40 beyond a core set of features. For example, a bar code check digit calculation and a data validation scheme can be implemented within the Windows Dynamic Link Library (DLL) structure. In addition, the microprocessor 42 preferably includes an external command mechanism for exposing a core set of features of the card creation apparatus 40 to function calls external to the card creation apparatus 40. In the preferred embodiment, this is the Window Dynamic Data Exchange (DDE) feature set and preferably includes a DDE API as well. An interface operation is preferably performed by a frame grabber board which operatively couples the video camera 54 and the microprocessor 42 such that the video picture is stored into a memory of the microprocessor 42 in response to another user command of the plurality of user commands. The microprocessor 42 preferably includes a Chroma Key processing feature for editing the stored video picture to revise a picture background of the video picture with another picture background. Subsequently, the edited video picture is stored in place of the stored video picture in the memory of the microprocessor 42. The Chroma Key process includes a software package as well as a bright blue back drop. It is a solution for those customers who desire the ability to change background color hue or pattern. With an image captured through the card creation apparatus 40, Chroma Key software replaces the blue background with a user selected color. The components that make up the chroma Key process are as followed: Input image with blue background edge detection shoulder block (generated base on edge information) eye block (generated base on edge information) chroma key (base on pixel color, shoulder and eye block) intensity replacement (base on original image intensity) Output image with new background color The ability to change background color offers the utility of color background as classification, aesthetic and security purposes. Sixteen hues are available to user to choose from as shown in Table 5.
TABLE 5
______________________________________
Color hue R value G value B value
______________________________________
Saturated Red 250 10 10
Light Red 250 100 100
Saturated Green
10 250 10
Light Green 100 250 100
Saturated Blue
10 10 250
Saturated Magenta
250 10 250
Light Magenta 250 100 250
Saturated yellow
250 250 10
Light yellow 250 250 100
Saturated cyan
10 250 250
Light cyan 100 250 250
gray 100 100 100
black 0 0 0
orange 250 150 50
purple 150 50 250
Twill 50 250 150
______________________________________
It should be noted that the software only changes the hue, not brightness nor saturation of the color. The brightness of the original background is maintained in the new image to create a smoother transition between background and image. Maintaining the original intensity also hides some of the error in Chroma Key process. In addition to the limitation of color change, user should also note that the color they perceive the monitor is not identical to the color printed on the card. The color error between monitor and printed card is a result no color translation between color devices. Some errors in the Chroma Key process may occur based on the particular subject being imaged. Blonde hair produces large error while errors with dark hair is less visible. Also, frizzy hair is more difficult to "key" while clean short hair styles is easy to segregate from background. Blue clothing or similar color to the back drop may result in edge detection errors. The result is changing of shirt color as well as background. Lighting must be the similar to the current photo capture procedure in the card creation apparatus. Poor lighting on subject or on back drop may result low signal to noise thus reducing the software's ability to segregate background from subject. The Chroma Key feature can be enhanced by having a dynamic neckline finder and shoulder edge smoothing. The likelihood of these errors is high when the head to shoulder size ratio is different in the image field. This problem is especially likely to occur with subject wearing blue clothes. Another improvement is the selection of a replacement background color. It may be desirable to have all possible color combinations available to user. Furthermore, customer should have the option to create a background pattern instead of a solid color. The microprocessor 42 further includes a post-exposure processing feature for editing the stored video picture to alter an average light intensity level of the video picture and subsequently storing the edited video picture in place of the stored video picture in the memory of the microprocessor 42. This option allows you to display, as shown in FIG. 65, a series of nine images with varying exposures after you freeze a temporary image. You click the option with the best exposure to save as your permanent capture. This complexion enhancement feature is particularly important for correcting light exposure levels on light or dark complexion subjects. The microprocessor 42 further includes an image processing feature for editing by scaling and cropping the stored video picture. Subsequently, the edited video picture is stored in place of the stored video picture in the memory of the microprocessor 42. You use the Crop Image window, shown in FIG. 66, to choose the part of the image that will appear on the card. The Crop Image window displays the captured image, along with a cropping box. Only the portion of the image within the cropping box's border will appear on the card. You can move and size the cropping box. To crop the image, move the pointer inside the cropping box. Hold down the right mouse button. The pointer becomes a four-way arrow. Move the pointer toward the center of the cropping box to make the image smaller. Move the pointer toward the outside of the cropping box to enlarge the image. To move the cropping box, move the pointer inside the cropping box. Hold down the left mouse button. The pointer appears as cross hairs. Move the mouse in the direction in which you want to move the cropping box. To save the cropped image, choose the Save button. You return to the Production window, shown in FIG. 42. To return to the Live Image window, shown in FIG. 44, choose Cancel. The microprocessor 42 preferably also includes an automatic data input feature for enhancing cardholder information input through the input mechanisms 48, 50, and 52. The automatic data input feature offers many functions. One function is placing a default value in one of the cardholder information fields. Users are able to select the following default types of field entry on the linker screen. System DATE System TIME User Name DOS Environment variable (such as Station ID) User Defined String Auto Increment Fields If users want Data and Time, they can use a composite field. For simplicity, default data and time formats are the formats specified in the WIN.INI file. A User Defined string is simply text that is inserted to a field. This is similar to a static field on a card but it can be inserted into the database. Just before inserting a record, with autoincrement fields, reads the database and finds the highest value in the autoincrement column (e.g., uses the SQL max function call). Subsequently, the auto-increment value is added to this value for the record and inserted in the field. It is very advisable to make the auto-increment column a numeric type. Also, it is very advisable to make the auto-increment column an index. The automatic data input feature also preferably provides a function for adjusting a font size assigned to a particular cardholder information field in the predetermined card design when data input to the particular cardholder information field exceeds a predetermined character length. This is particularly useful, for example, when a user has a long last name and wants all of the name to print on a card, but the space allotted for the last name is not large enough if the default font size is used. As such the font size is reduced until all of the name fits on the card. The automatic data input feature also preferably includes a function for automatically incrementing a numeric value in a particular cardholder information field when an associated card is printed. A new type of link field called PrintActionLink is created. This special link cause "things" to happen when a card is printed. The "things" are to insert a `1` in a field (mark the card as printed) and update the record and, to increment a field (count the number of times a card is printed) and update the record Reasons for this PrintActionLink are: A customer wants a field in the database "flagged" when a card is printed. A customer wants a field in the database to be incremented when a card is printed. A customer wants batch printing to only print unprinted cards. The Linker 76 will have a new type of link field: PrintActionLink. The name represents the fact that certain actions will take place when a card is printed. The field types in the linker will then be: ImageLink PromptLink (a text field) CompositeLink PrintActionLink With this change, the inheritance hierarchy in the Linker 76 will appear as:
______________________________________
BaseLink --
.vertline.--DisplayableLink--
.vertline.--PromptLink-
PrintActionLink
.vertline. .vertline.--ImageLink
.vertline.--CompositeLink
______________________________________
A PrintActionLink class will inherit from PromptLink, DisplayableLink and BaseLink. A PrintActionLink link element needs information from DisplayableLink. It doesn't need everything from DisplayableLink but the slight waste of space is compensated by the simplicity of implementing it this way. A PrintActionLink field will have the following properties: The PrintActionLink class will add the following variables:
______________________________________
PRN.sub.-- TRIGGER.sub.-- TYPE
PrintActionType;
// see enum below
BOOL FilterOnBatchPrint;
// If true, during batch print,
// only print non-printed cards
______________________________________
An enum will be created to classify the PrintActionLink types:
______________________________________
enum PRN.sub.-- TRIGGER.sub.-- TYPE
{
INSERT.sub.-- ONE,
INCREMENT
};
______________________________________
The user chooses a PrintAction Link element just as they would any other type of link element. The following variables are added to the capture window:
______________________________________
MyEdit *PrintedControl;
// points to "set to one" control
MyEdit *IncrementControl;
// points to "increment" control
BOOL BatchFilter;
// TRUE if we filter on PrintedControl
______________________________________
After the link is read in AND the screen controls exist, scan the link field list. If any PrintTrigger fields are present, set the two pointers as appropriate (otherwise set them to NULL), and set BatchFilter to TRUE or FALSE; When the Clear key is pressed, set PrintedControl and IncrementControl to 0 (assuming the fields exist). New records should start out as not printed, and 0 cards printed. In Single Print Mode, when the Print button is pressed (or selected via menu), if (BatchFilterControl !=NULL) OR (IncrementControl !=NULL) call the PrePrint() function. The PrePrint() function is named since it will take care of any details before the card is printed. The PrePrint function looks at the two pointers: If the record on the screen is not associated with a database field, return FALSE. If (PrintedControl !=NULL) SetPrintedControl to `1`; If (IncrementControl !=NULL) Get text from IncrementControl. Convert it to a long int, add one to it, convert back to text. Put the text back in the Increment Control. Update the Database If there is an error, return FALSE else return TRUE. If PrePrint() returns TRUE, print the card. In Batch Print Mode, If BatchFilter is TRUE, Simply check the PrintedControl for a 1. If it has a 1, skip the record; otherwise, call PrePrint() and print the card. It may be desirable to have an Insert/Update on print. Also, a User defined action on print could be supported with a DLL with a function to call. The automatic data input feature also preferably includes a function for generating revised contents of a particular cardholder information field based on data input to the particular cardholder information field through the input 48, 50, or 52. For example, a PIN number could be entered and the PIN data is sent to an external function (i.e., DLL) to encrypt the PIN. The encrypted PIN is returned to the card creation apparatus 40 and input in a cardholder information field. Similarly, human readable check digit could be generated for bar codes fields. A printer 62 preferably is operatively coupled to the microprocessor 42 to print on a card the predetermined card design including the video picture and cardholder information within the predetermined card design substantially as can be printed in response to another user command of the plurality of user commands. In the preferred embodiment, the printer 62 includes the capability to interpret an Encapsulated PostScript file which describes the predetermined card design including the video picture and cardholder information within the predetermined card design to be printed. The advantage of this is more compatibility with various output devices and the files tend to be smaller than bitmap files. It should be noted that the printer 62 may be a color printer which prints a photographic quality images in color or grayscale. The microprocessor 42 preferably includes a mechanism for selecting between at least two printers such that cards can be printed from at least two different printers.In the preferred embodiment, this feature can be implemented with the standard Microsoft Windows printer driver protocol links. A signature capture device (not shown) preferably is operatively coupled to the microprocessor 42 to obtain a video picture of a subject's signature from a pressure sensitive pad. This feature will be discussed in detail in the following sections. A scanner 58 preferably is operatively coupled to the microprocessor 42 to obtain a video picture of a subject from a still photograph. The microprocessor 42 preferably includes a mechanism for rotating an orientation of the video picture from the scanner 58 such that orientation within the predetermined card design of the video picture can be modified. In addition, the scanner 58 preferably is compatible with the TWAIN scanner control standard such that the microprocessor 42 can use the industry standard TWAIN control protocols. Finally, the microprocessor 42 preferably includes a security mechanism for restricting access to different functions within the card creation apparatus based on individual user passwords. For example, one user with one password may be able to perform productions functions, but none of the card creation or administration functions would be enabled. A function can be enabled if the menu option is selectable. Similarly, a function can be disabled if the menu option is not selectable. Another, supervisory user may have full access to all menus and functions and further may assign individual users separate access levels based on passwords. Returning now to the signature capture optional device which uses a compact pressure sensitive pad that records handwritten data to a file. The pen-like stylus allows you to sign, draw or write notes for printing. It works with any IBM compatible PC that runs Windows and has an available RS-232 serial port. The minimum system requirements for installing and using the Signature Capture option are as follows: an IBM 386 compatible system or faster Windows v3.1 Card Creation Software 8 MB of memory 80 MB disk space a VGA monitor an available serial port To install the Signature pad, be sure to turn your PC off before you begin. 1. Locate the 9-pin RS232-C connector and insert it into a serial port on your PC. 2. Plug the power adapter into the mating socket on the RS232-C connector. 3. Plug the power adapter into a standard AC outlet. Both LEDs on the signature pad should flash. If not, check your power supply. 4. Turn on your PC and install the Signature Option software. To install the Signature Option software 1. Place the Signature Option Kit in a disk drive. 2. From the Windows Program Manager File menu, choose Run. 3. Type a:.backslash.setup (or, b:setup depending on which drive you are using) and press Enter. 4. Follow the instructions that display on the screen. The Signature Capture Option allows you to change the thickness of the pen stroke or the size of the Capture window through the System Setup pulldown menus. To change the Signature Capture Configuration 1. At the main menu, choose System. Select Setup from pulldown menu that appears. A drop down menu appears. 2. Choose Input Devices. The Input Devices dialog box appears as shown in FIG. 67. 3. Select Signature pad from the Devices list box and click on Edit. (You are editing the default configuration. The signature pad does not allow multiple configurations. When you click on the Edit button, you are editing the default configuration.) The Signature Capture Configuration dialog box appears as shown in FIG. 68. 4. To change the thickness of the pen stroke, enter a new value in the Line Thickness text box. The value must be between one and eight. The larger the number, the thicker the signature pen stroke appears. Signatures may appear thicker when enlarged, and thinner when reduced. 5. To enter a new value in the Pad Magnification Factor text box. The value must be within a range of 0.500 and 4.000. A value of 1.000 will produce a window on a VGA display whose size is the approximate size of the pad. The higher the magnification value the bigger the signature capture window appears. You should be careful not to make the window display too large. When the capture process reduces the signature image to field size, some distortion may occur. 6. Choose OK to save your changes. The Input Devices dialog box returns. 7. Click on Close to return to the main menu. This section provides information about how to use the Signature Capture option. This includes: Adding a Signature Field to a Database Adding a Signature Field to a Card Editing a Link Printing a Card The procedures in this section assume that you are saving signatures to a database. However, this is an optional step. For more detailed information about databases, card design, links, and production, refer to the following sections. Adding a Signature Field to the Database To add a signature field to a database: 1. At the main menu, choose Database. When the pulldown menu appears, select Edit. The Data Manager window appears. 2. Choose File from the main menu. When the pulldown menu appears, select Connect. The SQL Data Source dialog box appears, as shown in FIG. 69. 3. Type Sample in the text box and click on OK. The Data Objects dialog box appears, as shown in FIG. 70. 4. Select Tables and click on Alter. You are going to alter the database table to include a Signature field. The Table Design dialog box appears, as shown in FIG. 71. 5. Click on the Name text box and replace the current entry with a name for the signature field. (Example: Signature) 6. Click on the Length field and type 128. (The signatures are saved as image fields and must be 128 characters.) 7. Click on Append to add the field to the table. 8. Click on Exit. A message box appears asking you if you want to alter the database table. 9. Click on Yes. 10. A warning message appears reminding you that all indexes are removed when you alter your database table. 11. Click on Yes. The Data Objects dialog box reappears of FIG. 70. 12. Select Indexes and click on New. The Index Design dialog box appears, as shown in FIG. 72. 13. Click on the Index text box and type the name of the Index. (Example: Name) 14. Click on the field you want to use as the index field. (Example: Name) 15. Click on the Allow Duplicates check box (database tables must have at least one unique index field.). 16. Click on OK. The Data Objects dialog box of FIG. 70 reappears. 17. From the Data Manager main menu bar, choose File. When the pulldown menu appears, select Exit. The main window returns. Adding a Signature Field to a Card Design To add a signature field to a card design 1. From the main menu, choose Card. When the pulldown menu appears, select Edit. The Edit Card Design dialog box appears, as shown in FIG. 73. 2. Select Visitor and click OK. The Card Designer window appears, as shown in FIG. 74. 3. Choose Field from the menu bar. When the pulldown menu appears, select New. The New Field dialog box appears, as shown in FIG. 75. 4. Select Signature and click OK. The Card Designer window returns with a Signature field, as shown in FIG. 76. 5. Double-click on the Signature Field. The Signature Field option dialog box appears, as shown in FIG. 77. 6. Type a new name in the Field Name text box (Example: Signature) and click OK. The Card Designer window reappears. 7. Choose File from the menu bar and Save from the pulldown menu. 8. Choose File again from the menu bar and Exit from the pulldown menu. The main window appears. Editing the Link To edit an existing link 1. Choose Link from the main menu and Edit from the pulldown menu. An Edit Link Design Dialog Box appears as shown in FIG. 78. 2. Select Visitor and click OK. The Link window appears, as shown in FIG. 79. 3. Choose Field from the menu bar and select New from the pulldown menu. The New Link Field Properties dialog box appears, as shown in FIG. 80. 4. Type a name for the field in the Field Name text box (Example: Signature). 5. Click on the Field Type list box and choose Image from the list. Then, click on OK. The Link window, as shown in FIG. 79, reappears with a new signature field in the Production Field list. 6. Select Signature in the Production Fields list. 7. Use the right mouse button to click on Signature in the Production Fields list. Then, still using the right mouse button, click on Signature in the Database Tables/Fields list. A line connecting the two fields appears to indicate that they are linked. 8. Use the right mouse button to click on Signature in the Production Fields list. Then, still using the right mouse button, click on Signature in the Card Fields list. A line connecting the two fields appears to indicate that they are linked. 9. In the Devices section of the window, click on the Input list box. A pull down list appears. 10. Choose Signature pad. Your configuration automatically appears in the configuration text box. 11. Choose File from the menu bar and select Save. 12. Choose File from the menu bar and select Exit. 13. A message appears asking you if you want to save changes. Click Yes if you have made further changes or No if you have not made any additional changes. The main window appears. Printing a Card To print a card with a signature field 1. Choose Production from the main menu and select Cards from the pulldown menu. The Link List dialog box appears, as shown in FIG. 81. 2. Select Visitor and click on OK. The Production window appears, as shown in FIG. 82. 3. Type a name in the Name text entry box (Example: John Doe) and press Tab. 4. Type a company name in the Company text entry box (Example: DataCard) and press Tab. 5. Capture an image in the Image capture field by choosing and Freeze and Save at each of the capture screens. For more information about capturing image, refer to the following sections. 6. Press Tab to move to the Signature field. The Signature Capture window appears, as shown in FIG. 83. 7. Press the middle button on the signature pad to activate the inking function. The red LED lights up. YOU can also use the mouse as a writing device by holding down the left mouse button and moving the mouse to simulate writing. You release the button when you finish. 8. Take a signature sheet (provided with the Signature pad) and place it over the writing area on the Signature pad. Use a regular ball-point pen to sign your name. Be sure to keep your signature within the writing area on the signature sheet. The pressure sensitive pad displays the handwritten data on the screen as you write. Your stroke should be even and firm, but not hard. Be careful to press only with the pen as you write. If the pad recognizes pressure from another source, it draws connecting lines between the two pressure points. 9. When you finish, press the Q (or Enter) on your keyboard to capture the written image and return control to your mouse. The as shown in FIG. 84 appears. 10. To begin saving your signature or note to a file, click on Save. You can also erase and rewrite the data by choosing Capture. This reactivates the Capture window and allows you to start again. 11. When the Production window reappears, click on Insert to save the record to the database. 12. Click on Print to print the card. Returning now to the scanner optional device 58 which is substantially like the signature capture device in operation and setup. The process of scanning an image is also similar to taking a picture with a camera. However, instead of using a flash or relying on natural light, a light bar on the scanner exposes an image on the scanning glass. The scanning software interprets the image, digitally reconstructs it, and then displays the image on your screen. The Twain interface uses an industry standard protocol to pass the digitized data from the scanner to the microprocessor 42 of the card creation apparatus 40. The Twain interface works with a variety of scanners. It's important that you familiarize yourself with the particular scanner you are using. Review the documentation and installation information carefully. Know the capabilities of your scanner and learn the scanning process. The minimum system requirements for installing and using the scanner are the same as those for the signature capture option. To capture scanned images, you need: a database with an image field to accept and store the captured image (optional) a card design with a field that accepts images a link definition that identifies the scanner as an input device The procedures in this section assume that the card creation software is installed and that the `Sample` database is enabled. They explain how to add an image field to an existing database, create a card with an image field, edit a link to identify the scanner as an input device, scan an image, and print a card. Saving images to the database is an optional step. For more detailed information about databases, card design, links, and production, refer to the following sections. Adding a Image Field to the `Sample` Database To add an image field the database 1. At the main menu, choose Database. When the pulldown menu appears, select Edit. The Data Manager window appears, as shown in FIG. 67. 2. Choose File from the main menu. When the pulldown menu appears, select Connect. The SQL Data Sources dialog box appears, as shown in FIG. 69. 3. Type Sample in the text box and click on OK. The Data Objects dialog box appears, as shown in FIG. 70. 4. Select Tables from the Type list box and click on Alter. You are going to alter the database table to include a second image field--a NEWIMAGE. The Table Design dialog box appears, as shown in FIG. 71. 5. Click on the Name text box and replace the current entry with a name for the image field. (Example: NEWIMAGE) 6. Click on the Length field and type 128. (Image fields must always be 128 characters.) 7. Click on Append to add the field to the table. 8. Click on Exit. A message box appears asking you if you want to alter the database table. 9. Click on Yes. A warning message appears reminding you that all indexes are removed when you alter your database table. 10. Click on Yes. The Index Design dialog box appears, as shown in FIG. 72. 11. Click on the Index text box and type the name of the Index. (Example: Name) 12. Click on the field you want to use as the index field. (Example: Name) 13. Click on the Allow Duplicates check box (database tables must have at least one unique index field). 14. Click on OK. The Data Objects dialog box reappears of FIG. 70. 15. From the Data Manager main menu bar, choose File. When the pulldown menu appears, select Exit. The main window returns. Creating a Card To create a card with an image field 1. From the main menu, choose Card. When the pulldown menu appears, select New. The Create New Card Design dialog box appears (not shown). 2. Type a name for the card in the Enter Name of Card text box (Example: New). Click on the Portrait radio button to create a portrait design. Click on OK. The Card Designer window appears, as shown in FIG. 74. 3. Choose Field from the menu bar. When the pulldown menu appears, select New. The New Field dialog box appears, as shown in FIG. 75. 4. Select Image and click OK. The Card Designer window of FIG. 74 returns with an Image field. 6. Make the image field larger by pointing to one of the handles (the squares on each corner of the field). Hold down on the left mouse button and drag the mouse to enlarge the field. (This is an optional step.) 7. Move the Image field so it's centered in the bottom half of the screen. Move the mouse pointer inside the image field, and hold down on the left mouse button. Drag the field to a new location. (This is an optional step.) 8. Double-click on the Image Field. The Image Field dialog box appears (not shown). 9. Type a new name in the Field Name text box (Example: NewImage) and click OK. The Card Designer window reappears, as shown in FIG. 74. 10. Choose Field from the menu bar. When the pulldown menu appears, select New. The New Field dialog box appears, as shown in FIG. 75. 11. Select Variable Text and click OK. The Card Designer window returns with a text field, as shown in FIG. 74. 12. Double-click on the variable text field. The Variable Text Attributes dialog box appears (not shown). 13. Type a new name in the Field Name text box (Example: Name). 14. Click on Font. (This is an optional step.) The Font dialog box appears (not shown). 15. Change the font size to 36 and click OK. (This is an optional step.) The Card Designer window reappears, as shown in FIG. 74. 16. Choose File from the menu bar and Save from the pulldown menu. 17. Choose File again from the menu bar and Exit from the pulldown menu. The main window appears. Creating a Link 1. Choose Link from the main menu, and Create from the pulldown menu. The Create Link Definition dialog box appears (not shown). 2. Click on the Linked Card Design list box and select your new card design (Example: NEW). The system automatically fills the Link Name field with the same name. 3. Click on the Linked Database list box and select Sample. 4. Click on the AutoLink check box to allow the link to create production fields from the names of the card fields. The Link Definition window appears, as shown in FIG. 79. The auto link feature also links database fields to production fields if the names match. If you select the NewImage field in the Production list, notice that both card and database Name fields are linked to it. Use the right mouse button to click on NewImage in the Production Fields list. Then, with the right mouse button, click on Image in the Database Tables/Fields list. A line connecting the two fields appears to indicate that they are linked. In the Devices section of the window, click on the Input list box. A pull down list appears. Choose Scanner as the input device. 8. Click on the Configuration list box and choose the <default> configuration. (If you do not choose a configuration, the software uses the default settings automatically. (For more information about how to change the configuration, refer to the next section.) The Link shows (not shown but similar to FIG. 79) the link image field definition. The NewImage field has the Scanner identified as the input device. In this link definition, the scanner uses the <Default> configuration settings. Choose File from the menu bar and select Save. 10. Choose File from the menu bar and select Exit. The main window appears. Capturing an Image 1. Choose Production from the main menu and select Cards from the pulldown menu. The Link List dialog box appears, as shown in FIG. 81. 2. Select New and click on OK. The Production window appears, as shown in FIG. 82. 3. Type a name in the Name text entry box (Example: Jane Doe) and press Tab to move to the NewImage field. The scanning window becomes active and a preview image appears. The preview window will vary between scanners. Refer to your scanner documentation for specific information about how to use the settings that become available. 4. When you are ready to begin saving the preview image, click on Final or Save. The Crop Image dialog box appears, as shown in FIG. 66. 5. Use the crop feature to move and size the cropping box. The system saves only the portion of the image that is within the border of the cropping box. To change the size of the image, hold down the right mouse button and move the mouse pointer inside the cropping box. Notice the pointer changes its shape to a four-way arrow. Move the pointer in to make the frame smaller. Move it out to make the frame bigger. To move the frame, hold down on the left mouse button. Move the mouse pointer inside the cropping box and drag the frame to its new location. 6. When you are ready to save the image, click on Save. The Production window returns with the image displayed in the Image field. Changing the Scanner Configuration The scanner configuration settings enable you to make changes that affect how the scanner works. For example, you can rotate the image, or identify a specific part of the picture to scan on the scanning glass. Some scanners may also allow you to adjust the contrast and brightness, or enhance the picture. The new configurations you create become choices in the Link definition. The information that follows explains how the settings on this dialog box (which is not shown) affect how your scanner works. Scanner Settings Show Source Dialog. This check box determines whether or not the software interface from the scanner will be available to operators as the images are being scanned. This setting toggles on and off. (X=on). Rotation. Use this option to rotate the images being scanned. Your options are as follows: 0.degree.. No rotation. 90.degree.. Turns the captured image a quarter turn to the left. 180.degree.. Turns the captured image two quarter turns to the left. 270.degree.. Turns the captured image three quarter turns to the left. Resolution. Refer to the documentation from your scanner for information about the setting the resolution. Scanner to Use. Use this list box to identify an alternate scanner for the configuration you are creating. This option is only necessary if you are using more than one type of scanner and you want to define a configuration that uses a scanner other than your default scanner. Click on the list box to display the list of installed scanners. Image Frame Position. Use the horizontal and vertical fields in this column to identify the position of the area you want to scan. Refer to your scanner documentation for the point of origin. Depending on the type of scanner you are using, scanning may be from top to bottom and right to left, or bottom to top and left to right. Size. Use the horizontal and vertical fields in this column to identify the size of the area you want to scan. Unit. Use this option to choose inches or centimeters as the unit of measurement. Configuration Configuration list box. Click on this list box to list all the configurations currently available. Select the configuration you want to view or change. Default check box. Click on this check box to use the current configuration as the default. Default Scanner. If you have more than one scanner installed on your system, use this button to identify which one you want to use as your default. Scanner Dialog. Use this button to test the scanner interface. To create a new scanning configuration 1. At the main menu, choose System. Select Setup from pulldown menu that appears. A drop down menu appears. 2. Choose Input Devices. The Input Devices dialog box appears, as shown in FIG. 67. 3. Select SCANNER from the Devices list box. The list of scanner configurations appears in the Configurations list. 4. Select a configuration and click on Edit. (You must select a configuration in order to access the Scanner Configuration dialog box.) The Scanner Configuration dialog box appears (not shown). 5. Alter the settings you want to change and click on New. The entry in the list box changes to indicates that there is no name. 6. Enter a name for the configuration and click on Save. 7. Check the Default check box if you want to use this configuration as the default. 8. Click on Close to return to the Input Devices dialog box, as shown in FIG. 67. To edit a scanning configuration 1. At the main menu, choose System. Select Setup from pulldown menu that appears. A drop down menu appears. 2. Choose Input Devices. The Input Devices dialog box appears, as shown in FIG. 67. 3. Select the configuration you want to change and click on Edit. The Scanner Configuration dialog box appears (not shown). 4. Alter the settings you want to change and click on Save. 5. Check the Default check box if you want to use this configuration as the default. 6. Click on Close to return to the Input Devices dialog box, as shown in FIG. 67. To delete a configuration 1. At the main menu, choose System. Select Setup from pulldown menu that appears. A drop down menu appears. 2. Choose Input Devices. The Input Devices dialog box appears, as shown in FIG. 67. 3. Select the configuration you want to delete and click on Remove. As illustrated in FIG. 2, a preferred embodiment of the present invention includes five basic functions or modules: Monitor 70 Database Design 72 Card Design 74 Card/Database Link 76 Production 78 The monitor function oversees the entire system and provides access to the other four functions. In addition to monitoring activity among the system functions, the monitor function provides the following functions to the system: Security User accounts can be added to or deleted from the system. When a user is added to the system, a login name and password is specified to provide system security. On a user-to-user basis, specific system functions to which a user has access rights can also be specified. A user's access rights can be changed at any time. Version Control and System Update/Upgrade When the system is upgraded, the monitor checks the versions of the drivers and DDLs, verifying compatibility. System Configuration The configuration manager allows installation and configuration of the system for a variety of capture and output devices. It also provides the capability to view a listing of the current configuration and version strings of the other functions. System Logs The monitor function also logs both system and production activity. The production log provides valuable production statistics from which operator productivity can be measured while the system log provides a listing of all system activity, which may assist in troubleshooting system problems. Both logs contain a maximum of 1000 entries, which are time-stamped and listed serially. The database design module allows a user to define a database to which cardholder records are stored. Through open database connectivity (ODBC), an existing database format can be defined, provided it complies with ODBC. Local, networked, external, or distributed databases can be defined. Multiple users address a single database server. Standard database functions include: Report generation Import/Export of records containing images Searches and queries Database activity statistics Output to laser printers Storage/retrieval Record managements (e.g. insert, delete, or update a record) The Card Design module offers the capability of designing cards in a WYSIWYG (What You See Is What You Get) environment. The card is designed in a work space, which represents the actual card. The type, color, size, and location for each field on the card are defined. As these fields are defined, the user can immediately see what those fields will look like. The Card Design module supports bar codes. The Card Design module contains the following functions: Create a Card Design A card can be designed from scratch or by using a template. If a card is created from scratch, all the fields on the card must be added and defined. If a template is used, an existing card design is selected, modified, and saved under a new name. Whether a card is created from scratch or a template is used, the Card Design module offers the following features: Horizontal and vertical rulers Card background patterns Drag and drop Grow/shrink fields Click to mark, release to size Dynamic and static text fields Item colors for background (256 colors plus transparent) and foreground (20 colors) Fifteen bar codes with checksums Text rotation Display of the card design during data entry Edit a Card Design Once a card design has been created, it can be modified. When a card design is modified, a design is selected from a list of existing card designs. After being selected, the selected card design is displayed in the WYSIWYG Card Design window. When editing a card design, the system monitors for errors and notifies the operator if an error exists, such as an overlapping field. The operator is prompted to either fix or ignore the problem. Save a Card Design When the operator saves a card design, the card design's attributes are saved to an internal database. A name must be assigned to the card design when it is saved. Delete a Card Design Before the operator can delete a card design, the system examines the system data to determine whether or not any of the card's fields are linked to a database field. If a card design field is linked, the card design can't be deleted until the link is removed. Import a Card Design Badge forms, logos, and card background patterns can be imported into the card design. From a dialog box, the operator can select the source file to import. A predetermined list of graphic patterns are preferably provided. Export a Card Design Once a card design is created, it can be exported to a destination file of any assigned name. The Link module fulfills two purposes: Capture data The link module is used to create the data capture screen into which the operator will type textual data for a cardholder into fields and captures the cardholder's picture into an image field. The card design itself can be used in generating the data capture window, or the data capture window can be created from scratch. The data capture window fields have a range of field attributes available to build a robust capture facility for producing cards, as well as populating the database. Each data capture window assumes the name of the link to which it is associated; when the operator accesses data capture they must specify the name of the link to use. Dynamically links fields on the card to fields in the database The link module can also be used to establish the link that ties database fields to card design fields, allowing the system to populate the correct database fields and print the captured data on the card. Each link is assigned a name by which it can be retrieved for modification; the operator must also specify the link to use for each data capture session. Only those database fields that are actually going to be used on the card need be linked. In addition, each data capture field to appear on the card need not be linked. However, each field appearing on the card must be linked to a database field. The Production module includes the data capture, card printing, and database update functions. The modules' functionality, however, is dependent on the production mode selected. Two production modes are available: Single Mode As the name implies, the single production mode involves data capture, card printing, and optional database update for a single cardholder. When the operator accesses the single production mode, the operator is asked to select a link. The link determines the data capture window that will be displayed, as well as the database fields that will be updated and card design that will be printed. Upon selecting a link definition the associated data capture window is displayed. The operator types the textual data into the appropriate text fields of the data capture window, captures the cardholder's video image into the image field of the data capture window, and prints the card. The system validates all fields before printing the card. If desired, the operator can update the database with the cardholder's data by entry of the Update button on the Data Capture Window. When capturing data, the operator has the option of using a feature which displays a representation of the card design with the captured information shown as the operator enters it. Batch Mode Batch mode is intended for printing cards for multiple cardholder records. The operator retrieves the records, for which cards are to be printed, by issuing a database query. The system provides an easy-to-use graphic user interface for developing the query statement. After issuing the query, the system returns a list of records that met the conditions specified in the query. From the list, the operator can select specific records to print. Before printing, the system builds a metafile from the captured data. After printing the card, the system logs the production information to the Audit Log. Referring to FIG. 3, there are shown the operational steps of one embodiment of a card creation apparatus and method in accordance with the principles of the present invention. At a production step 90, the user of the card creation apparatus and method selects either single mode or query batch production. In single mode, the user can capture data, print a card, and/or save a record to a database for a single cardholder. In query batch production, the user can retrieve records from a database and print cards for more than one cardholder. At a select link step 92, the user selects a predefined link definition by link name. The link definition is predefined by someone such as a system administrator. When the link is selected a data capture window is displayed. The link definition also provides the card design on which the cardholder's data and image will be printed. If the cardholder data is saved, the link definition also ensures that the cardholder data is saved to the correct database fields. At a data capture step 94, the user enters information about the cardholder into labeled text boxes on the data capture window. The data capture window will preferably include an image box into which the user captures a cardholder's image. As the last steps in a card production run; the user will at 96 elect to print the card at the printer 62 or other suitable hard copy device, at 98 elect to save cardholder data to a database 97, and/or at 100 clear the data capture window. As noted above, before the user can select a link definition by name, the definition must have been previously created and designated by a particular name. The process of creating a link definition is illustrated at 102. In creating a link definition with the card creation apparatus and method of the present invention, one defines at 104 the card design, at 106 defines a data capture window, and at 108 defines the fields of the database 97 where the cardholder information is to be saved. Referring now to the FIGS. 1-65, the card creation apparatus and method of the present invention will now be described in more detail. The present invention is a PC-based software system that enables capture of a cardholder's live video image and textual data and printing of selected cardholder data on plastic cards using a suitable printer such as the DataCard ImageCard II Printer (ImageCard II is a trademark of DataCard Corporation). In addition, the present invention enables cardholder image and data to be saved to a database for future retrieval, whether or not a card is printed. The following additional features are available with the present invention: Create original card designs Designs are created in a WYSIWYG environment Include graphics, images, and textual cardholder data on cards Use different designs for different cardholders Display the card design on the screen during data entry allowing the operator to view the cardholder data as it is being entered Store cardholder information in a database Define an existing cardholder database, through Microsoft.RTM.'s Open Database Connectivity (ODBC), or define or as defined by the user Optional updating of the database on a cardholder-by-cardholder basis Query the database, using standard Structured Query Language (SQL), for cardholder records to print in batch mode Build customized data capture screens Create data capture screens unique to a particular situation Include both test data and image data fields Provide a degree of user-friendliness required Establish dynamic data links Connect the database fields, card design fields, and data capture fields on a field-to-field basis One embodiment of the present invention utilizes the familiar, easy-to-use graphic user interface typical of other applications running in the Windows environment. The tasks used in the operation of the present invention can be grouped into two categories, including card production and system management. Card Production Card production tasks are typically performed on a regular basis, if not daily. Card production tasks are performed by the operator and include: Entering cardholder data Taking the cardholder's picture Printing the card Saving the cardholder's record to the database Querying the data base for records from which to print multiple cards Card production tasks require data entry and camera operation skills. Multiple cards can be printed in batch mode, however, a database query statement can be utilized to select specific database records. But this task is simplified through the use of standard SQL and a graphic user interface. System Management System management tasks are performed initially to configure the system. Once the system is up and running, these tasks only as needed. System management tasks are performed by a system manager and include: Specifying the system users; maintaining system security Defining and maintaining the database table and records Designing the card layouts Developing the data capture windows for capturing both text and image cardholder data Creating the links that connect the database, data entry window, and card design fields The internal data structures of the present invention consist of both system and data components. The system structures include the Windows-specific configuration files, e.g., .INI files and resource files, and the internal data structures of the present invention. The data structures of the present invention include: User management tables Security table Configuration files Component DLLs Device drivers Listed below are the data component structures:
______________________________________
Data Component Storage Type
______________________________________
Card Design Records
Internal Database
Database Tables Dependent on location of
external database
Linker Design Records
Internal Database
Card Backgrounds Windows Bitmaps
Cards EPS (Encapsulated
Postscript)
______________________________________
The present invention supports the following operating environments: Standalone Distributed (token ring network with databases on different platforms) Client/Server Database servers Network servers Remote database population Local database population Local and remote database population (local database is populated with images and the remote database with text data) A preferred embodiment of the present invention utilizes Microsoft's Windows Open Services Architecture (WOSA). WOSA provides a single system-level interface for connecting front-end applications with back-end services. Applications do not have to worry about communicating with numerous services, each with their own protocols and APIs. Making these connections is the responsibility of the operating system, not the individual applications. Each service recognized by WOSA has a set of interfaces that are used by the service providers to take advantage of WOSAs seamless interoperability. These service provider interfaces allow applications, written to the WOSA set of APIs, to have access to their services. In order to provide transparent access for applications, each implementation of a particular WOSA service simply needs to support the functions defined by its service provider interface. WOSA employs Windows Dynamic Link Library (DLL) to allow software components to be run-time linked. In this way, applications are able to connect to services dynamically. An application needs to know only the definition of the interface, not its implementation. WOSA defines a system-level DLL to provide common procedures that service providers would otherwise have to implement. In addition, the system DLL can support functions that operate across multiple service implementations. Applications call system APIs to access services that have been standardized in the system. The code that supports the system APIs routes those calls to the appropriate service providers. That code also provides procedures and functions that are used in common by all providers. The network operating systems that comply with WOSA standards include: Net BIOS TCP/IP NetWare VINES LANtastic Lan Manager 3Com The present invention utilizes the Multi-Media extension provided for by Windows to allow for the separation from various boards and capture devices. The present invention supports the following image file formats: BMP (Windows bitmap) DCX (Sun Rater Format) DIB (Device Independent Bitmap) EPS (Encapsulated Postscript) GIFF JPEG (joint Photographic Experts Group) MSP (Microsoft PCX) PCX PICT (Macintosh Picture Format) TARGA (up to 24 bits) TIFF (Tagged Image File Format) WMF (Windows Metafile) WPG (WordPerfect Graphics) Image files can be stored in any of these formats, many of which are independent of specific operating systems or applications. All images are stored in JPEG compression format. Industry standard utilities are available if image compression/decompression is required. The present invention supports the following bar codes shown in Table 6.
TABLE 6
______________________________________
Elements
Bar Code Input Character Adjust.
per
Type Length Encoded* Ratio Char
______________________________________
UPC-A 11, 13, or 16
N No 7
UPC-E 11, 13, or 16
N No 4
EAN/JAN-13 12, 14, or 17
N No 7
EAN/JAN-8 7, 9, or 12
N No 7
Code 39 1 to 30 N-U-P Yes 15
Extended 39
1 to 30 N-U-L-P-C Yes 15
Int. 2 or 5
2 to 30 N Yes 9
Code 128 1 to 30 N-U-L-P-C No 11
Codabar 1 to 30 N No 11
Zip + 4 Postnet
5, 9, or 11
N No 5
MSI Plessy 1 to 30 N No 9
Code 93 1 to 30 N-U-P No 18
Extended 93
1 to 30 N-U-L-P No 6
UCC-128 19 N No 6
HIBC 1 to 30 N No 6
______________________________________
*Characters Encoded:
N -- Numbers (0-9)
U -- Uppercase (A-Z)
L -- Lowercase (a-z)
P -- Punctuation
C -- Control Characters (below space character)
Before one can print cards on the printer, the printer must be installed. Installing a printer also requires that a printer driver be installed. The printer driver, which is actually a file, provides present invention with important information about the printer including printer features, printer interface, font descriptions, character translations, and control sequences. The present invention utilizes a customized version of the Window's postscript printer driver. A preferred embodiment of the present invention utilizes Open Database Connectivity (ODBC), Microsoft's strategic interface used to access data in an environment of multiple, different relational and non-relational database management systems. Based on Call Level Interface (CLI) specification of the SQL Access Group, ODBC provides an open method of accessing data stored in a variety of proprietary database systems operating on personal computers, minicomputers, workstations, and mainframes. ODBC diminishes the need for software applications to utilize multiple application programming interfaces (API). ODBC provides a universal data access interface, allowing applications to simultaneously access, view, and update data from multiple, diverse databases. ODBC is a major component of Microsoft Windows Open Services Architecture (WOSA). A few of the database management systems that are compatible with the present invention through ODBC include: Access DB.sup.2 dBASEIll and dBASE IV Informix Integra VDM Foxpro MS SQL Natural Adabase (SQL simulation for IBM host) Oracle Paradox Quadbase RDB SYBASE Watcom User Interface All functions are accessed by the operator from the Main Window, see FIG. 4, which is the first window the operator sees upon accessing the system. The operator accesses all functions from this window. This section describes the parts of that window. Menu Bar The menu bar 110 displays the Main Menu. You access all functions from the pull-down menus (also referred to as sub-menus) displayed on the menu bar. Each menu and its menu commands is explained in the following sections. File Menu Choose the File menu commands to log into and out of the system, exit the system, and close the main window. Log In Choose the Log In command to log into the system as a different user. Log Out Choose the Log Out command to log out of the system. Exit Choose the Exit command to exit the system and return to the Windows' Program Manager window. Close Choose the Close command to minimize the window to an icon. This command has the same effect as clicking on the minimize button. Security Menu Choose the Security menu commands to add, modify, and delete authorized system users, as well as regulate the system functions to which each has access. To access the system, you must be defined as a system user. This feature is designed to maintain system security for the entire system, as well as specific system functions. The system manager should be the only user who has access to this menu option. Add User Choose the Add User command to add a new user to the system. You assign a password to user using this command. Edit User Choose the Edit User command to modify the user's access rights to the system, including their password and rights to specific system functions. Delete User Choose the Delete User command to remove a user from the system. Once removed, a user is unable to access the system. Production Menu Choose the Production menu commands to choose the mode of production. Single Mode Choose the Single Mode command to capture the cardholder's image and the data, save the record, and print a card. Query Batch Mode Choose the Query Batch Mode command to query the database for records meeting specified criteria and to print multiple cards for those records returned by the query. Choose the Print command to print a card. Print Preview Choose the Print Preview command to view a representation of the printed card on the screen. Print Setup Choose the Print Setup command to configure the printer for the system. Database Menu Choose the Database menu commands to define or query a database table. Define Table Choose the Define Table command to define a table for a new or existing database to which cardholder data is stored. If you are not currently using a database to which the system's ODBC is compatible, you can use this command to define a new database. When you choose the Define Table command, a dialog box appears in which you enter the name of the new database table. The Database Definition dialog box appears in which you define the fields of the database table. Query Table Choose the Query Table command to build a database query statement. When you choose the Query Database command, a dialog box appears from which you select the database you want to query. You build a query statement using a graphic interface. When you execute the database query, the system returns the cardholder records that meet the criteria established by the query statement in the Database Query Results dialog box. Link Menu Choose the Link menu commands to tie one or more database fields to a field on the card design. You also access the Design Capture Screen function from this menu. The link routes the captured image and text data to the correct database fields when saved and the card design when printed. New Link Choose the New Link command to create a new link definition between a database and card design. Choosing this menu command displays the Link Definition dialog box. When you create a new link, you assign it a name, by which you retrieve it for modification or specify it for data capture. Update Link Choose the Update Link command to modify changes in defined links between database fields and card fields. When you update a link from the system, the Select Link dialog box appears. You choose the link to modify and the Link Definition dialog box, for the selected link, appears. Delete Link Choose the Delete Link command to delete a link from the system. When you delete a link from the system, the Select Link dialog box appears. You select the link to delete; the system asks for a confirmation. Design Capture Screen Choose the Design Capture Screen command to design the screen on which the operator enters cardholder data and captures the cardholder's image. Card Menu Choose the Card menu commands to create, modify, and delete card designs. You can create multiple card designs. You assign each card design a unique name, by which you retrieve it to modify or delete. You can import and export card designs. Card Design Choose the Card Design command to create a card design. You can create a new card design from scratch, by choosing this command, or you can retrieve an existing card design, using the Edit Card command, modify it, and save it under a different name. When you choose this command, the Card Name dialog box appears. You type the name of the new card design. The Card Design dialog box appears. The client area of this dialog box represents an actual card in which you graphically create the card fields. Delete Card Choose the Delete Card command to delete an existing card design. When you choose this command, the Cards Available dialog box appears. You select the card design to delete; the system asks for a confirmation. Edit Card Choose the Edit Card command to modify an existing card design. When you choose this command, the Cards Available dialog box appears. You choose the card design to modify and the Card Design dialog box appears with the requested design appearing in the client area. You can modify the design and save it to a different name to create a new card design. Log Menu Choose the Log menu commands to print an audit log or system log. Audit Choose the Audit command to print the audit log. This report contains up to 1000 entries about the users, modules used, date/time, and operation. When you choose this command, the Audit Log Listing window appears. This window lists each log entry and displays the Log Actions pull-down menu with the commands Query, Print, Clear and Close. System Choose the System command to print a log of all system activities. This report serves as a good trouble-shooting report because it lists all system activities as they occurred. Configuration Menu Use the Configuration menu commands to setup and manage the system configuration. System Setup Choose the System Setup command to establish the configuration for the system. Only authorized users can choose this command. Alter Default Choose the Alter Default command to set and change the default settings for system functions. Configuration Report Choose the Configuration Report command to print a copy of the system configuration. Held Menu Choose the Help menu commands to access the system help function and to display version information about system. Index Choose the Index command to access the system help function index. The index lists the help topics available, from which you can choose one. Using Help Choose the Using Help command to display instructions for using system help. About System Choose the About System command to display version information about the system. Status Bar A Status Bar 112 is located along the bottom of the main window. The information displayed depends on where you are and what you are doing in the system. When only the main window is displayed, the status bar displays a description of each menu and menu command chosen by the operator. The three small boxes at the right end of the bar, however, always tell you whether Caps Lock, Num Lock, and Scroll Lock are on. To toggle the Status Bar on and off, choose Status Bar from the View menu. A check mark indicates that the feature is turned on. System Configuration When you install the system, the system sets up a default configuration. Before you begin using system, however, you may need to change the default configuration. As you make changes to your system, you may need to reconfigure the system to reflect those changes. Configuring the system involves three functions: System Setup The system provides a system setup dialog box, see FIG. 5, in which you specify the capture and output devices connected to your system, as well as provide information to "customize" the system to your particular site. You should at least check the default configuration, which is displayed in this dialog box, before using the system. System Setup allows you to define your system site by providing the system with information about the capture and output devices you are using, as well as other pertinent information. You should use this function: after installing the system; whenever you make additions or changes to capture and output devices; and if you reinstall the system. When you access many of the system dialog boxes, you will find list box, check box, and option button selections have already been made. These selections are the default selections that the system make initially, based on your system configuration. You may, however, want to change these default selections to reflect your particular use of the system. This function allows you to specify new default selections at any time. The link button is depressed to display the badge list dialog box, see FIG. 6. From the list a particular badge format is selected. The network button is depressed to display the network server dialog box, see FIG. 7. In the network server name box, the path to the desired server is entered. The module button is depressed to display the user-defined module strings dialog box, see FIG. 8. The various module strings are defined by electing the default settings or entering specific user defined strings. The paths button is depressed to display the paths dialog box, see FIG. 9. The bin, data, and image paths are then entered. Set Default Many of the system dialog boxes contain list boxes, check boxes, and option buttons from which default selections have already been made. The default selections are designed to save you time. You can use this function, however, to change these default selections to more accurately reflect your site. Configuration Report After configuring the system, you should use this function to print the current configuration. Upon selecting the configuration menu the configuration window appears, see FIG. 10. A copy of the current Configuration Report may be printed at the local printer. To display the configuration of a particular module, the module name is entered in the module name box. Print Manager The Print Manager serves as an important link between the system software and the printer. You use the Print Manager to install and configure the printer, connect to the printer through the network, and to control the printing of cards on the printer. The system of the present invention uses a customized version of the Microsoft Windows Print Manager. When you print a card, the system creates a PostScript print file and sends it to the Print Manager. The Print Manager then sends the file, in the background, to the printer. You can use the Print Manager to check the status of a print file waiting in the print queue. You can change the status of the file until it starts printing. The system outputs its card files to the printer in PostScript file format. When you send a card to the printer, the system is actually writing a PostScript program. All text and images are converted to PostScript commands by means of the PostScript driver. This driver interacts directly with the printer. The PostScript commands adhere to a strict structure; if this structure is altered or contains errors, the cards will be printed incorrectly or not at all. The system handles much of the font management automatically. Because the system utilizes the Windows Print Manager, all TrueType fonts are already installed. If, however, you want to add fonts, you must perform some font management tasks, particularly if the fonts are Adobe.RTM. PostScript fonts. If the fonts you add are Adobe fonts, you must designate a TrueType font substitute in the Font Substitute Table. If a TrueType font substitute is not available, you must specify that the font will be downloaded. Use the following procedures to setup the print options for the printer: 1. Access the system. 2. Choose Print Setup from the Production menu. The standard Microsoft Windows Print Setup dialog box appears. 3. Select the Landscape option button in the Orientation box. 4. Select User Defined Size from the Paper Size drop-down list box. The User-Defined Paper Source dialog box appears. 5. Choose the 0.01 cm option in the Unit box. 6. Enter the card width and length in the appropriate text boxes. 7. Choose OK. You return to the Print Setup dialog box. 8. Choose the Options button on the Print Setup dialog box. The Options dialog box appears. There are no printer options to set in this dialog box. However, if you plan to leave the printer on for a long time or plan to print a large number of cards, you can speed up the printing process by telling Windows to send the PostScript file header once, instead of with each card file. You must repeat this process for each session though. If you want to send the PostScript file header, proceed with the following steps. 1. Choose the Send Header button on the Options dialog box. The Send Header dialog box appears. 2. Select the File option. 3. Type the complete path name of the PostScript printer driver. 4. Choose the Send Now button. You return to the Options dialog box. 5. Clear the Send Header With Each Job check box. 6. Choose OK. Choosing the right font family, style, and size can help you create whatever look you want for your cards. The right font can also make your card easier to read, as well as more appealing. The font size and type can determine how much text can fit into a single line - - - an important consideration when dealing with a card. Windows and the system utilize two types of fonts: TrueType fonts Screen Fonts Printers also utilize built-in fonts for printing. These are referred to as printer fonts. You can use also soft fonts with your printer. Soft fonts reside on your PC, but are downloaded to your printer as they are needed. You must install soft fonts using the installation program that came with your fonts package. If an installation program was not included with your fonts package, you can use the Font Installer program provided by Windows. If matching screen fonts are not available with any soft font packages you purchase then a TrueType font, supplied by Windows is used. Though the font you see on the screen does not look exactly like the font you see in the printed document, the substitute TrueType font does create line lengths on the screen that are similar to those that will print on the printer. If you select a TrueType font for a text field on a card, the font will look exactly the same on the screen as on the printed card. You do not need to install screen fonts. Because the TrueType fonts are automatically available through Windows, they are available to system and the printer, and you can use them in your card designs. When you use TrueType fonts, the printer driver automatically downloads them to the printer as they are needed; this may require more printing time than if you were to use the printer fonts. TrueType fonts also appear in the Fonts list in the Fonts dialog box. They are preceded with a "TT." The present invention utilizes the Windows Print Manager. Using the Print Manager provides several capabilities when printing cards on the printer: Viewing the Print Queue Changing the Print Queue Order Pausing and Resuming Printing Deleting a Card from the Print Queue Displaying Printer Driver Messages You can connect to a network printer either when you initially install the printer or afterward. If you have already installed the printer, you must access the Network Connections window via the Network Connections command on the Print Manager's Option menu. If you are in the process of installing the printer, you can access the Network Connections window via the Connect button in the printers dialog box. User Management Managing the system users consists of the following tasks: adding a user; modifying a user definition; and deleting a user. Before anyone can use the system, you must define them as a system user. In defining a system user, you assign the user the following: Login Name Password Functions to which the user will have access Use the following procedure to add a user. Choose Add User from the Security menu. The User Privileges dialog box appears (see FIG. 11). In the Full Name box, type the user's full name. In the Login Name box, type the name the user will enter when they try to access the system. In the Password box, type the password assigned to this user. In the Confirm Password box, type the same characters you typed in the Password box. Select the functions to which the user is to have access. There are eight functions listed in the User Privileges Dialog Box, any of which can be selected. The functions are: Card Design, Link Design, Database Design, Production, Security, Log Files, and Configuration. Choose OK. You can change a user's definition at any time. You can assign the user a new login name, password, password confirmation, and access rights. Choose Edit User from the Security menu. A User List appears on the screen, see FIG. 12. Select the login name of the user whose user definition you want to change. Choose OK. The User Privilege dialog box for the selected user appears with the full name, login name, and functions identified. The password and confirm password are crossed out so as to not be visible. Make any changes to the user definition you want. Choose OK. You can delete a user at any time. Once deleted, the user cannot access the system using their previously assigned login name and password. Choose Delete User from the Security menu. The User List dialog box appears listing all defined users. Select the user whose definition you want to delete Choose OK. The User Privileges dialog box to delete the selected user appears, see FIG. 13. The Delete button replaces the OK button. Choose the Delete button. The system removes the user definition from the system. Database Management The system provides a complete database management system for your cardholder data. You can save cardholder data, as entered by the operator on a Data Capture window to a database, if you wish. The database may be local, networked, external, or distributed. If you currently store your cardholder data in an existing database system, and you want to continue using it with the system, the database must be Open Database Connectivity (ODBC) compatible. Otherwise, the system enables you to create your own database to which you can save cardholder data. The system offers the following database management functions: New Database File--You must define your database table, whether your database is internal or not, and define its fields in the system, whether the database is local, networked, external, or distributed. Defining the database table consists of defining each of the fields contained in the database. For each field, you define its name, length, number of decimal places, type, null, and uniqueness. Once defined, you can view and modify your database configuration, fields, and keys at any time. The system allows you to create and use multiple database tables. Delete Database File--You can delete any existing database file. Alter Database--You can add, modify, and delete fields from the database table, as well as change any of a field's attributes. Query Database--Using standard SQL and an easy-to-use graphic user interface, you can issue database queries to query any existing database to retrieve cardholder records. You build the query statement using standard Structure Query Language (SQL) syntax in a graphic user interface. This feature is most useful in retrieving records for printing cards in batch mode. You can also, however, use the query function to query records for reports and deletion. If you intend to use the system in conjunction with an existing cardholder database and that database management system is ODBC compatible, you must create a database table defining that database. If you intend to create a database for cardholder data from scratch, using system database management tools, you must define a table for that database. The database table is a listing of the fields contained in the database in the order in which they occur. For each field, you must specify the field's characteristics, such as its type, length, and whether or not it is a key field. Before you begin, it is important, especially if you are using the system database management tools to create the database from scratch, to plan the database before hand. The database table definition function allows you | ||||||
