home *** CD-ROM | disk | FTP | other *** search
/ World of Graphics / WOGRAPH.BIN / 324.VMANUAL.DOC < prev    next >
Text File  |  1992-04-15  |  59KB  |  1,703 lines

  1.                * * * * * * * * * * * * * * * * * * * * * *
  2.                *                                         *
  3.                *                                         *
  4.                *       Visage LITE                       *
  5.                *       DOCUMENT IMAGE MANAGEMENT         *
  6.                *                    User's Guide         *
  7.                *                                         *
  8.                *        Shareware Edition                *
  9.                *                                         *
  10.                *                                         *
  11.                *        ┌──────┐┌──────┐┌──────┐         *
  12.                *        │ ┌──────┐     ││ ┌──────┐       *
  13.                *        │ │      │     ││ │      │       *
  14.                *        │ │      │     ││ │      │       *
  15.                *        └─│      │─────┘└─│      │       *
  16.                *          └──────┘        └──────┘       *
  17.                *                                         *
  18.                * * * * * * * * * * * * * * * * * * * * * *
  19.                     Document Image Development Corp.
  20.                     270 Lafayette Street, Suite 1008
  21.                         New York, New York 10012
  22.                    (212) 431-4084 Fax: (212) 431-4109
  23.            (C) Copyright 1991 1992, Worldwide Rights Reserved
  24.  
  25.                      IMPORTANT LICENSE INFORMATION
  26.  
  27.      Visage LITE is provided at no charge for evaluation purposes only.
  28. This shareware edition of Visage LITE is the complete working version of
  29. the program, not a crippled or demo copy.
  30.  
  31.      The Document Image Development Corp. ('DIDC') hereby grants you a
  32. limited license to use this software for evaluation purposes only for a
  33. period not to exceed thirty (30) days.  If you intend to continue using
  34. this software (and/or its documentation) after the thirty (30) day
  35. evaluation period, you MUST make a registration payment to DIDC. Using
  36. this software after the evaluation period has ended without registering
  37. is a violation of the terms of this limited license.
  38.  
  39.      Licensee shall not use, copy, rent, lease, sell, modify, decompile,
  40. disassemble, otherwise reverse engineer, or transfer the licensed
  41. program except as provided in this agreement.  Any such unauthorized
  42. use shall result in immediate and automatic termination of this
  43. license.
  44.  
  45.      All rights not expressly granted here are reserved to DIDC.
  46.  
  47.  
  48.                           Warranty Disclaimer
  49.  
  50.      THE DOCUMENT IMAGE DEVELOPMENT CORP. MAKES NO WARRANTY OF ANY KIND,
  51.      EXPRESSED OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY WARRANTIES
  52.      OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
  53.  
  54.      THE DOCUMENT IMAGE DEVELOPMENT CORP. DOES NOT ASSUME ANY LIABILITY
  55.      FOR THE USE OF THIS SOFTWARE BEYOND THE ORIGINAL PURCHASE PRICE OF
  56.      THIS SOFTWARE.
  57.  
  58.      IN NO EVENT WILL THE DOCUMENT IMAGE DEVELOPMENT CORP. BE LIABLE TO
  59.      YOU FOR ANY ADDITIONAL DAMAGES, INCLUDING ANY LOST PROFITS, LOST
  60.      SAVINGS, OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING FROM
  61.      THE USE OF, OR INABILITY TO USE, THIS SOFTWARE AND ITS ACCOMPANYING
  62.      DOCUMENTATION, EVEN IF THE DOCUMENT IMAGE DEVELOPMENT CORP. HAS
  63.      BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
  64.  
  65.  
  66.  
  67. OVERVIEW
  68.  
  69.         Visage is a complete document storage and retrieval subsystem.
  70. It handles the scanning, storing, management, display, and printing of
  71. all document images.  Scanned documents are linked to your data and
  72. stored in disk files which can be on standard PC hard drives or
  73. removable optical cartridges. Because Visage maintains its own database
  74. that keeps track of where images are stored, you are relieved of this
  75. tedious chore.
  76.  
  77.         Visage provides the application programmer with a wide variety
  78. of functions that control the scanning, storing, display, and printing
  79. of document images. Linkable interface modules are currently available
  80. for Microsoft C, Turbo C, most other C compilers, Turbo Pascal, and
  81. Clipper. In addition, Visage may be accessed by your application without
  82. using any programming interface.
  83.  
  84.         A major advantage of Visage lies in its ability to load as a
  85. "swappable" TSR requiring less than 9K of conventional memory.  When
  86. loaded, the TSR swaps itself to expanded memory or, if no expanded
  87. memory is available, to disk. It then waits for a request at which
  88. time it swaps out the active program and swaps itself back in. This
  89. process is completely invisible to the user.
  90.  
  91.     The following are the key functions Visage provides:
  92.  
  93.         Scanning:       entire document or single pages. Insert, delete
  94.                         and replace options
  95.  
  96.         Viewing :       next page, previous page, go to specific page
  97.  
  98.         Printing:       single page, range of pages or entire document.
  99.                         Multiple copies.
  100.  
  101.         Storage :       automatic indexing and optical disk management
  102.  
  103. Perhaps the most important feature of Visage is that it operates under
  104. MS-DOS. No other special software is required.
  105.  
  106.         Advanced Visage Features
  107.         ------------------------
  108.  
  109.         The Visage system incorporates many advanced features to
  110. maximize the speed and efficiency of document processing. These include:
  111.  
  112.           IMAGE STAGING: Scanned images are initially written to
  113.           magnetic media and are later move to optical media via a batch
  114.           update mode.  This speeds up the scanning process and also
  115.           allows the user to delete unwanted images before they are
  116.           committed to optical medial.  The batch update can be
  117.           performed overnight, providing a minimum of system downtime.
  118.  
  119.           VOLUME MANAGEMENT:  Visage keeps track of the location of
  120.           stored images across many volumes. This is absolutely
  121.           essential in applications that maintain a large number of
  122.           document images.
  123.  
  124.           IMAGE CACHING: Retrieved images are cached to the PC's hard
  125.           drive. Optical disks are considerably slower than magnetic
  126.           drives. By caching images to the PC's hard drive, subsequent
  127.           access to images already retrieved is made much faster.
  128.  
  129.           SOFTWARE DECOMPRESSION: Images are stored in compressed format
  130.           to maximize disk space. Our DIDC2.EXE and DIDC3.EXE TSRs
  131.           support software decompression so you don't need special
  132.           hardware to view images.
  133.  
  134.           IMAGE MANIPILATION: Viewed images can be zoomed, panned,
  135.           scrolled, and rotated.
  136.  
  137.           NETWORK SUPPORT:  DIDC's WormServ software provides
  138.           network-wide multiple simultaneous access to images on Novell
  139.           networks.
  140.  
  141.           ADVANCED DATABASE DESIGN:  The image databases maintained by
  142.           Visage use variable length records with key compression to
  143.           minimize the amount of disk space required.
  144.  
  145.           SAFETY AND RELIABILITY:  Visage protects against data loss
  146.           from power outages or computer failure.  Image storage and
  147.           database updates use advanced write-through techniques to
  148.           ensure data and image integrity.
  149.  
  150.           STANDARDIZATION:  Visage uses industry standard CCITT group
  151.           3/4 compression (the most effective image compression
  152.           available) and all images are stored in industry standard TIFF
  153.           format. Visage also uses standard DOS file formats making it
  154.           easy to back-up image files to tape or make copies of image
  155.           volumes using standard back-up programs or by simply using the
  156.           COPY command.
  157.  
  158.           SUB-DOCUMENT HANDLING:  Visage allows you to define
  159.           sub-documents within a document allowing for more versatile
  160.           image management.
  161.  
  162.           INSERT, REPLACE AND DELETE:  New pages can be inserted at
  163.           any point in a document. Selected document pages can also be
  164.           deleted or replaced.
  165.  
  166.           HARDWARE SUPPORT:  Visage supports a wide range of scanners,
  167.           printers, optical drives and display systems from
  168.           manufacturers such as Hewlett Packard, Panasonic, Ricoh,
  169.           Fujitsu, Canon, TDC and Bell & Howell.
  170.  
  171.  
  172.         Hardware and Software Requirements
  173.         ----------------------------------
  174.  
  175.         The Visage system comprises three different TSRs -- one that
  176. provides full functionality (but requires special hardware), one that
  177. provides low speed page scanner compatability (but requires no special
  178. hardware), and one that provides display only capability. DIDC1.EXE is
  179. the full-function TSR used in conjunction with the Kofax Document
  180. Processor. It provides access to all Kofax supported peripherals.
  181.  
  182.         DIDC2.EXE is a view only version for network workstations.
  183.  
  184.         DIDC3.EXE (distributed as Visage LITE) is the version addressed
  185. by this manual.  DIDC3 requires no special add-in board. It provides
  186. scanning facilities through the Hewlett Packard ScanJet and ScanJet Plus
  187. scanners. Typically, DIDC3 will be used in environments with low volume
  188. document image management requirements and for application prototyping.
  189. Data and images produced by DIDC3.EXE are 100% compatible with our high
  190. volume image management platforms!
  191.  
  192.         Visage is compatible with all EGA and VGA display systems.
  193. Visage will operate on any computer with an 80286, 80386 or 80486
  194. processor running under MS- DOS or PC-DOS 3.0 or higher. A minimum of
  195. 555K free conventional memory is required. For optimal performance, at
  196. least an 80386 based computer, math co-processor, disk cache and one
  197. megabtye of expanded memory is recommended.
  198.  
  199.  
  200. SETTING UP TO USE VISAGE
  201.  
  202.         Before you run Visage LITE for the first time, you must install
  203. your scanner driver. Make sure all the scanner drivers are in your
  204. current directory.  Execute the INSTALL3.EXE file and choose your
  205. scanner from the displayed list. That's all there is to it. You do not
  206. need to do this again unless you change to a different scanner.
  207.  
  208.         Prior to loading the VISAGE TSR itself, you must set certain
  209. environment variables.  These are required so that VISAGE knows the
  210. location of its image data and index files; .DOC and .DCX respectively.
  211. You may set the environment variables in your AUTOEXEC.BAT file, from
  212. another batch file or at the DOS command line. The syntax is as follows:
  213.  
  214.         SET DIDC=C:\VISAGE (where C:\VISAGE is your working directory
  215.                             This can be any directory and will contain
  216.                             the VISAGE data and index files)
  217.  
  218.         SET DIDCTMP=C:\    (where C:\ is a directory to be used for
  219.                             temporary images storage. Note: if you do
  220.                             not specify a DIDCTMP variable, VISAGE will
  221.                             default to using C:\)
  222.  
  223.         Using Visage Without EMS
  224.         ------------------------
  225.  
  226.         If your computer does not have EMS, Visage will swap to disk in
  227. the directory in which the TSR was loaded.  When activated by a Visage
  228. function call, the TSR will swap back from disk and perform the task.
  229. This process takes a few seconds -- the actual time will depend on how
  230. fast your hard disk is.  Using disk caching software will improve
  231. performance.
  232.  
  233.         You can control where the TSR swaps by using the SAVEPATH
  234. environment variable to control how the Visage TSRs swap.  You can set
  235. the SAVEPATH variable from the DOS prompt as shown here:
  236.  
  237.         set savepath=C:\
  238.  
  239.         This tells Visage to swap to the root directory of drive C:.
  240. Important: If you set the SAVEPATH variable, Visage will always swap to
  241. disk even if sufficient EMS is available. The SAVEPATH variable is
  242. useful if you have a RAM disk installed. If, for example, you have a RAM
  243. disk installed as drive D:, you can tell Visage to swap to that drive.
  244. Swapping to RAM disk is considerably faster than swapping to a hard
  245. drive. Removing Visage From Memory
  246.  
  247.         To remove the Visage TSR from memory, hold down the CTRL and ALT
  248. keys at the same time and press Q.  The TSR will not unload if other
  249. memory resident programs were loaded after it. Some memory resident
  250. programs and device drivers such as network drivers must be loaded
  251. before Visage. If you encounter problems after loading Visage, make sure
  252. that no other resident programs were loaded after Visage.
  253.  
  254.  
  255.         Using Visage With Existing Applications
  256.         ---------------------------------------
  257.  
  258.         Visage is designed so that it can be used even with programs
  259. that do not have Visage function calls.  This means you can use Visage
  260. with just about any program.  When used with existing programs, you must
  261. define a Visage Key -- a string of characters that Visage can find on
  262. the computer screen.  Let's say you are using a database application
  263. with the following fields displayed on the screen:
  264.  
  265.  
  266.             Name:        Jones
  267.             ID:        903214
  268.             Address:    301 Main Street
  269.             City:        Hohokus
  270.             State:        NJ
  271.  
  272.         Suppose you want to store a document for this individual and use
  273. the contents of the ID field as the key into the image database.  You
  274. simply tell Visage that the key field is ID: and Visage will search the
  275. display for those characters (make sure you include the colon), skip
  276. past any blanks, and pick up the value 903214.  The only restriction is
  277. that the key field must be on the screen so that Visage can find it.
  278.  
  279.  
  280.         Defining a Key Field
  281.         --------------------
  282.  
  283.         To define a key field, you must create a file named VISAGE.KEY
  284. and in that file store the name of the field Visage should look for. In
  285. the example just given, VISAGE.KEY would contain "ID:". The key field is
  286. case sensitive, so make sure you type in the field exactly as it appears
  287. on the screen.
  288.  
  289.         Using Visage in Popup Mode
  290.         --------------------------
  291.  
  292.         To use Visage with existing applications, you must load the TSR
  293. in popup mode. To do this, simply add the command line parameter P
  294. (e.g., DIDC1 -P).  In popup mode, Visage allows you to use the following
  295. hot keys:
  296.  
  297. CTL+F1:  Visage Menu.  Activates the Visage menu system.  When you press
  298. this key combination, Visage searches the screen to find the key field.
  299. If it finds the field, it picks up the contents of the field, opens the
  300. VISAGE image database, and activates the menu system.  If VISAGE does
  301. not find the key field, it will use the last key value it found.  If
  302. there is no previous key value to use, VISAGE will beep and return to
  303. the application.
  304.  
  305. CTL+F2:  Batch Update.  Initiates a batch update, which copies images
  306. from the default volume to the destination volume.
  307.  
  308. CTL+F3:  Batch Print.  This function lets you print a batch of documents
  309. at one time. Prior to calling this function, you must create a text file
  310. name PRT.LST, which will contain a list of document keys, one per line.
  311. Visage will read the keys from this file and print their associated
  312. documents.
  313.  
  314. Figure 1: Using Visage to link images to a database record
  315.  
  316.  
  317.                         ╔══════════════════════════════╗
  318.                         ║                              ║
  319.                         ║                              ║
  320.                         ║     (Figure not shown)       ║
  321.                         ║                              ║
  322.                         ║                              ║
  323.                         ║                              ║
  324.                         ╚══════════════════════════════╝
  325.  
  326.  
  327.  
  328. OPERATING VISAGE
  329.  
  330.         Visage will typically be used in conjunction with a database
  331. application which has been compiled with the Visage function calls.  The
  332. function calls activate various image processing functions.  To use
  333. these functions effectively, it is necessary to understand how Visage
  334. stores images
  335.  
  336.         The Visage Document and Volume Storage System
  337.         ---------------------------------------------
  338.  
  339.         Visage manages documents up to 1,000 pages in length. The Visage
  340. database uses compressed variable length data records that require
  341. minimal disk storage. Key values used to access images can be up to 30
  342. characters long. The database resides on a magnetic hard drive, but
  343. images can be stored on magnetic or optical media.
  344.  
  345.         Visage stores images on volumes. A volume is simply a hard drive
  346. or optical disk that has a volume id contained in a VOL.ID file in its
  347. root directory. For example, if your computer has a D: hard drive, and
  348. you want to make the D: drive volume 3, you would simply create a file
  349. D:\VOL.ID that contains the ASCII text number "3". Visage supports
  350. volumes from 1 to 65535. NOTE: Zero is not a valid visage volume number.
  351. Visage will store images only to drives or optical disks that have a
  352. valid VOL.ID file in the root directory.
  353.  
  354.         When Visage starts up, it locates all drives that have VOL.ID
  355. files in the root directory. It will also look on those drives to see if
  356. an image file exists. On any one volume, all images are stored in a file
  357. named IMAGES.FIL. If this file does not exist, Visage will create it.
  358. When images are scanned Visage will ask which volume should be used to
  359. store the images.
  360.  
  361.  
  362.         The Default Volume
  363.         ------------------
  364.  
  365.         Visage is designed to be used with WORM (Write Once-Read Many)
  366. optical media. WORM media can store huge amounts of data, but anything
  367. written to a WORM cartridge cannot be erased. To minimize wastage of
  368. optical media, Visage utilizes a default volume for temporary storage of
  369. images before committing them to optical media. In fact, Visage will not
  370. allow images to be scanned unless a default volume is identified.
  371.  
  372.         One of the PC's hard drives must be setup as a default volume.
  373. To do this, in the root directory of the drive, create a VOL.ID file
  374. containing the volume id 65535. Visage reserves this volume id for use
  375. as a default volume number. When images are scanned, Visage stores them
  376. on the default drive, regardless of the volume to which they have been
  377. assigned. Later, the batch update procedure transfers the images from
  378. the default drive to the designated optical volume.
  379.  
  380.         Using a magnetic drive as a default volume has several
  381. advantages. First, it speeds up scanning because writing to magnetic
  382. media is much faster than writing to optical media. Second, it allows
  383. the user to delete pages prior to batch updating without wasting optical
  384. disk space. Third, it is more convenient because the destination volume
  385. does not have to be mounted while scanning takes place. Visage Network
  386. Support
  387.  
  388.         The Visage document image processing system comes in two
  389. versions -- standalone and network server. The standalone system
  390. requires that all image volumes (hard drives and optical media) be
  391. attached to the image workstation PC. The network system utilizes a PC
  392. running the WormServer software.  This PC has optical drives attached
  393. and is dedicated to storing and retrieving images. Visage currently
  394. supports Novell networks (SPX/IPX) and soon will provide support for
  395. NetBios, and TCP/IP networks, which means just about any network you'll
  396. find.
  397.  
  398.         In a typical network implementation, the image server (running
  399. the WormServer software) would have one large magnetic drive assigned as
  400. the default volume, and one or more optical drives. To the user, the
  401. standalone and network versions of Visage look identical. The only
  402. difference is that images are stored on the network image server rather
  403. than a local drive. Just as important, the network and standalone
  404. versions of Visage have exactly the same programmer's interface. That
  405. means that the same version of your application can support either
  406. environment.
  407.  
  408. PREPARING YOUR APPLICATION
  409.  
  410.         Visage maintains database files that record the location of
  411. stored pages. Each document within a database is uniquely identified by
  412. a key -- a character string of up to 30 characters. To access documents
  413. in application programs, you must tell Visage which database to use and
  414. provide the key to locate the image information. For example, the
  415. function call
  416.  
  417.     DIDC_call_menu("RECORDS","100233",0);
  418.  
  419. activates the Visage menu system using the RECORDS image database. This
  420. database consists of two files: RECORDS.DOC and RECORDS.DCX.  In the
  421. RECORDS database, Visage will locate the record with a key equal to
  422. "100233".  (The use of the third parameter is described in the
  423. Programmer's Interface section.) Your application is responsible for
  424. keeping track of key values. Typically, the key will be stored in a
  425. field of your database record. Each record will have a key that links it
  426. to the Visage database.  One word of caution -- once images are stored,
  427. it is imperative that the key in your database not be changed or you
  428. will lose your link to the image database. The DIDC Menu
  429.  
  430.         The DIDC Menu system is activated by a call to DIDC_call_menu.
  431. When first activated, the menu system displays menu options across the
  432. top line of the screen and status information at the bottom of the
  433. screen. The main menu choices are View, Scan, Print, and Misc.  At the
  434. bottom of the screen, the status line tells which page is selected, the
  435. number of pages in the document, the volume selected for storing images,
  436. the name of the image database, and the key associated with the current
  437. document.
  438.  
  439.  
  440. THE VISAGE MENU SYSTEM
  441.  
  442.         The Main Menu
  443.         -------------
  444.  
  445.         To select the menu option you want, use the left and right arrow
  446. keys to highlight your selection, then press the down arrow key to
  447. activate the pull-down menu. To return to the Main Menu from a pull-down
  448. menu, press ESC.
  449.  
  450.         The View Menu
  451.         -------------
  452.         The View Menu offers
  453. the following options:
  454.  
  455.                             ╔══════════════════════════════╗
  456.               Next Page     ║                              ║
  457.               Prev page     ║                              ║
  458.               Same page     ║     (Figure not shown)       ║
  459.               Go to page    ║                              ║
  460.               Clear screen  ║                              ║
  461.                             ║                              ║
  462.                             ╚══════════════════════════════╝
  463.  
  464.  
  465.  
  466.         When the menu system is first activated, no page is selected.
  467. Selecting Next Page will retrieve the first page of the document and
  468. make it the selected page. Subsequent use of Next Page will retrieve
  469. next pages in the document in sequential order.  Selecting Prev Page
  470. will retrieve the page previous to the currently selected page. If the
  471. currently selected page is 0 or 1, Prev Page does nothing.
  472.  
  473.         On systems equipped with VGA or EGA monitors, the page displayed
  474. will take up the entire screen, so you will not be able to view the
  475. application and the image at the same time. If you want to review the
  476. selected page, use Same Page.
  477.  
  478.         Go to Page
  479.  
  480.        The Go to Page option
  481.        allows you to view a          ╔══════════════════════════════╗
  482.        specific page by page         ║                              ║
  483.        number. When you              ║                              ║
  484.        select this option, you       ║     (Figure not shown)       ║
  485.        will be asked to enter        ║                              ║
  486.        the page number to            ║                              ║
  487.        view. Type in the page        ║                              ║
  488.        number and press              ╚══════════════════════════════╝
  489.        ENTER or press ESC
  490.        to return to the menu.
  491.  
  492.  
  493. Clear Screen
  494.  
  495.         The Clear Screen option removes the images from the image window
  496. on dual page display systems.
  497.  
  498. Viewing Options
  499.  
  500. Visage provides the following image manipilation functions:
  501.  
  502.     ALT+Z:    Enlarge the image
  503.     CTL+Z:    Reduce the image
  504.     ALT+R:    Rotate the image clockwise
  505.     CTL+R:    Rotate the image counterclockwise
  506.     Arrows:     Move the image
  507.     Home:    Position image at upper left
  508.         H:      Hide data window (on dual page displays)
  509.         PgDn    Retrieve next page
  510.     PgUp    Retrieve previous page
  511.         ENTER   Return to menu system
  512.  
  513.  
  514.         The Scan Menu
  515.         -------------
  516.  
  517.        The Scan Menu offers
  518. the following options:
  519.  
  520.           Scan pages              ╔══════════════════════════════╗
  521.           Insert pages            ║                              ║
  522.           Replace page            ║                              ║
  523.           Replace specific page   ║     (Figure not shown)       ║
  524.           Delete current page     ║                              ║
  525.           Delete specific page    ║                              ║
  526.           Delete page range       ║                              ║
  527.           Delete document         ╚══════════════════════════════╝
  528.           
  529.  
  530. Scan pages
  531.  
  532.         When this option is selected, Visage activates the scanner,
  533. scans in as many pages as are in the hopper (or just one page in Flat
  534. Bed mode) and appends the pages to the current document.
  535.  
  536.  
  537. Insert pages
  538.  
  539.         This option operates like Scan Pages except that the scanned
  540. pages are inserted into the document in front of the currently selected
  541. page.
  542.  
  543.  
  544. Replace page
  545.  
  546.         This option will replace the currently selected page with a
  547. newly scanned image
  548.  
  549.  
  550. Replace specific page
  551.  
  552.         Use this option to identify a specific page you want to replace
  553. with a new image Delete current page
  554.  
  555.  
  556. Delete current page
  557.  
  558.         This option deletes the currently selected page from the
  559. document. Before the deletion is made, Visage will ask you to confirm
  560. that this is what you want to do
  561.  
  562. Delete specific page
  563.  
  564.         Deletes an image you specify by page number
  565.  
  566. Delete page range
  567.  
  568.         Deletes a specified range of pages. You will be prompted to
  569. enter the starting and ending page numbers
  570.  
  571. Delete document
  572.  
  573.         This option deletes all pages from the currently selected
  574. document. As with all delete functions, the user must confirm the action
  575. before the deletion is made.
  576.  
  577.  
  578.  
  579.         The Print Menu
  580.         --------------
  581.  
  582. The Print Menu offers the following options:
  583.  
  584.           Print document       ╔══════════════════════════════╗
  585.           Print current page   ║                              ║
  586.           Print page range     ║                              ║
  587.           Print specific page  ║     (Figure not shown)       ║
  588.                                ║                              ║
  589.                                ║                              ║
  590.                                ║                              ║
  591.                                ║                              ║
  592.                                ╚══════════════════════════════╝
  593.  
  594. Print document
  595.  
  596.         This option prints all pages of the current document.
  597.  
  598. Print current page
  599.  
  600.     This option prints the currently selected page.
  601.  
  602. Print page range
  603.  
  604.         This option permits printing part of a document. You will be
  605. prompted for the starting and ending page.
  606.  
  607.  
  608. Print specific page
  609.  
  610.         You will be prompted for the number of the single page you wish
  611. to print.
  612.  
  613.  
  614. NOTE: For all print options, you will be prompted for the number of copies.
  615.  
  616.         The Misc Menu
  617.         -------------
  618.         The Misc Menu offers the following options:
  619.  
  620.                                ╔══════════════════════════════╗
  621.           Drive status         ║                              ║
  622.           Select write volume  ║                              ║
  623.           Mount volume         ║     (Figure not shown)       ║
  624.           Batch update         ║                              ║
  625.           Extract pages to TIF ║                              ║
  626.           Extract pages to PCX ║                              ║
  627.                                ╚══════════════════════════════╝
  628. Drive status
  629.  
  630. This option displays the
  631. currently logged image
  632. volumes and the percent
  633. of disk space used on
  634. each volume.
  635.  
  636. Select write volume
  637.  
  638.         This option lets you change the volume to which subsequently
  639. scanned images will be stored.
  640.  
  641. Mount volume
  642.  
  643.         If you need to view images that are on a volume that is not
  644. currently mounted, select this option, mount the desired volume, and
  645. then press ENTER. This function applies only to images stored on
  646. removable media such as optical disk cartridges.
  647.  
  648.  
  649. Batch update
  650.  
  651.         When images are scanned, they are initially stored on the
  652. default volume (identified by volume id 65535). The batch update process
  653. moves images from the default volume to the volume selected as the write
  654. volume when the images were scanned in. The default volume must be a
  655. magnetic hard drive and when the batch update is completed, the images
  656. on the default drive are erased.
  657.  
  658.         When you are ready for a batch update, call the Visage Menu and
  659. select BatchUpdate. You will see a series of questions at the top of
  660. your screen. Answer each question as indicated. The main item the Visage
  661. needs to know is the volume number of the storage destination. The is
  662. the VOL.ID entered when a new document was scanned. After you supply the
  663. volume number, you will be asked to confirm your decision. If you answer
  664. no, you will be returned to the Menu. If you answer yes, make sure you
  665. have the correct disk in the optical drive and Visage will begin moving
  666. your documents to the optical disk or designated hard disk
  667. sub-directory. Depending on how much scanning you've done, this process
  668. may take some time. In most cases, you will probably want to do this at
  669. the end of the day.
  670.  
  671. Extract pages to TIF (or PCX)
  672.  
  673.         All images scanned through VISAGE are stored in a single file.
  674. This technique improves the performance and efficiency of the system.
  675. Since VISAGE stores files in a graphics format (TIFF) supported by many
  676. OCR software packages, you may want to convert specific pages of a
  677. document (or an entire document) to ASCII or a word processing format.
  678. The EXTRACT option permits you to specify pages from a document and
  679. creates a single TIFF file for each page.  You will first be prompted
  680. for a directory for the extracted pages and then the range of pages you
  681. wish to convert.  Finally, you will be asked for a three (3) letter
  682. filename prefix.  VISAGE will increment this prefix with the number of
  683. each page you extract. For example; ABC00001.TIF, ABC00002.TIF, etc.
  684. Optionally, files may be extracted to a PCX format for use with FAX or
  685. other programs.
  686.  
  687.  
  688. Working with Sub Documents
  689.  
  690.         When your application provides Visage with a new key, a document
  691.  is created for images associated with the database record holding that
  692.  key.  Thus, there is a specific and unique image set, or document per
  693.  database key.  However, there may be applications which require a more
  694.  comprehensive document definition.  When this is the case, Visage
  695.  provides a facility for creating Document Types.  For example, suppose
  696.  your were designing a document image processing system for a doctor's
  697.  office.  The doctor interested in medical information about a patient
  698.  and doesn't want to browse through boring financial and insurance
  699.  information (as long as the bills are paid).  However, the office staff
  700.  are mainly concerned with looking at the financial and insurance
  701.  information (to make sure the bills are paid).  By using the Visage Sub
  702.  Document Type facility you can create two or more sections within each
  703.  document.  These are referred to as document types.
  704.  
  705.         Defining document types and adding them too your application is
  706. very easy.  Simply create an ASCII file with the name of a single
  707. document type on each line and give the file any name you want.
  708. For example, in the doctor's office situation you might create a
  709. file called PTCHART.LST with the following document types:
  710.  
  711.  
  712.                 Financial
  713.                 Med History
  714.         Exams
  715.         Lab Work
  716.         Consults
  717.         Inpatient
  718.         General
  719.  
  720.         To get your application to use these document types, you would
  721. place the above file name at the end of your call to the Visage Menu:
  722.  
  723.     DIDC_call_menu(DB,KEY,0,"PTCHART.LST");
  724.  
  725.         If no file name is provided, Visage will always look for a
  726. default file named DOCTYPES.LST and use this for its sub document type
  727. definitions. If this file is not found and you do not explicitly call a
  728. document type file, this option will be ignored in your application
  729. (i.e., you won't be able to specify document types).
  730.  
  731.         Scanning and retrieving in applications which use document types
  732. require that the user select a specific type prior to scanning or
  733. retrieving an image.
  734.  
  735. The Visage Programmer's Interface
  736.  
  737.  
  738.         The Visage Programmer's Interface allows your application
  739. program to communicate with the Visage TSR.  The function calls give you
  740. complete control over the document image processing capabilities of
  741. Visage. You can use as many or as few of the functions as you desire.
  742. Currently, interfaces modules are available for Turbo C, Microsoft C,
  743. Clipper, and Turbo Pascal.
  744.  
  745.         Visage maintains its own database that keeps track of where
  746. images are stored. Each document can be up to 500 pages long.  Documents
  747. can also be subdivided into sub-documents.  For example, in a personnel
  748. records management system, a document might consist of three types of
  749. sub-documents: a resume, correspondence with the applicant, and
  750. correspondence with prospective employers. All three types of
  751. sub-documents are stored in the same document record, but are
  752. distinguished by the document type -- a name you assign when the
  753. sub-documents are scanned.  The C language function call below scans
  754. pages into the IMGDB database with a key of DOC1. The pages are assigned
  755. to document type 1, as indicated by the third parameter.
  756.  
  757.                  res = DIDC_auto_scan ("IMGDB","DOC1",1);
  758.  
  759.         Note that if the IMGDB database does not exist, it will be
  760.         created. If the record with a key value "DOC1" is not found in
  761.         the database, a new record will be added.
  762.  
  763.  
  764.         Documents are uniquely identified by a database name and a key,
  765. both of which are character strings.  The database keeps track of:
  766.  
  767.                 - Which pages belong to a document
  768.                 - Where the pages are stored
  769.                 - The sub-document type of each page
  770.                 - The order of the pages within a document
  771.                   and sub-document
  772.  
  773.  
  774.         For example, IMGDB is a document database containing two
  775.         document records. The records contain the following information:
  776.  
  777.     Record 1:    Key = "DOC1"
  778.  
  779.          Page            Type           Location
  780.          =======================================
  781.            1               1            Volume 1
  782.        2           1        Volume 1
  783.        3           2        Volume 3
  784.  
  785.     Record 2:    Key = "DOC2"
  786.  
  787.          Page            Type           Location
  788.          =======================================
  789.            1               1            Volume 1
  790.        2           2        Volume 4
  791.        3           2        Volume 3
  792.        4           2        Volume 4
  793.        5           3        Volume 6
  794.  
  795.  
  796.         Notice that pages are ordered by document type -- pages of type
  797.         1 come before pages of type 2, etc.  Note also that pages need
  798.         not necessarily reside on the same volume. If pages are scanned
  799.         at different times, it is likely that they will be stored on
  800.         different volumes because the earlier volumes were filled.
  801.         Visage keeps track of where pages are stored so you can make
  802.         sure the correct volumes are mounted.
  803.  
  804.         One of the most useful functions Visage provides is the menu
  805.         system.  For example, the Visage C function:
  806.  
  807.     DIDC_call_menu("RECORDS","100233",0);
  808.  
  809.         calls the Visage popup menu system for database "RECORDS" using
  810.         the key "100233". Visage will automatically create a database
  811.         RECORDS.DOC and an index RECORDS.DCX, which it will use to keep
  812.         track of where images are stored. It is vital that database and
  813.         index files are not deleted or damaged since they are difficult
  814.         to rebuild. We recommend frequent backups of these files to
  815.         insure access to images.
  816.  
  817.         The DIDC_call_menu() function is just one of many function calls
  818.         Visage provides the application programmer. Other function calls
  819.         provide direct (that is, invisible to the user) access to
  820.         scanning, storage, display, and printing capabilities. Interface
  821.         modules are currently available for MicroSoft C, Turbo C, most
  822.         other C compilers, Turbo Pascal, and Clipper. A major advantage
  823.         of Visage lies in its ability to load as a "swappable" TSR
  824.         requiring less than 9K of conventional memory.
  825.  
  826.  
  827. Visage C Function Calls
  828.  
  829.         The following are the Visage function calls for the C language.
  830. The Visage modules are compiled using the large model, so your
  831. application must also use the large model. The files MSCVIS.OBJ (for
  832. Microsoft C) and TCVIS.OBJ (for Borland C) contain the Visage function
  833. calls for C (SOME FUNCTIONS MAY NOT BE AVAILABLE IN VISAGE LITE).
  834.  
  835.  
  836. int DIDC_locate_tsr(void);
  837.  
  838.         Locates the Visage TSR and initializes the shared data area. The
  839.         function returns the following value:
  840.  
  841.         1    The TSR was located.
  842.         0    The TSR was not located.
  843.  
  844.         Important: This function must be called before any other Visage
  845.         function calls.
  846.  
  847.  
  848. int DIDC_tsr_type(void);
  849.  
  850.         DIDC provides two types of TSR programs. One supports display,
  851.         scan, and print -- the other supports display only. This
  852.         function indicates which type of TSR is currently loaded. The
  853.         return values are:
  854.  
  855.         1    Supports scan, print, display
  856.         2    Supports display only
  857.  
  858.  
  859. int DIDC_total_pages(char db[], char key[]);
  860.  
  861.     Parameters:    
  862.  
  863.         db: name of the image database
  864.  
  865.         key: unique identifier used to locate document in image database
  866.  
  867.         Returns the total number of pages, of all types, associated with
  868.         key.
  869.  
  870.  
  871. int DIDC_total_pages_type(char db[], char key[], int page_type);
  872.  
  873.     Parameters:    
  874.  
  875.         db: name of the image database
  876.  
  877.                 key: unique identifier used to locate document in image
  878.                 database
  879.  
  880.                 page_type: Identifies subdocument type to count. Must be
  881.                 greater than zero.
  882.  
  883.         Returns the total number of pages of type page_type associated
  884.         with key.
  885.  
  886.  
  887.  
  888. int DIDC_show_luns(void);
  889.  
  890.     Displays the status of all volumes currently mounted.
  891.  
  892.  
  893.  
  894. int DIDC_scan_page(char db[], char key[], int page_type);
  895.  
  896.     Parameters:    
  897.  
  898.         db: name of the image database
  899.  
  900.                 key: unique identifier used to locate document in image
  901.                 database
  902.  
  903.                 page_type: Identifies subdocument type to scan. Must be
  904.                 greater than zero.
  905.  
  906.  
  907.         Initiates scanning mode for the document defined by db and key.
  908.         Scans one page only.
  909.  
  910.  
  911. int DIDC_auto_scan(char db[], char key[], int doctype);
  912.  
  913.     Parameters:    
  914.  
  915.         db: name of the image database
  916.  
  917.                 key: unique identifier used to locate document in image
  918.                 database
  919.  
  920.                 page_type: Identifies subdocument type to scan. Must be
  921.                 greater than zero.
  922.  
  923.  
  924.         Initiates scanning mode for the document defined by db and key.
  925.         Scanned pages will be appended to the document. The doctype
  926.         parameter assigns a sub-document type to the pages being
  927.         scanned. The Visage system allows documents to be divided into
  928.         sub-documents by document type. You can scan some pages with
  929.         doctype equal to 1 and others pages with other values -- Visage
  930.         keeps track of which pages belong to which document type.
  931.  
  932.  
  933. int DIDC_insert_page(char db[], char key[], int doctype, int page_num);
  934.  
  935.     Parameters:    
  936.  
  937.         db: name of the image database
  938.  
  939.                 key: unique identifier used to locate document in image
  940.                 database
  941.  
  942.                 page_type: Identifies subdocument type to scan. Must be
  943.                 greater than zero.
  944.  
  945.         page_num: Page to insert in front of.
  946.  
  947.         Initiates scanning mode for the document defined by db and key.
  948.         Scanned pages will be inserted into the document in front of the
  949.         page identified by page_num. The doctype parameter assigns a
  950.         sub-document type to the pages being scanned.
  951.  
  952.  
  953.  
  954. int DIDC_delete_page(char db[], char key[], int doctype, int page_num);
  955.  
  956.     Parameters:    
  957.  
  958.         db: name of the image database
  959.  
  960.                 key: unique identifier used to locate document in image
  961.                 database
  962.  
  963.                 page_type: Identifies subdocument type to scan. Must be
  964.                 greater than zero.
  965.  
  966.         page_num: Page to delete.
  967.  
  968.  
  969.         Deletes page page_num of type page_type from document key in
  970.         database db.
  971.  
  972.  
  973. int DIDC_call_menu(char db[], char key[], int flag, tfname[]);
  974.  
  975.     Activates the Visage menu system.
  976.  
  977.     Parameters:    
  978.  
  979.         db: name of the image database
  980.  
  981.                 key: unique identifier used to locate document in image
  982.                 database
  983.  
  984.                 flag: when set to 0, menu pops up immediately. when set
  985.                 to 1, TSR immediately displays image. When user presses
  986.                 ESC, TSR returns to menu. If document has no pages, menu
  987.                 will popup immediately.
  988.  
  989.                 tfname: name of file containing a list of sub-document
  990.                 types. You can pass a null string ("") to indicate that
  991.                 sub-document types are not used.
  992.  
  993. int DIDC_set_write_vol(unsigned wv);
  994.  
  995.         Sets the write volume to the value of wv. The write volume is a
  996.         number that specifies on which volume scanned images should be
  997.         stored. The write volume can also be changed by the user at the
  998.         Visage menu.
  999.  
  1000.  
  1001. int DIDC_get_write_vol(void)
  1002.  
  1003.     Returns the number of the current destination volume.
  1004.  
  1005.  
  1006. int DIDC_batch_update(void);
  1007.  
  1008.         Initiates a batch update. During batch update, images are
  1009.         transferred from the default volume to their ultimate
  1010.         destination. For example, a page that was scanned to volume 2
  1011.         will first be stored on the default volume. During the batch
  1012.         update process, the image will be moved from the default volume
  1013.         to volume 2.
  1014.  
  1015.  
  1016. int DIDC_set_scanner(int page_len, int source, int intensity);
  1017.  
  1018.         Controls scanner settings for the length of the pages to be
  1019.         scanned (letter or legal), the paper source (hopper or flat
  1020.         bed), and the intensity of the scan from lightest (0) to darkest
  1021.         (6).
  1022.  
  1023.     Parameters:     
  1024.  
  1025.         page_len:     0 = Legal size
  1026.                 1 = Letter size
  1027.         source:        0 = Hopper
  1028.                 1 = Flat bed
  1029.         intensity:    0 = Lightest
  1030.                 1 = Very light
  1031.                 2 = Light
  1032.                 3 = Normal
  1033.                 4 = Dark
  1034.                 5 = Very dark
  1035.                 6 = Darkest
  1036.  
  1037. int DIDC_get_scanner(int param);
  1038.  
  1039.         Returns the current setting for a specified scanner attribute.
  1040.         Controls scanner settings for the length of the pages to be
  1041.         scanned (letter or legal), the paper source (hopper or flat
  1042.         bed), and the intensity of the scan from lightest (0) to darkest
  1043.         (6).
  1044.  
  1045.     Parameters:     
  1046.  
  1047.         param:     1 = return current page size.
  1048.                         0 = Legal size
  1049.                         1 = Letter size
  1050.  
  1051.                         2 = return current paper source.
  1052.                         0 = Hopper
  1053.                         1 = Flat bed
  1054.  
  1055.                         3 = return current intensity setting.
  1056.                         0 = Lightest
  1057.                         1 = Very light
  1058.                         2 = Light
  1059.                         3 = Normal
  1060.                         4 = Dark
  1061.                         5 = Very dark
  1062.                         6 = Darkest
  1063.  
  1064.  
  1065. int DIDC_save_scan_set(void);
  1066.  
  1067.  
  1068.         Parameters:     None.
  1069.  
  1070.         Saves the current scanner settings as the default settings for
  1071.         future use.
  1072.  
  1073.  
  1074. int DIDC_print_all_pages_type(char db[], 
  1075.                               char key[],
  1076.                               int doctype);
  1077.  
  1078.  
  1079.     Parameters:    
  1080.  
  1081.         db: name of the image database
  1082.  
  1083.                 key: unique identifier used to locate document in image
  1084.                 database
  1085.  
  1086.                 doctype: Identifies subdocument type to scan. Must be
  1087.                 greater than zero.
  1088.  
  1089.  
  1090.         Prints all pages of document key in image database db that are
  1091.         of type doctype. Setting doctype to 0 will cause all pages to be
  1092.         printed, regardless of document type.
  1093.  
  1094.  
  1095. int DIDC_print_pages(char db[], 
  1096.                      char key[],
  1097.                      int doctype,
  1098.                      int first_page,
  1099.                      int last_page);
  1100.  
  1101.  
  1102.     Parameters:    
  1103.  
  1104.         db: name of the image database
  1105.  
  1106.                 key: unique identifier used to locate document in image
  1107.                 database.
  1108.  
  1109.         doctype: identifies subdocument type to print.
  1110.  
  1111.                 first_page, last_page: Identifies range of pages to
  1112.                 print.
  1113.  
  1114.  
  1115.         Prints selected pages of document key in image database db that
  1116.         are of type doctype. Setting doctype to 0 will cause all pages
  1117.         to be printed, regardless of document type.  Setting first_page
  1118.         to zero, will cause all pages of the selected document type to
  1119.         print.
  1120.  
  1121.  
  1122. int DIDC_clear_doc_page(void);
  1123.  
  1124.         Clears the document display portion of the screen. Function is
  1125.         performed only when KoFax high resolution display is used. Has
  1126.         no effect on VGA or EGA displays.
  1127.  
  1128.  
  1129.  
  1130. int DIDC_display_page(char db[], char key[],
  1131.                      int pagetype, int page, int control);
  1132.  
  1133.  
  1134.     Parameters:    
  1135.  
  1136.         db: name of the image database
  1137.  
  1138.                 key: unique identifier used to locate document in image
  1139.                 database
  1140.  
  1141.                 page_type: Identifies subdocument type to scan. Must be
  1142.                 greater than zero.
  1143.  
  1144.         page: Page to display.
  1145.  
  1146.         control: If 1, allows user to manipulate image.
  1147.  
  1148.  
  1149.         Displays the page defined by db, key, and page where db is the
  1150.         document database, key is the unique document identifier,
  1151.         pagetype is the document type, and page is the page within the
  1152.         document. If control is set to 1, then the user is allowed to
  1153.         pan, scroll, zoom, and rotate the image.  If control is set to
  1154.         0, then user has no control over the image.
  1155.  
  1156.  
  1157. int DIDC_unique_key(char db[], char key[], int len);
  1158.  
  1159.     Parameters:    
  1160.  
  1161.         db: name of the image database
  1162.  
  1163.                 key: character string that will be filled in with a
  1164.                 unique key value.  The character string must be at least
  1165.                 31 characters long.
  1166.  
  1167.                 len: Length of key to return.  Must be at least 6 but no
  1168.                 more than 30.
  1169.  
  1170.  
  1171.         Returns a unique key [key] value for database db.  The key
  1172.         returned will be len characters long. This function is used when
  1173.         a new document is added to the system. Usually, the application
  1174.         will maintain a key field in each record. This key field is used
  1175.         to access the document associated with that record. When the new
  1176.         document record is created, this function call can be used to
  1177.         ensure that the document key field will have a unique value.
  1178.  
  1179.  
  1180.  
  1181. int DIDC_extract_image(char db[],
  1182.                        char key[],
  1183.                        int pagetype,
  1184.                        int page,
  1185.                        char fname[]);
  1186.  
  1187.     Parameters:    
  1188.  
  1189.         db: name of the image database
  1190.  
  1191.                 key: character string that will be filled in with a
  1192.                 unique key value.  The character string must be at least
  1193.                 31 characters long.
  1194.  
  1195.         pagetype: Specifies subdocument type of page to extract.
  1196.  
  1197.         page: Specifies page to extract.
  1198.  
  1199.         textfname: name of TIFF file to create.
  1200.  
  1201.  
  1202.         Extracts a specified page and stores the TIFF image in the file
  1203.         name specified.
  1204.  
  1205.  
  1206.  
  1207. CLIPPER Function Calls
  1208.  
  1209.  
  1210.         To make Visage function calls from CLIPPER applications, you
  1211. must link the MSCVIS.OBJ and CLIPVIS.OBJ files into your applications.
  1212. The CLIPPER function calls are functionally equivalent to those used in
  1213. C applications -- for detailed descriptions of how the functions
  1214. operate, see the section on C Language Calls.
  1215.  
  1216.  
  1217. <num> LOCATETSR()
  1218.  
  1219.     Functionally equivalent to DIDC_locate_tsr().
  1220.  
  1221.  
  1222. <num> CALLMENU(<char> db, <char> key, <num> flag, <char> tfname)
  1223.  
  1224.     Functionally equivalent to DIDC_call_menu().
  1225.  
  1226.  
  1227. <num> SETWVOL(wv)
  1228.  
  1229.     Functionally equivalent to DIDC_set_write_vol().
  1230.  
  1231.  
  1232. <num> GETWVOL()
  1233.  
  1234.     Functionally equivalent to DIDC_get_write_vol().
  1235.  
  1236.  
  1237. <num> BATCHUP()
  1238.  
  1239.     Functionally equivalent to DIDC_batch_update().
  1240.  
  1241. <num> CLRPGE()
  1242.  
  1243.     Functionally equivalent to DIDC_clear_doc_page().
  1244.  
  1245.  
  1246. <char> UKEY(db,len)
  1247.  
  1248.         Functionally equivalent to DIDC_unique_key except that the key
  1249.         is returned by the function call.
  1250.  
  1251.  
  1252. <num> AUTOSCAN(db,key,doctype)
  1253.  
  1254.     Functionally equivalent to DIDC_auto_scan().
  1255.  
  1256.  
  1257. <num> PRTALL(db,key,doctype)
  1258.  
  1259.     Functionally equivalent to DIDC_print_all_pages().
  1260.  
  1261.  
  1262. <num> DISPPAGE(db,key,doctype,page)
  1263.  
  1264.     Functionally equivalent to DIDC_display_page().
  1265.  
  1266.  
  1267. <num> SETSCAN(page_len,source,intensity)
  1268.  
  1269.     Functionally equivalent to DIDC_set_scanner().
  1270.  
  1271.  
  1272. <num> TSRTYPE()
  1273.  
  1274.     Functionally equivalent to DIDC_tsr_type(void).
  1275.  
  1276.  
  1277. <num> CNT_P_TYPE(<char> db, <char> key, <num> doctype)
  1278.  
  1279.         Returns the number of pages in subdocument doctype in document
  1280.         key in database db.
  1281.  
  1282.  
  1283. <num> SHOWLUNS()
  1284.  
  1285.     Displays information about all volumes currently mounted.
  1286.  
  1287.  
  1288. <num> INSPGE(<char> db, <char> key, 
  1289.              <num> doctype, <num> page)
  1290.  
  1291.     Scans a page and stores it by inserting it before the page specified.
  1292.  
  1293.  
  1294. <num> DELPGE(<char> db, <char> key, 
  1295.              <num> doctype, <num> page)
  1296.  
  1297.     Deletes specified page.
  1298.  
  1299.  
  1300. <num> GETSCAN(<num> param)
  1301.  
  1302.         Gets current setting for specified parameter. See
  1303.         DIDC_get_scanner in the C function call section.
  1304.  
  1305.  
  1306. <num> SAVESCAN()
  1307.  
  1308.     Saves current scanner settings as system defaults.
  1309.  
  1310.  
  1311. <num> PRTPGES(<char> db, <char> key, <num> doctype,
  1312.               <num> first_page, <num> last_page)
  1313.  
  1314.         Prints the range of pages specified of a particular document
  1315.         type.  Set doctype to zero to print pages regardless of document
  1316.         type.  Set first_page to zero to print all pages of specified
  1317.         type.
  1318.  
  1319.  
  1320.  
  1321. <num> EXTIMG(<char> db, <char> key, 
  1322.              <num> doctype, <num> page,
  1323.              <char> filename)
  1324.  
  1325.     Extracts page, in TIFF format, to the filename specified.
  1326.  
  1327.  
  1328.  
  1329. TURBO PASCAL Function Calls
  1330.  
  1331.         The Visage function calls for Turbo Pascal are contained in the
  1332. file VISAGE.TPU.  For details of these functions, see the C
  1333. language calls of the same name.
  1334.  
  1335.  
  1336. function DIDC_total_pages(var dbname : string;
  1337.                           var key : string) : integer;
  1338.  
  1339. function DIDC_total_pages_type(var dbname : string;
  1340.                               var key : string;
  1341.                               doc_type : integer) : integer;
  1342.  
  1343. function DIDC_call_menu(var dbname : string;
  1344.                         var kname : string;
  1345.                         flag : integer;
  1346.                         var DocListFname : string) : Integer;
  1347.  
  1348. function DIDC_tsr_type : integer;
  1349.  
  1350. function DIDC_batch_update: integer;
  1351.  
  1352. function DIDC_set_write_vol(wv : word) : integer;
  1353.  
  1354. function DIDC_clear_doc_page : integer;
  1355.  
  1356. function DIDC_unique_key(var dbname : string;
  1357.                          var key : string;
  1358.                          len : integer) : integer;
  1359.  
  1360. function DIDC_get_write_vol : integer;
  1361.  
  1362. function DIDC_auto_scan(var dbname : string; 
  1363.                         var key : string;
  1364.                         doctype : integer): integer;
  1365.  
  1366. function DIDC_set_scanner(page_len : integer;
  1367.                           source : integer;
  1368.                           intensity : integer) : integer;
  1369.  
  1370. function DIDC_print_all_pages(var dbname : string;
  1371.                               var key : string;
  1372.                               doctype : integer) : integer;
  1373.  
  1374. function DIDC_print_pages(var dbname : string;
  1375.                           var key : string;
  1376.                           doctype : integer;
  1377.                           first_page : integer;
  1378.                           last_page : integer) : integer;
  1379.  
  1380. function DIDC_locate_tsr : boolean;
  1381.  
  1382. function DIDC_display_page(var dbname : string;
  1383.                            var kname : string;
  1384.                            pagetype, page : integer;
  1385.                            control : integer) : Integer;
  1386.  
  1387.  
  1388.  
  1389. Using IMGCALLS.EXE
  1390.  
  1391.         Some programming languages, such as Dbase IV and Clarion
  1392. Professional Developer, cannot link directly with external object
  1393. modules. These programs do, however, have the ability to execute other
  1394. programs. The Visage program IMGCALLS.EXE (included with the Visage
  1395. Developer's Edition disk) provides access to all Visage functions
  1396. through command line parameters.  For example, in Dbase IV, you could
  1397. call the Visage menu system with the following statement:
  1398.  
  1399.     RUN IMGCALLS 3 IMGDB ABC 0
  1400.  
  1401. In Clarion Developer, you could call the Visage menu system with the
  1402. following statement:
  1403.  
  1404.     RUN('IMGCALLS 3 IMGDB ABC 0')
  1405.  
  1406.  
  1407. The first parameter for IMGCALLS is always a numeric value that
  1408. specifies the function to be invoked. In this example, function 3 calls
  1409. the Visage menu system. Additional parameters, if any, vary depending on
  1410. the function you want to use. In the example, IMGDB is the name of the
  1411. image database, ABC is the document key, and 0 is the function flag.
  1412. (See the C language calls for a full description of the use of these
  1413. parameters). 
  1414.  
  1415. When IMGCALLS terminates, it stores a result code in a file named
  1416. IMGCALLS.RES. Your application can read the contents
  1417. of this file to determine the result of the Visage function call. If
  1418. IMGCALLS.RES contains a negative number, then some sort of error
  1419. occurred.  See Appendix A for a complete listing of error codes. A
  1420. result of -1 means that IMGCALLS was invoked with no parameters. A
  1421. result of -2 means that the Visage TSR is not resident.
  1422.  
  1423. IMGCALLS Function Calls
  1424.  
  1425.  
  1426. Function 1: Return total number of document pages.
  1427.  
  1428. Additional Parameters:     Name of image database
  1429.                 Document Key
  1430.  
  1431. Example: RUN IMGCALLS 1 IMDB ABC
  1432.  
  1433.  
  1434. Function 2: Return total number of sub-document pages.
  1435.  
  1436. Additional Parameters:     Name of image database
  1437.                 Document Key
  1438.                 Sub-document type
  1439.  
  1440. Example: RUN IMGCALLS 2 IMDB ABC 1
  1441.  
  1442.  
  1443. Function 3: Invoke Visage menu system.
  1444.  
  1445. Additional Parameters:     Name of image database
  1446.                         Document Key
  1447.                         Function flag
  1448.                         Document type file <Optional>
  1449.  
  1450. Example: RUN IMGCALLS 3 IMDB ABC 0
  1451.  
  1452.  
  1453. Function 4: Return version of Visage TSR currently loaded.
  1454.  
  1455. Additional Parameters: None
  1456.  
  1457. Example: RUN IMGCALLS 4
  1458.  
  1459.  
  1460. Function 5: Invoke batch update.
  1461.  
  1462. Additional Parameters: None
  1463.  
  1464. Example: RUN IMGCALLS 5
  1465.  
  1466.  
  1467. Function 6: Set value for write volume.
  1468.  
  1469. Additional Parameters:     Write-volume number
  1470.  
  1471. Example: RUN IMGCALLS 6 3
  1472.  
  1473.  
  1474. Function 7:  Clear document from screen.
  1475.  
  1476. Additional Parameters: None
  1477.  
  1478. Example: RUN IMGCALLS 7
  1479.  
  1480.  
  1481. Function 9: Return unique key for specified image database.
  1482.  
  1483. Additional Parameters:     Name of image database
  1484.                 Desired key length
  1485.  
  1486. Example: RUN IMGCALLS 9 IMGDB 10
  1487.  
  1488. Note: If successful, Visage stores the unique key in IMGCALLS.RES.
  1489.  
  1490.  
  1491. Function 10: Get current value of write volume.
  1492.  
  1493. Additional Parameters: None
  1494.  
  1495. Example: RUN IMGCALLS 10
  1496.  
  1497.  
  1498. Function 11: Display volume status.
  1499.  
  1500. Additional Parameters: None
  1501.  
  1502. Example: RUN IMGCALLS 11
  1503.  
  1504.  
  1505. Function 101: Scan one document page.
  1506.  
  1507. Additional Parameters:     Name of image database
  1508.                         Document Key
  1509.                         Sub-document type
  1510.  
  1511. Example: RUN IMGCALLS 101 IMGDB ABC 0
  1512.  
  1513.  
  1514. Function 102: Scan document pages.
  1515.  
  1516. Additional Parameters:     Name of image database
  1517.                 Document Key
  1518.                 Sub-document type
  1519.  
  1520. Example: RUN IMGCALLS 102 IMGDB ABC 0
  1521.  
  1522.  
  1523. Function 103: Set scanner parameters.
  1524.  
  1525. Additional Parameters:     Page length (legal or letter)
  1526.                         Paper source (hopper or flat bed)
  1527.                         Intensity
  1528.  
  1529. Example: RUN IMGCALLS 103 1 0 3
  1530.  
  1531.  
  1532. Function 104: Scan and insert a page.
  1533.  
  1534. Additional Parameters:   Name of image database
  1535.                          Document Key
  1536.                          Sub-document type
  1537.                          Page number to insert in front of
  1538.  
  1539. Example: RUN IMGCALLS 104 IMGDB ABC 1 1
  1540.  
  1541.  
  1542. Function 105: Delete a page.
  1543.  
  1544. Additional Parameters:   Name of image database
  1545.                          Document Key
  1546.                          Sub-document type
  1547.                          Page number to delete
  1548.  
  1549. Example: RUN IMGCALLS 105 IMGDB ABC 1 1
  1550.  
  1551.  
  1552. Function 203: Print a range of pages for entire document or specified
  1553.               sub-document.
  1554.  
  1555. Additional Parameters:    Name of image database
  1556.                           Document Key
  1557.                           Sub-document type
  1558.                           First page
  1559.                           Last page
  1560.  
  1561. Example: RUN IMGCALLS 203 IMGDB 1 1 10
  1562.  
  1563.  
  1564. Function 300: Display specified document or sub-document page.
  1565.  
  1566. Additional Parameters:    Name of image database
  1567.                           Document Key
  1568.                           Sub-document type
  1569.                           Page number
  1570.  
  1571. Example: RUN IMGCALLS 300 IMGDB ABC 1 1
  1572.  
  1573.  
  1574. Function Result  Codes
  1575.  
  1576.  
  1577. -500  WRITE_VOL_NOT_MOUNTED
  1578.  
  1579. -501  READ_VOL_NOT_MOUNTED
  1580.  
  1581. -502  INVALID_VOLID
  1582.  
  1583. -503  NO_DB_RECORD
  1584.  
  1585. -504  DATABASE_ERR
  1586.  
  1587. -505  NETWORK_ERR
  1588.  
  1589. -506  LOCKED_OUT
  1590.  
  1591. -508  PAGE_NOT_FOUND
  1592.  
  1593. -509  FSEEK_ERR
  1594.  
  1595. -510  NO_BYTES_READ
  1596.  
  1597. -511  FILE_CLOSED
  1598.  
  1599. -512  FWRITE_ERR
  1600.  
  1601. -513  STATUS_NOT_2
  1602.  
  1603. -514  FTELL_ERR
  1604.  
  1605. -515  UNEQUAL_EOF
  1606.  
  1607. -516  NO_TRFR_FILE
  1608.  
  1609. -517  VOLUME_FULL
  1610.  
  1611. -518  NOT_LOGGED_IN
  1612.  
  1613. -519  TEMP_FILE_NOP
  1614.  
  1615. -520  FWRITE_ERR_TRFR
  1616.  
  1617. -521  FSEEK_ERR_TRFR
  1618.  
  1619. -522  BAD_PAGE_TYPE
  1620.  
  1621. -523  BAD_PAGE_OP
  1622.  
  1623. -524  NO_MORE_USERS
  1624.  
  1625. -525  ISAM_CLOSED
  1626.  
  1627. -526  ISAM_OPEN
  1628.  
  1629. -527  F_CREATE_ERR
  1630.  
  1631. -528  TIMEOUT
  1632.  
  1633. -529  DECOMP_ERR
  1634.  
  1635. -530  SEQUENCE_ERR
  1636.  
  1637. -531  PARAM_ERR
  1638.  
  1639. -532  BLOCK_HDR_ERR
  1640.  
  1641. -533  USER_BREAK
  1642.  
  1643. -534  DBNAME_ERR
  1644.  
  1645. -535  BATCH_UPDATE_NEEDED
  1646.  
  1647. -536  CORRUPTED_IMAGE
  1648.  
  1649. -537  NOT_LOCKED_OUT
  1650.  
  1651. -538  IMG_DB_NOP
  1652.  
  1653. -539  ERR_GET_REC
  1654.  
  1655. -540  DEST_VOL_NT_MTD
  1656.  
  1657. -541  ERR_RD_BLKHDR
  1658.  
  1659. -542  ERR_WT_BLKHDR
  1660.  
  1661. -543  ERR_RD_IMAGE
  1662.  
  1663. -544  ERR_WT_IMAGE
  1664.  
  1665. -545  SRCE_VOL_NT_MTD
  1666.  
  1667. -546  SRCE_EQLS_DEST
  1668.  
  1669. -547  DEST_FILE_NT_MTD
  1670.  
  1671. -548  INVALID_USER
  1672.  
  1673. -549  NO_MORE_PAGES
  1674.  
  1675. -550  ERR_PUT_REC
  1676.  
  1677. -551  ADD_TRFR_REC
  1678.  
  1679. -552  PAGE_DOESN'T_EXIST
  1680.  
  1681. -553  PRINTER_ERROR
  1682.  
  1683. -554  DISPLAY_ERROR
  1684.  
  1685. -555  DTI_TIMEOUT
  1686.  
  1687. -556  EMPTY_KEY
  1688.  
  1689. -557  TSR_NOT_LOADED
  1690.  
  1691. -558  NO_KEY
  1692.  
  1693. -559  KEY_TOO_LONG
  1694.  
  1695. -560  NO_DB_NAME
  1696.  
  1697. -561  DB_NAME_TOO_LONG
  1698.  
  1699. -562  BAD_PAGE_NUMBERS
  1700.  
  1701. -563  FUNCTION_NOT_SUPPORTED
  1702.  
  1703.