home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / OS2 / JOVW122B.ZIP / JoeView.hlp (.txt) < prev    next >
OS/2 Help File  |  1994-03-17  |  90KB  |  2,281 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. General Help ΓòÉΓòÉΓòÉ
  3.  
  4. JoeView is an attempt at an image viewer for a variety of image formats. Help 
  5. is available at almost any time.  I have implemented some unusual ways of 
  6. viewing images.  It is probably worth your while to look through the section on 
  7. Viewing Strategies at this time. 
  8.  
  9.  
  10. ΓòÉΓòÉΓòÉ 2. Main Menu ΓòÉΓòÉΓòÉ
  11.  
  12. The main menu system is accessed by single clicking the right mouse button or 
  13. by using the system menu. You probably figured this out by now. 
  14.  
  15.  
  16. ΓòÉΓòÉΓòÉ 2.1. Misc. ΓòÉΓòÉΓòÉ
  17.  
  18. This menu command leads to three possible submenus. 
  19.  
  20. Quit command will close JoeView, if you couldn't figure that out, try typing 
  21. "del \*.*" sometime. 
  22.  
  23. Toggle Title Bar will turn on and off the main title bar.  Note that you can 
  24. NOT MINIMIZE JoeView when the Title Bar is off. 
  25.  
  26. Save Window Positions will store the current window locations of JoeView. This 
  27. includes the File Open Dialog and the Information Dialog. 
  28.  
  29.  
  30. ΓòÉΓòÉΓòÉ 2.2. Files ΓòÉΓòÉΓòÉ
  31.  
  32. This menu command does nothing by itself except bring up a second pull down 
  33. menu which has commands generally relating to file stuff.  Slide Show.  Open a 
  34. file. Save a file, etc.  The actual commands are: 
  35.  
  36. o Open 
  37. o Save 
  38. o SlideShow 
  39. o Print 
  40. o Iconify 
  41. o UnIconify 
  42. o Plumbing 
  43.  
  44.  
  45. ΓòÉΓòÉΓòÉ 2.2.1. Open File Dialog ΓòÉΓòÉΓòÉ
  46.  
  47. This dialog is one of the better features of JoeView and I am especially proud 
  48. of it (Send Money!).  The dialog runs independently of the main window.  You 
  49. can select a new file at any time unless JoeView prevents it, and generally you 
  50. will only be prevented from opening a file if JoeView is already trying to open 
  51. a file or you are running a SlideShow. 
  52.  
  53. Note:  The JPEG libraries use global variables that can interfere with each 
  54. other if trying to read and write JPEG style files at the same time.  If you 
  55. begin saving a file in the JPEG format and immediately try and read a JPEG 
  56. format file, JoeView will hold the read operation (and promote the priority of 
  57. the write operation) until the write is finished. This should be fairly 
  58. transparent to you. 
  59.  
  60. File Mask  In the Options Menu you can decide what you would like the default 
  61. setting for this to be.  You can change the value in this entry field at any 
  62. time but the change will stay only while the current JoeView session is active. 
  63. Typically you would just enter *.* or *.bmp here.  You can also use *.bmp;*.gif 
  64. to select multiple file extensions.  If you want you could also type in the 
  65. name of a file or the full name ala c:\file\my.bmp.  Further, you can change to 
  66. a new directory fairly quickly by using c:\files\go_here\*.* - This would 
  67. change to the approprate drive and directory and also set the File Mask to *.*. 
  68.  
  69. General Idea  Consider this info for the GUI impaired.  A file can be selected 
  70. by typing the file name into the File Mask entry field or by double clicking on 
  71. the appropriate file in the Files list box.  Directories are changed by double 
  72. clicking in the directory listbox, using the Quick Dir or by using the H Dir 
  73. (feature discussed below).  Drives are changed using the pull down listbox. The 
  74. file mask entry field is where, in addition to simply typing a file name, you 
  75. may enter wild cards, like *.gif or multiple wild cards separated by a ; or , 
  76. for example *.gi*;*.bmp;*.tga (no spaces)!  A list of only those files that 
  77. match the mask will be shown in the files list box.  Files can be shown in 
  78. either alphabetical or dated format by selecting the appropriate button. 
  79.  
  80. Confirm on delete does what it says.  If you try and delete a file , it will 
  81. prompt you first.  Turn it off and delete will just kill the file when you hit 
  82. the Delete button.  BEWARE!!! The file deleted is the file shown in the current 
  83. file area (at the upper left side of the dialog) not necessarily the file 
  84. currently being viewed.  If you only single click on a file in the files list 
  85. box it will be selected as the current file even though you are not looking at 
  86. it yet. Why does this feature exist?  Often a series of images are less than 
  87. desirable to me, so the ability to cream'em all at once is useful.  Just leave 
  88. the Confirm on Delete attribute on if your not sure, you will always be 
  89. prompted. 
  90.  
  91. Browse Mode keeps the dialog open when not in use.  This is useful if you are 
  92. going to look at a variety of files and don't want to keep opening the dialog 
  93. each time.  There is a memory penalty for doing so which is proportional to the 
  94. size of the directory being viewed.  When Browse Mode is active, hitting Cancel 
  95. has features discussed below. When Browse Mode is off hitting Cancel will close 
  96. the Open File dialog.  Most often it will be faster just to minimize the Open 
  97. File Dialog. 
  98.  
  99. Cancel  When Browse Mode is not checked this will just dismiss the Open File 
  100. Dialog.  When Browse Mode is active, Cancel will have two possible effects.  If 
  101. an image is currently being loaded, Cancel will stop the file read and load the 
  102. default JoeView image.  If an image is not being loaded, Cancel will cause the 
  103. main window to rise to the top (become active). 
  104.  
  105. H File is an historical listing of all directories you have visited in the 
  106. current JoeView session.  If you have gone to several directories and will go 
  107. back to them, use this listbox and save yourself some keystrokes (or mouse 
  108. clicks). 
  109.  
  110. Low Priority Open will cause the selected file to be read in at low priority, 
  111. giving other processes more the CPU.  This option gets applied even while a 
  112. file is currently being read.  So, you can change the priority of a file read 
  113. by toggling this switch. See the discussion about Low Priority Threads in the 
  114. table of contents. 
  115.  
  116. There are two buttons on the lower left side of the dialog box labeled N and P. 
  117. These buttons will cause the file either next or previous relative to the 
  118. currently highlighted file to be opened.  Both will cycle to either the 
  119. beginning or end of the list when going off the end.  They have accelerator 
  120. keys associated with them. 
  121.  
  122. JoeView will attempt to read files that other applications are currently 
  123. writing.  For most file types, JoeView can handle truncated images and so there 
  124. will not be a problem.  Generally speaking a certain minimum (header info) is 
  125. needed.  Usually there will not be a problem, but you never know.  Currently 
  126. JPEGS cannot be accessed while other applications are writing to that file. 
  127.  
  128. To the right of all the obvious buttons and to the left of Andy Capp, there is 
  129. the I button.  This stands for information.  After you have highlighted a file 
  130. in the files listbox, you can hit the I button to find out the file format, and 
  131. the resolution of the image.  This way you can test an unknown file before 
  132. loading to see if it has some rediculous resolution, like 10000 by 10000 which 
  133. would claim 100 megs of memory if you tried to load it.  If you have previously 
  134. Iconified the file, the icon will be displayed by hiding the directory listbox. 
  135. Dry your little eyes, the directory listbox is just hiding and will come back 
  136. to visit you after you click on any file in the file listbox, except the 
  137. currently selected one.  A potential problem exists if you only have one file 
  138. in the directory and you view the icon.  The icon will display, but you won't 
  139. be able to change directories because the directory listbox will be hidden, but 
  140. you won't be able to unhide it because you won't be able to click on a new file 
  141. in the file listbox.  Whew, thats confusing!  Bahahaha, I always have more than 
  142. one lousy file in a directory so this isn't my problem.  You can get around 
  143. this by switching drives or using your QuickDir. 
  144.  
  145. One last item is the Quick Dir listbox.  Go back on click on Quick Dir for the 
  146. description. 
  147.  
  148.  
  149. ΓòÉΓòÉΓòÉ 2.2.2. Saving an Image ΓòÉΓòÉΓòÉ
  150.  
  151. The File Save dialog is pretty simple but deserves some explanation.  The Quick 
  152. Dir listbox needs some detailed explanation that can be accessed by clicking on 
  153. Quick Dir.  Drive, directory, and files are listings or displays of what is 
  154. currently available.  You can enter any valid directory/path combo in the Save 
  155. as: entry box.  The file listing is for information purposes mostly, but if you 
  156. do click on the file it will become the entry in the Save as: box. If you 
  157. double click on a file listbox entry, that will an indication that you want to 
  158. save the current image into that file. 
  159.  
  160. CAUTION:
  161.  Be sure to indicate a file type before you double click on a file. 
  162.  
  163. When you select a file type, that appropriate extension is added to or changed 
  164. for the text in the Save as: entry field. 
  165.  
  166. File types available are: 
  167.  
  168. o GIF 
  169. o JPEG 
  170. o OS2 BMP (RLE & uncompressed) 
  171. o Windoze BMP (RLE & uncompressed) 
  172. o PBM (raw and ASCII) 
  173. o X11 BMP 
  174. o Sun Raster 
  175. o TARGA (RLE & uncompressed) 
  176. o TIFF 
  177. o PCX 
  178.  
  179. All are pretty self explanatory, but it should be noted that for Windows and 
  180. OS2 bitmaps both regular and RLE formats are written.  RLE formats will do 
  181. little good on real life images with more than 16 colors. 
  182.  
  183. There are three options located at the bottom of the dialog.  Save at displayed 
  184. size will write the image at whatever resolution the image is currently being 
  185. displayed with.  This is contrasted with the resolution that the image is 
  186. stored in memory as.  See Viewing Strategies  for details. 
  187.  
  188. The second option is to Save at Low Priority.  Since JoeView is multithreaded 
  189. you can save a file and while it is being written to disk, you can go ahead 
  190. (yippy!) and start load a different image.  Low priority will write the current 
  191. file a little slower (in theory anyway) so that you (or other processes) can 
  192. use the CPU to do more important things, like loading/looking at another image. 
  193. (See the discussion about Low Priority in the table of contents).  Only one 
  194. image can be saved at a time.  The menu command to save an image will be 
  195. inaccessible until JoeView has finished saving the current file.  During the 
  196. time an image is being saved the border of JoeView will turn red or blue 
  197. depending on whether JoeView is the active application.  When the save is 
  198. complete, JoeView will return to its default border colors.  In this way you 
  199. will know when a file save is complete.  If you try and exit JoeView before a 
  200. save is finished, you will get a warning message and the option of finishing 
  201. the save before termination. 
  202.  
  203. The third option is Iconify which will create an icon version of the image and 
  204. make it the icon for the file.  This way you get an image that is just big 
  205. enough for you to get an idea of what the file is like.  See the iconify 
  206. description for important details.  When iconify is selected here, you do not 
  207. get to use a cropping rectangle to indicate what area of the image becomes the 
  208. icon, the whole image is used. 
  209.  
  210. Colors  The colors option will cause the image to be saved in the appropriate 
  211. number of indicated colors.  The saved imaged is affected, but the current 
  212. image will remain unchanged. 
  213.  
  214.  
  215. ΓòÉΓòÉΓòÉ 2.2.3. Slide Show ΓòÉΓòÉΓòÉ
  216.  
  217. Slide Show is used to display a series of images, either a new image is 
  218. displayed after a certain amount of time or after a certain signal is given 
  219. (manual mode).  There are three ways to start a slide show.  One is to use the 
  220. Slide Show option.  Two is to drag a JoeView slide show file onto JoeView or to 
  221. open such a file with the Open File dialog.  Three is to drag and drop multiple 
  222. files onto JoeView. 
  223.  
  224. The Drive listbox changes the current drive. 
  225.  
  226. Quick Dir is explained elsewhere. 
  227.  
  228. Directory is a listbox of the current directory.  Selecting an item in this 
  229. listbox will cause a change to that directory. 
  230.  
  231. Note:  Selecting the current directory will deselect all the files highlighted 
  232. in the Files listbox. 
  233.  
  234. The basic idea is to select a file that you want included in the display. You 
  235. can select a specific file by clicking on it in the File list box.  You may 
  236. select multiple files at one time.  A file is selected when it is highlighted. 
  237.  
  238. Note:  If you double click on a file, it is immediately selected into the 
  239. Selected Files listbox. 
  240.  
  241. If you have mistakenly highlighted a file, clicking on it again will 
  242. de-highlight it.  In addition to going after individual files in the Files 
  243. listbox, you may use any or all of the four buttons located above it.  *.gif 
  244. will highlight all files that have the .gif extension.  Similar for *.jpg while 
  245. *.* selects everything.  The Mask-> button will take whatever you have entered 
  246. in the listbox to its right and use it for finding files.  You DO NOT use wild 
  247. card symbols here (*, ?). 
  248.  
  249. Example:  Using .gif as the mask would highlight all files that have .gif in 
  250. them.  This would include 
  251. JoeView.gif 
  252. myfile.old.gif 
  253. 1.gif.jpg 
  254. Using t as the mask would select any file with a t in it. 
  255.  
  256. Once you have highlighted a file, hitting the Add-> button will select it into 
  257. the Selected Files listbox. The files listed there are the ones that will be 
  258. used in the actual slide show. 
  259.  
  260. If you have decided that you don't want to include a file that is listed in the 
  261. Selected Files listbox, highlight it and use the <-Remove button to eliminate 
  262. it. 
  263.  
  264. Note:  You can select multiple copies of the same file into the Selected Files 
  265. listbox. 
  266.  
  267. The Start button will begin the slide show. 
  268.  
  269. There are two additional buttons, Save and Load.  These are for storing and 
  270. retrieving a SlideShow file selection.  When a Slide Show file is saved, all 
  271. the files listed and the current Slide Show options are stored.  The default 
  272. extension for the file created is .sls but any file name can be used.  When 
  273. loading a file, all entries are placed into the selected listbox, including any 
  274. that are already there.  The Slide Show options are updated to those that were 
  275. in the file if any existed.  You can also start a Slide Show by selecting a 
  276. Slide Show file from the File Open Dialog or by dragging and dropping such a 
  277. file onto the JoeView icon or dragging and dropping multiple files onto 
  278. JoeView. 
  279.  
  280. There are three options that can be selected without using the Options button. 
  281. They are: Timed vs Manual, and Loop.  All three can be modified from the dialog 
  282. brought up by using the Options button. The Options button brings up a more 
  283. complete set of options than those displayed here.  See SlideShow Options. 
  284.  
  285. Be aware that you can modify your selected options even when SlideShow is 
  286. running by selecting Options off the Main Menu. 
  287.  
  288. Once SlideShow begins, two additional options will appear on the Main Menu that 
  289. exist only when you are running SlideShow.  One is Pause SlideShow and the 
  290. other is Stop SlideShow.  Pause will temporarily halt the slide show, thus 
  291. freeing the CPU for other things.  Once selected, this command will change to 
  292. Restart SlideShow. 
  293.  
  294. Note:  When JoeView is minimized the SlideShow will pause after the next image 
  295. has been read in. 
  296.  
  297. Stop SlideShow will stop the slide show.  The slide show will not stop in the 
  298. middle of reading a file, so if a file is currently being loaded, JoeView will 
  299. complete the load before ending the slide show. 
  300.  
  301. Manual Mode:  The next image is displayed when you double click with the left 
  302. mouse button on the current image or hit the N key. 
  303.  
  304. Note:  You can skip ahead to the next image in Timed mode by double clicking 
  305. with the left mouse button or hitting the N key. 
  306.  
  307.  
  308. ΓòÉΓòÉΓòÉ 2.2.3.1. SlideShow Options ΓòÉΓòÉΓòÉ
  309.  
  310. You can specify the Time interval between images being displayed.  This field 
  311. is ignored if you select manual mode.  The actual time interval is calculated 
  312. from the time the most recent image is displayed until the next image will 
  313. start to be read.  Because of time it take to read an image, the actual 
  314. interval between image displays may be quite different than that requested. 
  315.  
  316. There are four different ways of having the image displayed.  The first two are 
  317. grouped with the ability to force them not to change their window size.  The 
  318. fixed window size option does not affect the other two options.  Both Keep True 
  319. Aspect Ratio and Aspect Ratio can Distort will resize up to the size of the 
  320. screen with each new file load unless Fixed Window Size is specified. Keep True 
  321. Aspect Ratio will always display the image in its correct height vs width 
  322. ratio.  If Fixed Window Size is selected, the image may be padded with black 
  323. space on the sides or top and bottom as needed. Aspect Ratio can Distort will 
  324. resize the window to the correct size if Fixed Window Size if NOT selected. 
  325. Any subsequent resizes of the current image will force the image to fit inside 
  326. the window.  If Fixed Window Size is selected, the image will always fit 
  327. exactly into the window. 
  328.  
  329. The alternative two display options are size limited.  Auto Resize with 
  330. Constant Width will always keep the image at the current width of the window, 
  331. small images will expand appropriately while large ones will shrink.  The upper 
  332. left corner of the window is considered fixed, while the base is allowed to 
  333. float.  In this way the window will resize (as far down as the bottom of the 
  334. screen) to keep the aspect ratio correct. If the correct aspect ratio cannot be 
  335. achieved because the image would be too large, the image width will be padded. 
  336. Auto Resize with Constant Height is similar except the height of the window 
  337. will not change.  Again, the upper left corner is considered fixed and will not 
  338. be moved by JoeView.  The window will expand to the far right side of the 
  339. screen if needed. 
  340.  
  341. The Loop option will cause the slide show to begin over again once all the 
  342. images have been cycled through. 
  343.  
  344. Randomize files will cause the slide show images to appear in a random order, 
  345. otherwise they appear in the order listed in the Selected Files listbox shown 
  346. in the SlideShow dialog. 
  347.  
  348. Note:  The file list is randomized but no effort is made to make sure all files 
  349. are shown when the list is gone through, nor is the same file prevented from 
  350. being shown multiple times.  The only guarantee is that the correct number of 
  351. files will be shown during each cycle.  (cycle = 1 if Loop is not selected). 
  352.  
  353. You can also specify whether you want the Slide Show to run at low priority. 
  354. This way your other applications will not be as affected during a file read. 
  355. See the discusstion about Low Priority in the table of contents. 
  356.  
  357. Any of these options can be changed while the SlideShow is running.  Use the 
  358. Options command on the Main Menu once the slide show is started. 
  359.  
  360.  
  361. ΓòÉΓòÉΓòÉ 2.2.4. Printing ΓòÉΓòÉΓòÉ
  362.  
  363. So far printing has shown to be a hit and miss operation.  Some images come out 
  364. OK, while others distort the colors.  You may find that images will printout 
  365. better if you map the colors into the system colors first.  On black and white 
  366. printers doing a black and white dither may yield better results and similarly, 
  367. you may want to convert your image to grayscale before printing. 
  368.  
  369. Printing is not multi-threaded (so I'm lazy) so give it some time to complete. 
  370.  
  371. The hard part about printing it to do so without distorting your image 
  372. inadvertently.  This is where the Fixed radio buttons come in.  Basically, you 
  373. choose what part of the picture will remain constant.  Usually you will want to 
  374. make the image size constant, but thats up to you. 
  375.  
  376. The Distortion of apect ratio tells you how much your image is being squished 
  377. because of the margins you have called for.  Basically, 0 means that your image 
  378. will print true, while positive values indicate the sides are squished in, 
  379. while a negative value means the top is squished down. 
  380.  
  381. You select a printer by clicking on the appropriate printer name shown in the 
  382. Printers listbox.  Double clicking on the printer will allow you to edit its 
  383. defaults.  In addition, you can check the EPS (Encapsulated Postscript) 
  384. checkbox. This will modify the Printing dialog box, allowing you to enter a 
  385. filename and also choose whether to use RLE encoding (compress) on the file and 
  386. or a preview section for the file created.  The code to create an EPS file is 
  387. based on work by John Bradley of The University of Pennsylvania. 
  388.  
  389.  
  390. ΓòÉΓòÉΓòÉ 2.2.5. Iconify & UnIconify ΓòÉΓòÉΓòÉ
  391.  
  392. This little puppy allows you to associate a miniature version of your image or 
  393. part of your image with the image file.  The icon is placed in the extended 
  394. attributes of the file and adds about 5K to the file length.  When you open the 
  395. drives application, all the images that you have iconified will have little 
  396. itsy-bitsy versions of themselves displayed.  The icon is stored at a 
  397. resolution of 56 by 56, but the resolution that it will be displayed at is a 
  398. function of your screen resolution.  For instance, if you use a 640 by 480 
  399. screen, icons are displayed at 32 by 32, while 1024x768 screens get icons of 40 
  400. by 40. 
  401.  
  402. The icon information is also displayed when you use the "I" key on the open 
  403. file dialog.  This will expand the icon to display at 100 by 100. 
  404.  
  405. Normally the entire image is used to make the icon, but if a cropping rectangle 
  406. is present only that part of the image will be used. 
  407.  
  408. UnIconify will delete the icon information from the image file. 
  409.  
  410.  
  411. ΓòÉΓòÉΓòÉ 2.2.6. Pipe Me Baby ΓòÉΓòÉΓòÉ
  412.  
  413. This was a failed attempt to use named pipes to communicate with other 
  414. programs. Instead of using pipes it uses temporary files, and so in either case 
  415. the use is transparent to both you and the other program. 
  416.  
  417. The option is designed to allow the user to access the programs bundled under 
  418. the PbmPlus logo.  These utilities operate on PBM style files and do a wide 
  419. variety of operations.  The utilities can be downloaded from many sources and 
  420. they are free (to my knowledge).  It is your problem whether the utilities work 
  421. or not.  The program does not have to be any of these utilities, any program 
  422. that takes a PBM style file in and outputs a PBM style file will work.  The 
  423. program can use Stdio for file manipulation. 
  424.  
  425. Defined Pipes:  JoeView stores previously defined pipes (programs) in a file 
  426. called joeview.pip which is stored in the same directory as your exe file. 
  427. This is a list of the contents of the file.  It is saved using the Save button. 
  428.  
  429. Save Button:  Saves whatever is listed in the Defined Pipes list box into the 
  430. joeview.pip file. 
  431.  
  432. Delete Button:  Deletes whatever item is selected in the Defined Pipes list 
  433. box. 
  434.  
  435. Select Button: Copies whatever item is selected in the Defined Pipes list box 
  436. into the Pipe to Run list box. 
  437.  
  438. Run Button: Runs whatever file is listed in the Pipe to Run entry field. 
  439.  
  440. PPM, PGM, PBM, Raw specify what type of PBM format file to input into pipe. 
  441.  
  442. Pipe to Run is the program to run and its arguments.  The program must be the 
  443. full file name and extension, i.e. c:\os2\pgmoil.exe.  In addition, any command 
  444. line options should be listed here as well.  If you want to pass file names 
  445. (input or output) as arguments to the program use $in and $out as holders for 
  446. those arguments.  For example, if your program needs both an input and output 
  447. file specified on the command line use: 
  448.  
  449. c:\os2\pgmoil.exe $in $out 
  450.  
  451. JoeView would replace $in and $out with the appropriate temporary files.  If 
  452. your program uses Stdio, just leave out either $in and/or $out as appropriate. 
  453. The program will appear in a cropped window in the lower left corner of your 
  454. screen while it is running.  BTW, the temp files will be located in your the 
  455. directory defined by TEMP or TMP and the files will have the format 
  456. joepipe.(three random letters).  If you shut down JoeView in the middle of 
  457. something these files might remain.  You should check periodically and delete 
  458. any that exist. 
  459.  
  460.  
  461. ΓòÉΓòÉΓòÉ 2.3. Edit ΓòÉΓòÉΓòÉ
  462.  
  463. The commands listed under this heading will typically permanently change your 
  464. image, with the exception of Copying to the Clipboard (Copy...). 
  465.  
  466.  
  467. ΓòÉΓòÉΓòÉ 2.3.1. Copy and Paste ΓòÉΓòÉΓòÉ
  468.  
  469. The pathway to the copy and paste command. 
  470.  
  471.  
  472. ΓòÉΓòÉΓòÉ 2.3.1.1. Copy... ΓòÉΓòÉΓòÉ
  473.  
  474. Copy to the clipboard.  The image will be copied to the system's clipboard. 
  475. You will be asked whether you want to copy the image's palette also. Some 
  476. applications don't look for a palette and so the image will get really 
  477. distorted if you tell JoeView to include the palette.  If you don't copy in a 
  478. palette, JoeView will convert the image to the system colors using Distance 
  479. Method.  The system colors are pretty blah so if you want the copied image to 
  480. be really good, convert it to the system's palette first by using FS Dither 
  481. before the copy. 
  482.  
  483. If a cropping rectangle is present, only the image inside the cropping 
  484. rectangle and under the the cropping lines gets copied. 
  485.  
  486.  
  487. ΓòÉΓòÉΓòÉ 2.3.1.2. Paste ΓòÉΓòÉΓòÉ
  488.  
  489. Paste from the clipboard.  Whatever image JoeView is currently displaying will 
  490. be lost. 
  491.  
  492.  
  493. ΓòÉΓòÉΓòÉ 2.3.1.3. Paste Into From Clipboard (or File) ΓòÉΓòÉΓòÉ
  494.  
  495. This feature allows you to paste whatever is currently in clipboard into 
  496. whatever image currently is being displayed by JoeView.  A locating rectangle 
  497. is used to allow you to position the clipboard image to the spot that you want 
  498. it.  The clipboard image must be smaller dimensionally than the image currently 
  499. being viewed in JoeView.  You can resize the clipboard image to be whatever 
  500. size you want, but you cannot change the aspect ratio. 
  501.  
  502. The alternate form of this command is to paste directly from another file. 
  503. This has the advantage of not being limited by the clipboard's color palette. 
  504.  
  505. Both of these command operate the same, with the exception that Pasting from a 
  506. file first requires you to specify a file. 
  507.  
  508.  
  509. ΓòÉΓòÉΓòÉ 2.3.2. Colors ΓòÉΓòÉΓòÉ
  510.  
  511. Color crunching stuff.  Toto, this doesn't look like Kansas! 
  512.  
  513.  
  514. ΓòÉΓòÉΓòÉ 2.3.2.1. Control Center ΓòÉΓòÉΓòÉ
  515.  
  516. This is where the action takes place for color manipulations.  Many of the 
  517. manipulations that can be executed here can also be launched from the menu 
  518. system or via hot-keys, but everything accessed via this dialog can be undone. 
  519.  
  520. Basically you have two ways of manipulating the image's colors in the broadest 
  521. sense, by changing the Red Green and Blue (RGB) components of the image's 
  522. colors and by changing the Hue Saturation and Value (intensity) or HSV of the 
  523. image.  The method of manipulation is chosen by the radio button HSV or RGB. 
  524. The values of RGB and HSV are stored separately so the values in one set of 
  525. spin buttons will not correspond to the other set. 
  526.  
  527. The Dynamic check box will cause the changes you are making to the various 
  528. sliders to be applied as you make the changes.  If you do not have the dynamic 
  529. box checked, you will need to hit the Test button to see the effects of your 
  530. changes. Dynamic can be sluggish, but that's why you bought a Pentium right? 
  531.  
  532. The Forget It is equivalent to cancel and will restore the image to its 
  533. original state before closing the dialog.  Make it So  applies the changes 
  534. permanently to the image. And just for your information, yes I do watch ST:TNG 
  535. and I'm proud damn it, proud I say,  to do so! 
  536.  
  537. Reset will reset the image to its original state. 
  538.  
  539. Other manipulations can be run from here by selecting the appropriate button. 
  540. They are 
  541.  
  542. o Grayscale 
  543. o Reduce Colors 
  544. o BW Dither 
  545. o FS Dither 
  546. o Distance Method 
  547. o Smooth 
  548.  
  549.  
  550. ΓòÉΓòÉΓòÉ 2.3.2.2. Brighten ΓòÉΓòÉΓòÉ
  551.  
  552. Colors are all shifted up to brighter colors.  Will eventually turn entire 
  553. image white.  If you shift colors repeatedly (all white in the extreme) you 
  554. will not be able to undo using the Darken feature.  This is accessed via the 
  555. hot-key "B". 
  556.  
  557.  
  558. ΓòÉΓòÉΓòÉ 2.3.2.3. Darken ΓòÉΓòÉΓòÉ
  559.  
  560. Colors are all shifted down to darker colors.  Will eventually turn entire 
  561. image black.  Can be undone with Brighten if not taken too far.  This is 
  562. accessed via the hot-key "D". 
  563.  
  564.  
  565. ΓòÉΓòÉΓòÉ 2.3.2.4. BW Dither ΓòÉΓòÉΓòÉ
  566.  
  567. Turns current image into a black and white image. 
  568.  
  569.  
  570. ΓòÉΓòÉΓòÉ 2.3.2.5. Reduce Colors ΓòÉΓòÉΓòÉ
  571.  
  572. You specify the number of colors you want the image to have.  Numbers greater 
  573. than the current number of colors the image uses will do nothing and values 
  574. less than 2 are not allowed.  This function is usually fast but can be a little 
  575. time consuming with large pictures. 
  576.  
  577.  
  578. ΓòÉΓòÉΓòÉ 2.3.2.6. Go Grayhound ΓòÉΓòÉΓòÉ
  579.  
  580. Converts the colors used in the image to grayscale. 
  581.  
  582.  
  583. ΓòÉΓòÉΓòÉ 2.3.2.7. System Colors ΓòÉΓòÉΓòÉ
  584.  
  585. There are two different ways of converting from the image's current color 
  586. scheme to that used by your OS2 system.  They are Floyd Steinberg Dithering (FS 
  587. Dither) and the Distance Method. 
  588.  
  589.  
  590. ΓòÉΓòÉΓòÉ 2.3.2.7.1. FS Dither ΓòÉΓòÉΓòÉ
  591.  
  592. Floyd Steinberg Dithering of your image into the system's palette.  The 
  593. dithering method is based on ppmquant.c by Jef Poskanzer.  This produces 
  594. incredible results, sometimes it is hard to distinguish your original image 
  595. from the dithered.  Of course the penalty is that it is EXTREMELY CPU 
  596. intensive.  A VGA size image takes several minutes on my 33Mhz 486, your 
  597. mileage may vary.  The results are much better than using the Distance Method. 
  598.  
  599. Note that the CPU load is reduced to almost nothing if you bothered to create 
  600. the JoeView.dth file.  This file preloads most of the calculations and makes 
  601. the whole thing fly.  This file is created automatically whenever JoeView needs 
  602. to create the JoeView.pal file. 
  603.  
  604. This option is useful when copying to the clipboard or creating wallpaper or 
  605. lockup screen images. 
  606.  
  607.  
  608. ΓòÉΓòÉΓòÉ 2.3.2.7.2. Distance Method ΓòÉΓòÉΓòÉ
  609.  
  610. Converts your image's palette into the system's default palette.  Much faster 
  611. than FS Dither but noticeably lower quality. 
  612.  
  613. This option is useful when copying to the clipboard or creating wallpaper or 
  614. lockup screen images. 
  615.  
  616.  
  617. ΓòÉΓòÉΓòÉ 2.3.3. Resize ΓòÉΓòÉΓòÉ
  618.  
  619. Resizing changes the resolution of the image (in memory).  This will effect 
  620. that actual image, not just the displayed image.  See  Viewing Strategies for 
  621. more information.  Remember that how you have specified that the image be 
  622. displayed may make it appear that this operation has done nothing when it 
  623. actually has.  For example, you may have the window size fixed. 
  624.  
  625. You can do +-10% increments or size the image to fit a particular screen size, 
  626. such as 640 x 480, 800 x 600, and 1024 x 768 or the resolution that the image 
  627. is currently being displayed at.  In addition you can specify the actual 
  628. dimensions to use by using the Custom command. 
  629.  
  630.  
  631. ΓòÉΓòÉΓòÉ 2.3.4. Cropping ΓòÉΓòÉΓòÉ
  632.  
  633. Using the left mouse button, select an area of the image which you wish to 
  634. retain.  Using crop will eliminate all area's outside the indicated rectangle. 
  635. The change affects the image, unlike  Zoom. 
  636.  
  637. You must  be aware that the image may be being displayed with padded sides. 
  638. The padded sides exist for display only and so cannot be cropped away.  This 
  639. could happen if you manually resized the window after JoeView originally 
  640. displayed it. 
  641.  
  642.  
  643. ΓòÉΓòÉΓòÉ 2.3.5. Auto Cropping ΓòÉΓòÉΓòÉ
  644.  
  645. Auto cropping attempts to use a little bit of color comparisons to estimate 
  646. which parts of the picture need to be croppped. 
  647.  
  648. Default  This method looks at the color of the pixel in the lower left corner 
  649. of the image. It then compares all other colors on each side of the image to 
  650. this color.  If one side's color all match this "magic" color, that side is 
  651. deleted.  This method progresses until a new color is encountered. 
  652.  
  653. Strict, Average, Loose, and Custom: All of these methods work on the same 
  654. underlying principle.  A group of colors are identified and used to compare a 
  655. side of the image to.  The group of "magic" colors will be taken from the lower 
  656. left side of the image unless a cropping rectangle has been selected, in which 
  657. case the "magic" colors are taken from there.  A maximum of 10 colors will be 
  658. determined, only one will be used if a solid color area is input.  A percentage 
  659. hit test is used to determine if a side of the image should be deleted.  For 
  660. instance, if you have 3 "magic" colors and if half the pixels of the side being 
  661. examined have these colors a hit of 50% would be recorded.  This hit percentage 
  662. is compared to the allowed value to determine whether or not to delete the 
  663. side.  The Strict, Average, and Loose options correlate to a 95%, 85%, and 75% 
  664. hit rates.  You can enter your own percentage using the Custom command. 
  665.  
  666. Note:  If nothing seems to be happening, you might be using too tight a 
  667. percentage, but it also might be too loose.  If the percentage is way too 
  668. loose, too much of the picture gets cropped and JoeView assumes that this isn't 
  669. what is desired and so does no cropping. 
  670.  
  671.  
  672. ΓòÉΓòÉΓòÉ 2.3.6. Smooth ΓòÉΓòÉΓòÉ
  673.  
  674. With Use 9 Points selected, this does a smoothing of the image by taking a 
  675. given pixel and then all of its neighbors, giving 9 total pixels.  Depending on 
  676. the weighting factor, the RGB components of these pixels are combined for a new 
  677. value for the given pixel.  A weighting of 100 would mean that the given pixel 
  678. influences the created pixel the most, in fact to the exclusion of the 
  679. neighboring pixels so there is no effect.  At the opposite extreme a weight of 
  680. 0 means all the pixels get averaged in equally.  This tends to blur the image 
  681. somewhat. 
  682.  
  683. If 9 Points is not selected, 4 points are used.  One point and three neighbors. 
  684. This tends to do a wave sort of smoothing.  No weighting is used. 
  685.  
  686.  
  687. ΓòÉΓòÉΓòÉ 2.4. Manipulations ΓòÉΓòÉΓòÉ
  688.  
  689. This menu command does nothing but bring down another pull down menu.  The 
  690. commands on that menu are used for changing or manipulating the current image. 
  691. Many have keyboard equivalents.  All these commands can be undone by using 
  692. another command or the same command twice, i.e. using mirror twice. 
  693.  
  694.  
  695. ΓòÉΓòÉΓòÉ 2.4.1. Flip ΓòÉΓòÉΓòÉ
  696.  
  697. Depending on the option selected, the current image is flipped (mirrored) 
  698. either vertically or horizontally. 
  699.  
  700.  
  701. ΓòÉΓòÉΓòÉ 2.4.2. Rotate ΓòÉΓòÉΓòÉ
  702.  
  703. Rotation is either clockwise or counterclockwise.  Rotation takes place in 90 
  704. degree increments. The easiest way to undo the affects of this command is to 
  705. pick up your monitor and rotate it 90 degrees in the opposite direction of the 
  706. way you started.  But you didn't come all this way just to read that, did you? 
  707.  
  708.  
  709. ΓòÉΓòÉΓòÉ 2.4.3. Invert Colors ΓòÉΓòÉΓòÉ
  710.  
  711. The current image colors are inverted.  For example, black becomes white, etc. 
  712. The effect is pretty interesting, just like taking large amounts of 
  713. hallucinogens but without the high cost. 
  714.  
  715.  
  716. ΓòÉΓòÉΓòÉ 2.4.4. Zooming ΓòÉΓòÉΓòÉ
  717.  
  718. Zooming allows the user to zoom in on a particular area of the image.  That 
  719. area is first selected by using the left mouse button.  After a zoom has been 
  720. performed, the menu option will change to include a Zoom Out option.  The 
  721. original image is unaffected by zooming, as opposed to  Cropping .  You can 
  722. keep on zooming in to your hearts content, but Zooming Out goes all the back to 
  723. the original image. 
  724.  
  725.  
  726. ΓòÉΓòÉΓòÉ 2.5. Options ΓòÉΓòÉΓòÉ
  727.  
  728. This will bring up one of two possible menus depending on whether or not you 
  729. are currently running a SlideShow .  The slideshow options can be looked at in 
  730. the Slide Show Options section.  You check or fill in the various selections as 
  731. you see fit and then select the action you would like with one of the four 
  732. buttons on the botton of the dialog.  For the conventional options menu there 
  733. is a notebook and four buttons at the bottom of the dialog. Those buttons are: 
  734.  
  735. o Apply (Options become active, but are not saved) 
  736. o Save (Options saved but not applied) 
  737. o Cancel (duh!) 
  738. o Help (Very complicated button, will be explained in your senior year.) 
  739.  
  740.  
  741. ΓòÉΓòÉΓòÉ 2.5.1. Palette Options ΓòÉΓòÉΓòÉ
  742.  
  743. Three possible options are available regarding palettes. 
  744.  
  745. First you can Overide System Colors  This allows JoeView to cream the system 
  746. colors. These are the colors used for dialogs, menu text, etc.  There are not 
  747. that many of them, you can figure out how many unique ones you have by looking 
  748. at the  Image Information Dialog colors field.  You will often see "got 245 out 
  749. of 256". Subtract the first number from 256 to get the number of system colors. 
  750.  
  751. The colors that the application can't place are mapped into the closest ones 
  752. the system will display. Usually the increase in image quality is 
  753. insignificant, but you might use this option if you are not gonna look at other 
  754. applications while JoeView is running. 
  755.  
  756. Next come Aggressive on Palette JoeView loves to fight for the colors it is 
  757. using.  If another application starts changing the palette this option will 
  758. cause JoeView to try and change the colors back every now and then.  If you are 
  759. working with another application it can get annoying having the colors flash 
  760. and the system will slow down somewhat. 
  761.  
  762. You can use a hot key (Alt A) to cycle this on or off.  When you do so JoeView 
  763. will beep a high tone when you turn it on, a low tone when it is off. 
  764.  
  765. Even while Aggresive on Palette is off whenever you make JoeView the active 
  766. application the palette will become reset to the correct colors. 
  767.  
  768. The above two options only affect how the image is displayed.  The actual 
  769. colors that make up the image in memory are not affected by these choices. 
  770. Display Using System Palette actually changes the colors that make up the 
  771. image.  The option will cause the image that is loaded to be diplayed using 
  772. only the colors that the system has in its default palette.  The method used to 
  773. convert to the system colors is a Floyed Steinberg error diffusion which yields 
  774. pretty good quality and has the advantage is that JoeView will not affect other 
  775. applications by reseting their palettes.  Also, mutlitple versions of JoeView 
  776. can be run and each one will not interfere with the others.  Since this will 
  777. actually change the colors of the image (not just the displayed colors) so 
  778. don't use this to read and then save files if you want a true conversion. 
  779.  
  780.  
  781. ΓòÉΓòÉΓòÉ 2.5.2. Display Options (Window Sizing) ΓòÉΓòÉΓòÉ
  782.  
  783. These are options which apply to how the images are displayed. 
  784.  
  785. Images can be shown so that the window is scaled to reflect the size of the 
  786. image each time it is loaded - this would mean making Fixed Window Size 
  787. unchecked.  With Fixed Window Size on, the window will not resize when a new 
  788. image is loaded. 
  789.  
  790. Scale, keep true perspective means the width to height ratio remains constant. 
  791. The image gets padded with black if the image will not correctly fit into the 
  792. display window.  With Scale perspective can change  you can stretch the image 
  793. to fit the window. 
  794.  
  795.  
  796. ΓòÉΓòÉΓòÉ 2.5.3. Dithering/Quantizing Options ΓòÉΓòÉΓòÉ
  797.  
  798. Actually, this should be called just quantizing, but I can't spell that.  These 
  799. are the different ways that a 24 bit image will be converted down to 8 bits so 
  800. that it can be displayed.  These do not apply to JPEG, which has its own 
  801. options.  These are used on Targas, PBMs, and other formats that might contain 
  802. 24 bit images. The quickest dithering routine is used when smoothing. 
  803.  
  804. o Gray  The fastest way.  Converts image to grayscale.  Good for previewing new 
  805.   pictures. 
  806.  
  807. o Quick The fastest color way.  Not too bad but some image degradations might 
  808.   occur.  Use this one most of the time and you'll be OK.  The others (below) 
  809.   are better but much slower. 
  810.  
  811. o Best Good compromise between speed and quality.  Some mild (Floyd Steinberg) 
  812.   dithering is used. Code based on code by Jef Poskanzer (ppmquant.c - quantize 
  813.   colors). 
  814.  
  815. o Slow  This implements Heckbert's Median Cut algorithm.  The code is hacked 
  816.   from XV by John Bradley of The University of Pennsylvania. Quality in line 
  817.   with Best.  This does a full dither and is quite slow but provides the best 
  818.   results. This is especially true when viewing true 24 bit images (meaning way 
  819.   over 256 colors), this will give you the best conversion down to 8 bit, 
  820.   especially when there are a lot of subtle shade changes. I have hit and miss 
  821.   luck with it.  BTW, this is a little memory intensive and slow.  If you 
  822.   abandon a file read it may not return control immediately to JoeView 
  823.  
  824. Quantizing (reducing down to 256 colors) isn't always needed and it is much 
  825. faster to not have to run a quantizing algorithm.  You have the ability to 
  826. specify whether the image data should be checked to see if it contains more 
  827. than 256 colors.  If the images you will be looking at will mostly/always have 
  828. more than 256 colors you should not do the checking as it will be a waste of 
  829. time.  If the images are almost always 256 colors or less then doing the check 
  830. will save some time. 
  831.  
  832.  
  833. ΓòÉΓòÉΓòÉ 2.5.4. Directories Option ΓòÉΓòÉΓòÉ
  834.  
  835. Where would you like to start looking for images?  Leave blank to start in 
  836. current directory. 
  837.  
  838. For a detailed description of what Quick Directories do see Quick Dir.  In this 
  839. notebook page you type the desired directory into the entry field and then hit 
  840. the add button.  Similarly, select the directory you want to remove and hit the 
  841. del button to remove that information. 
  842.  
  843. For both of these option, JoeView will verify the information is valid before 
  844. exiting the dialog.  If there is a problem you will get an error message and 
  845. have to fix the problem before you can exit. 
  846.  
  847.  
  848. ΓòÉΓòÉΓòÉ 2.5.5. Open Options ΓòÉΓòÉΓòÉ
  849.  
  850. The majority of these settings are described in Open Dialog. 
  851.  
  852. The major option not covered there is the File Mask. This is the value that 
  853. will be loaded into the File Open Dialog File Mask upon startup.  Wild cards 
  854. are valid and you can separate groups by either a space or a ;, for example 
  855. *.bmp;*.gif;*.jpg or *.bmp *.gif *.jpg are both valid. There is a slight speed 
  856. penalty for each additional group. 
  857.  
  858.  
  859. ΓòÉΓòÉΓòÉ 2.5.6. Swapper Option ΓòÉΓòÉΓòÉ
  860.  
  861. Swapper Check is two parts, a check box and a drive entry field.  This was 
  862. added in Version 1.22. When you have checked the check box and you have put a 
  863. valid drive in the drive box (just the letter, no colon) this option becomes 
  864. active.  The drive should be whatever drive your swapper.dat file is on.  What 
  865. this does is that whenever JoeView is going to allocate a large chunk of memory 
  866. (defined as 1 Meg or more) it will query the drive you have indicated for 
  867. available space.  If the available space does not exceed the amount of memory 
  868. requested by at least 4 Megs, then JoeView will give a warning message and the 
  869. opportunity to terminate.  The feature is a preventative step to make sure you 
  870. don't run out of disk space (swap space).  The speed impact is quite small and 
  871. it could really save your butt if you get some stupid tiff file that looks 
  872. pretty small but in reality is 10,000 X 10,000.  Take a test drive by making 
  873. the drive one of your floppies and then reading in a large full color pbm file. 
  874.  
  875.  
  876. ΓòÉΓòÉΓòÉ 2.5.7. Misc Options ΓòÉΓòÉΓòÉ
  877.  
  878. Show Load Progress shows the current status of file loading, basically a 
  879. percentage of image loaded.  Shown in the window title bar.  Some File formats 
  880. may not show this.  When dithering (quantizing) takes place, messages to that 
  881. affect will be displayed in the Title Bar. 
  882.  
  883. Show Image Info on Startup will start the image info dialog upon startup (what 
  884. else did you expect?).  See see Image Infomation. 
  885.  
  886.  
  887. ΓòÉΓòÉΓòÉ 2.6. Image Information ΓòÉΓòÉΓòÉ
  888.  
  889. This command brings up a window that shows information about the currently 
  890. displayed image.  The information consists of: 
  891.  
  892. o The Filename 
  893. o Format of the image file and filesize 
  894. o Resolution of the image in memory 
  895. o Resolution of the image as displayed 
  896. o Distortion and scale of the image (Dist. and Scale) 
  897. o Color information 
  898. o An box that occasionally will show warning messages, you can use the arrow 
  899.   keys if the info isn't all displayed 
  900. o A history list box of manipulations that have been performed on the current 
  901.   image. 
  902.  
  903. The Information Box will remain around as long as JoeView is alive or until the 
  904. Hide button is pressed. 
  905.  
  906. The information categories are pretty self explanatory, but for clarity 
  907. Resolution refers to the resolution of the image as it is currently stored in 
  908. memory, while Display Res. is the resolution that the image is currently being 
  909. displayed at. 
  910.  
  911. The Dist. and Scale category may not be obvious.  The distortion is the ratio 
  912. of the aspect ratio of the image as it is displayed divided by the aspect ratio 
  913. of the image in memory.  Take that number and subtract one from it if it is 
  914. greater than one or if it is less than one invert it and make it negative and 
  915. then add one.  We will call the aspect ratio the width of the image divided by 
  916. its height.  So a distortion of 0 means the image is not being distorted, a 
  917. positive value means your are crushing the top down and a negative value means 
  918. you are squishing the sides in. 
  919.  
  920. Scale is the scale factor of memory versus display.  2 means the display image 
  921. is twice as large as the memory image.  When you are distorting the image, the 
  922. largest scale (width or height) is displayed. 
  923.  
  924.  
  925. ΓòÉΓòÉΓòÉ 2.7. Float ΓòÉΓòÉΓòÉ
  926.  
  927. An interesting little option.  It is on when there is a check mark by this 
  928. entry in the menu.  This causes the main window to stay on top of all other 
  929. application windows. Thus, when you are typing at your word processor, the 
  930. JoeView window will stay on top of the application, but the application will 
  931. still be active, and thus getting keyboard and mouse inputs!  Well, I like it 
  932. anyway.  Slight hit on the old CPU but it doesn't seem too bad.  You can use 
  933. the F key to toggle it on or off. 
  934.  
  935. I have experiened an increased number of crashes (slight) of Wordperfect for 
  936. Windows when I have this option on.  It might be cause a problem with windows 
  937. programs running in seamless mode.  Can't tell for sure. 
  938.  
  939.  
  940. ΓòÉΓòÉΓòÉ 3. Some Hints ΓòÉΓòÉΓòÉ
  941.  
  942. No, the hints aren't here, go in one more level. 
  943.  
  944.  
  945. ΓòÉΓòÉΓòÉ 3.1. Viewing Strategies ΓòÉΓòÉΓòÉ
  946.  
  947. Images are displayed in several ways. Two ways that are always available are 1) 
  948. just a simple, correctly scaled image and 2) an image that starts out scaled, 
  949. but if you resize the window the aspect ratio will change so that the picture 
  950. always fills up the window.  These two types of display can be modified 
  951. somewhat by selecting the fixed window size attribute.  This option will force 
  952. JoeView to not resize the viewing window each time a new file is loaded 
  953. (whether by SlideShow or by File -> Open).  The user can resize the window at 
  954. any time. 
  955.  
  956. The SlideShow offers two addition ways of displaying images.  See SlideShow for 
  957. more information.  In no case however, are sliders ever used. 
  958.  
  959. The most important thing to remember when using JoeView is that the actual 
  960. resolution of the image (the width x height) is not always the same as that 
  961. which it is displayed with.  For example, let's say you are working on a system 
  962. that is limited to a display of 640 by 480 and you try and load an image that 
  963. is 2000 by 2000.  JoeView will resize the image to fit the screen when it 
  964. displays the image to you, but the data representing the image will stay at 
  965. 2000 by 2000.  Any operations (manipulations) that you perform on the image 
  966. will by done on the original image, the 2000 by 2000 one.  Now, let's say you 
  967. use the ReSize command to reduce the image to 640 by 480.  From as far as you 
  968. can tell, nothing will have changed.  This is because the image size is still 
  969. as big as the display can handle.  In reality you have changed the image size 
  970. and if you save the image it will be different than the one you originally 
  971. loaded.  The Image Information option on the main menu will keep you apprised 
  972. of the actual vs displayed resolution of the current image.  When you save a 
  973. file there is the option to save at the currently displayed size, the above 
  974. discussion is why that option exists. 
  975.  
  976.  
  977. ΓòÉΓòÉΓòÉ 3.2. Quick Dir ΓòÉΓòÉΓòÉ
  978.  
  979. An especially useful feature, the Quick Dir listbox is present in several 
  980. different dialogs: 
  981.  
  982. o File Open 
  983. o Slide Show 
  984. o File Save 
  985. o Options 
  986.  
  987. It is only in the Options dialog the Quick Dir listbox can be modified. Aside 
  988. from modifying the Quick Dir listbox, the Options dialog is not affected by it. 
  989. The format for an entry is to have a drive letter and full path 
  990.  
  991. For Example  c:\images\gif, there should not be any trailing slashes.  There is 
  992. a limit of 10 entries that will be remembered. Others will be ignored.  Unused 
  993. entries should consist of blanks. 
  994.  
  995. The basic use of the Quick Dir is to allow the user to quickly access 
  996. frequently used directories. The actual use of the Quick Dir listbox varies 
  997. somewhat depending on the dialog. In the File Open and Slide Show dialogs Quick 
  998. Dir is accessed by using the pull down on the listbox. Doing so will cause the 
  999. current directory and drive to change to that selected in Quick Dir. With the 
  1000. File Save dialog, invoking Quick Dir is the same, but instead of actually 
  1001. changing the drive and directory, just the entry in the name of the file to be 
  1002. saved will be updated.  If you want to change directories in the File Save 
  1003. dialog you will have to use the drive and directory listboxes. 
  1004.  
  1005.  
  1006. ΓòÉΓòÉΓòÉ 4. File Formats ΓòÉΓòÉΓòÉ
  1007.  
  1008. A variety of file formats are supported.  See each individual one for more 
  1009. info. 
  1010.  
  1011. You should be aware of some limitations when doing conversions between 
  1012. different file formats or if you are constantly reading and saving the same 
  1013. image over and over again (See JPEG).  When JoeView reads a file, no matter 
  1014. what the original format, it is stored as an 8 bit image (256 colors max). This 
  1015. means that if you read in a JPEG, TARGA, Sun Raster, or PPM image there exists 
  1016. the possibility that the original file is made up of more than 256 colors and 
  1017. so JoeView will reduce the colors down to 256.  So, if your goal is to convert 
  1018. a 24 bit image stored in TARGA format to PPM there is a very good chance that 
  1019. your image will suffer a loss in quality.  There are utilities available to do 
  1020. true 24 bit conversions if you are really concerned.  Most likely the losses 
  1021. will be quite small. 
  1022.  
  1023. Eight bit formats will not suffer any degradation. 
  1024.  
  1025.  
  1026. ΓòÉΓòÉΓòÉ 4.1. JPEG ΓòÉΓòÉΓòÉ
  1027.  
  1028. The JPEG reading and writing code is based on the following people's work: 
  1029.  
  1030. The Independent JPEG Group's JPEG software
  1031. ==========================================
  1032.  
  1033. This software is the work of Tom Lane, Philip Gladstone, Luis Ortiz,
  1034. Lee Crocker, Ge' Weijers, and other members of the Independent JPEG Group.
  1035.  
  1036. LEGAL ISSUES
  1037. ============
  1038.  
  1039. The authors make NO WARRANTY or representation, either express or implied,
  1040. with respect to this software, its quality, accuracy, merchantability, or
  1041. fitness for a particular purpose.  This software is provided "AS IS", and you,
  1042. its user, assume the entire risk as to its quality and accuracy.
  1043.  
  1044. This software is copyright (C) 1991, 1992, Thomas G. Lane.
  1045. All Rights Reserved except as specified below.
  1046.  
  1047. Permission is hereby granted to use, copy, modify, and distribute this
  1048. software (or portions thereof) for any purpose, without fee, subject to these
  1049. conditions:
  1050. (1) If any part of the source code for this software is distributed, then this
  1051. README file must be included, with this copyright and no-warranty notice
  1052. unaltered; and any additions, deletions, or changes to the original files
  1053. must be clearly indicated in accompanying documentation.
  1054. (2) If only executable code is distributed, then the accompanying
  1055. documentation must state that "this software is based in part on the work of
  1056. the Independent JPEG Group".
  1057. (3) Permission for use of this software is granted only if the user accepts
  1058. full responsibility for any undesirable consequences; the authors accept
  1059. NO LIABILITY for damages of any kind.
  1060.  
  1061. Permission is NOT granted for the use of any IJG author's name or company name
  1062. in advertising or publicity relating to this software or products derived from
  1063. it.  This software may be referred to only as "the Independent JPEG Group's
  1064. software".
  1065.  
  1066. We specifically permit and encourage the use of this software as the basis of
  1067. commercial products, provided that all warranty or liability claims are
  1068. assumed by the product vendor.
  1069. ==================
  1070.  
  1071. The following is pretty much stolen verbatim for the JPEG information that is 
  1072. supplied with the JPEG libraries. 
  1073.  
  1074. The Quality spin button lets you trade off compressed file size against the 
  1075. quality of the saved image: the higher the quality setting, the larger the JPEG 
  1076. file, and the closer the output image will be to the original input.  Normally 
  1077. you want to use the lowest quality setting (smallest file) that decompresses 
  1078. into something visually indistinguishable from the original image.  For this 
  1079. purpose the quality setting should be between 50 and 95; the default of 75 is 
  1080. often about right.  If you see defects at quality 75, then go up 5 or 10 counts 
  1081. at a time until you are happy with the output image.  (The optimal setting will 
  1082. vary from one image to another.) Quality 100 will generate a quantization table 
  1083. of all 1's, eliminating loss in the quantization step (but there is still 
  1084. information loss in subsampling, as well as roundoff error). This setting is 
  1085. mainly of interest for experimental purposes.  Quality values above about 95 
  1086. are NOT recommended for normal use; the compressed file size goes up 
  1087. dramatically for hardly any gain in output image quality. In the other 
  1088. direction, quality values below 50 will produce very small files of low image 
  1089. quality.  Settings around 5 to 10 might be useful in preparing an index of a 
  1090. large image library, for example.  Try quality 2 (or so) for some amusing 
  1091. Cubist effects.  (Note: quality values below about 25 generate 2-byte 
  1092. quantization tables, which are considered optional in the JPEG standard. Some 
  1093. commercial JPEG programs may be unable to decode the resulting file.) 
  1094.  
  1095. Smooth Factor: Smooth the input image to eliminate dithering noise.  The value 
  1096. selected, ranging from 1 to 100, indicates the strength of smoothing.  0 will 
  1097. mean to not use smoothing and can be used instead of the check button.  The 
  1098. Smooth option filters the currently displayed image to eliminate fine-scale 
  1099. noise. This is often useful when saving files as JPEG: a moderate smoothing 
  1100. factor of 10 to 50 gets rid of dithering patterns in the input file, resulting 
  1101. in a smaller JPEG file and a better-looking image.  Too large a smoothing 
  1102. factor will visibly blur the image, however. 
  1103.  
  1104. Optimization of entropy encoding parameters. Without this, default encoding 
  1105. parameters are used. Optimize usually makes the JPEG file a little smaller, but 
  1106. JoeView runs somewhat slower and needs much more memory.  Image quality and 
  1107. speed of decompression are unaffected by optimize. It's also a win when you are 
  1108. using low quality settings to make very small JPEG files; the percentage 
  1109. improvement is often a lot more than it is on larger files. 
  1110.  
  1111. When reading a JPEG, there are five mutually exclusive option that deals with 
  1112. quantization of the colors (converting from a 24 to 8 bit image).  Your options 
  1113. are: 
  1114.  
  1115. o Quick  The one pass color quantization.  The fastest of the color 
  1116.   quantizings, but probably will result in a noticeably inferior image.  Good 
  1117.   for a quick look. 
  1118.  
  1119. o Slow  This implements Heckbert's Median Cut algorithm.  The code is hacked 
  1120.   from XV by John Bradley of The University of Pennsylvania. Quality in line 
  1121.   with Best.  Very slow compared to the builtin JPEG quantizer.  For most jpegs 
  1122.   it will probably give only minor quality improvements. Make your own 
  1123.   judgment.  It is not part of the regular JPEG libraries. 
  1124.  
  1125. o Best  Floyd-Steinberg dithering is used.  Based on ppmquant.c by Jef 
  1126.   Poskanzer. 
  1127.  
  1128. o BuiltIn  Uses the JPEG libraries built in two pass quantizer.  Probably the 
  1129.   best to use overall.  Seems pretty fast. 
  1130.  
  1131. o Gray  Hands down the fastest way to look at a JPEG.  Results in gray colors 
  1132.   only, but good way to take a quick look. 
  1133.  
  1134.  
  1135. ΓòÉΓòÉΓòÉ 4.2. Bitmaps ΓòÉΓòÉΓòÉ
  1136.  
  1137. The two important types of bitmaps supported are Windows and OS2 style bitmaps. 
  1138. JoeView should read any of these type of bitmaps (RLE and non-RLE) with the 
  1139. following caveats: 
  1140.  
  1141. o Black and White images that are stored by using modified Huffman encoding 
  1142.   cannot be read. 
  1143.  
  1144. o OS2 allows the use of halftones and such.  JoeView does not read these but I 
  1145.   have never even seen one. 
  1146.  
  1147. o Should read 24 bit bitmaps OK. 
  1148.  
  1149. Bitmaps can be saved in either RLE on uncompressed format.  The RLE encoding 
  1150. scheme is fairly brain dead and will actually increase the size of the file for 
  1151. "real life" images with more than 16 colors.  JoeView does some comparing and 
  1152. will minimize the file size to its best ability so you should only see slight 
  1153. increases in file size but then again you may see a significant decrease.  You 
  1154. pay your money and you takes your chances. 
  1155.  
  1156.  
  1157. ΓòÉΓòÉΓòÉ 4.3. GIF ΓòÉΓòÉΓòÉ
  1158.  
  1159. Does em'. 
  1160.  
  1161. JoeView will read both GIF87a and GIF89a formats but will write only GIF87a 
  1162. format. If a mulit-image gif file is encountered you will have the option of 
  1163. breaking the images apart and creating a sequence of OS2 bitmaps from them or 
  1164. just reading the first image. 
  1165.  
  1166. "The Graphics Interchange Format(c) is the Copyright property of
  1167. CompuServe Incorporated.  GIF(sm) is a Service Mark property of
  1168. CompuServe Incorporated."
  1169.  
  1170.  
  1171. ΓòÉΓòÉΓòÉ 4.4. TARGA ΓòÉΓòÉΓòÉ
  1172.  
  1173. The code to read Targa images is based on tgatoppm.c by Jef Poskanzer.  This is 
  1174. the copyright stuff from that file. 
  1175.  
  1176. /* tgatoppm.c - read a TrueVision Targa file and write a portable pixmap
  1177. **
  1178. ** Partially based on tga2rast, version 1.0, by Ian MacPhedran.
  1179. **
  1180. ** Copyright (C) 1989 by Jef Poskanzer.
  1181. **
  1182. ** Permission to use, copy, modify, and distribute this software and its
  1183. ** documentation for any purpose and without fee is hereby granted, provided
  1184. ** that the above copyright notice appear in all copies and that both that
  1185. ** copyright notice and this permission notice appear in supporting
  1186. ** documentation.  This software is provided "as is" without express or
  1187. ** implied warranty.
  1188.  
  1189. JoeView does both RLE and non-RLE style files.  BTW, I have significantly 
  1190. changed the code, hopefully for the better. 
  1191.  
  1192.  
  1193. ΓòÉΓòÉΓòÉ 4.5. PBM ΓòÉΓòÉΓòÉ
  1194.  
  1195. The code for reading and writing PBM files used to be based on code from XV.  I 
  1196. have since redone the code enough to believe that it is no longer a use of that 
  1197. code.  I have retained  the following is copyright information from XV just to 
  1198. be sure. 
  1199.  
  1200.  
  1201.  * Copyright 1989, 1990, 1991, 1992 by John Bradley and
  1202.  *            The University of Pennsylvania
  1203.  *
  1204.  * Permission to use, copy, and distribute for non-commercial purposes,
  1205.  * is hereby granted without fee, providing that the above copyright
  1206.  * notice appear in all copies and that both the copyright notice and this
  1207.  * permission notice appear in supporting documentation.
  1208.  *
  1209.  * The software may be modified for your own purposes, but modified versions
  1210.  * may not be distributed.
  1211.  *
  1212.  * This software is provided "as is" without any expressed or implied warranty.
  1213.  *
  1214.  * The author may be contacted via:
  1215.  *   US Mail:  John Bradley
  1216.  *        GRASP Lab, Room 301C
  1217.  *        3401 Walnut St.
  1218.  *        Philadelphia, PA  19104
  1219.  *
  1220.  *   Phone:   (215) 898-8813
  1221.  *   EMail:   bradley@cis.upenn.edu
  1222.  *
  1223.  
  1224. JoeView uses the term PBM loosely, there are really three (or six) different 
  1225. types of formats here.  They are: 
  1226.  
  1227.              PGM - portable graymap file format
  1228.  
  1229.    The portable graymap format is a lowest common denominator grayscale file
  1230.    format.  The definition is as follows:
  1231.  
  1232.    - A "magic number" for identifying the file type.  A  pgm  file's  magic
  1233.     number is the two characters "P2".
  1234.  
  1235.    - Whitespace (blanks, TABs, CRs, LFs).
  1236.  
  1237.    - A width, formatted as ASCII characters in decimal.
  1238.  
  1239.    - Whitespace.
  1240.  
  1241.    - A height, again in ASCII decimal.
  1242.  
  1243.    - Whitespace.
  1244.  
  1245.    - The maximum gray value, again in ASCII decimal.
  1246.  
  1247.    - Whitespace.
  1248.  
  1249.    - Width * height gray values, each in ASCII decimal, between  0  and  the
  1250.     specified  maximum value, separated by whitespace, starting at the top-
  1251.     left corner of the graymap, proceding in normal English reading  order.
  1252.     A value of 0 means black, and the maximum value means white.
  1253.  
  1254.    - Characters from a "#" to the next end-of-line are ignored (comments).
  1255.  
  1256.    - No line should be longer than 70 characters.
  1257.  
  1258.    Here is an example of a small graymap in this format:
  1259.    P2
  1260.    # feep.pgm
  1261.    24 7
  1262.    15
  1263.    0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
  1264.    0  3  3  3  3  0  0  7  7  7  7  0  0 11 11 11 11  0  0 15 15 15 15  0
  1265.    0  3  0  0  0  0  0  7  0  0  0  0  0 11  0  0  0  0  0 15  0  0 15  0
  1266.    0  3  3  3  0  0  0  7  7  7  0  0  0 11 11 11  0  0  0 15 15 15 15  0
  1267.    0  3  0  0  0  0  0  7  0  0  0  0  0 11  0  0  0  0  0 15  0  0  0  0
  1268.    0  3  0  0  0  0  0  7  7  7  7  0  0 11 11 11 11  0  0 15  0  0  0  0
  1269.    0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
  1270.  
  1271.  
  1272.    There is also a variant on the format, the RAW style.
  1273.    This variant is different in the following ways:
  1274.  
  1275.    - The "magic number" is "P5" instead of "P2".
  1276.  
  1277.    - The gray values are stored as plain bytes, instead of ASCII decimal.
  1278.  
  1279.    - No whitespace is allowed in  the  grays  section,  and  only  a  single
  1280.     character  of  whitespace  (typically  a  newline) is allowed after the
  1281.     maxval.
  1282.  
  1283.    - The files are smaller and many times faster to read and write.
  1284.  
  1285.    Note that this raw format can only be used for maxvals less than or equal
  1286.    to 255.
  1287.  
  1288.           PBM - portable bitmap file format
  1289.  
  1290.    The portable bitmap format is a lowest common denominator monochrome file
  1291.    format.  It was originally designed to make it reasonable to mail bitmaps
  1292.    between different types of machines  using  the  typical  stupid  network
  1293.    mailers  we  have today.  Now it serves as the common language of a large
  1294.    family of bitmap conversion filters.  The definition is as follows:
  1295.  
  1296.    - A "magic number" for identifying the file type.  A  pbm  file's  magic
  1297.     number is the two characters "P1".
  1298.  
  1299.    - Whitespace (blanks, TABs, CRs, LFs).
  1300.  
  1301.    - A width, formatted as ASCII characters in decimal.
  1302.  
  1303.    - Whitespace.
  1304.  
  1305.    - A height, again in ASCII decimal.
  1306.  
  1307.    - Whitespace.
  1308.  
  1309.    - Width * height bits, each either '1' or '0', starting at  the  top-left
  1310.     corner of the bitmap, proceding in normal English reading order.
  1311.  
  1312.    - The character '1' means black, '0' means white.
  1313.  
  1314.    - Whitespace in the bits section is ignored.
  1315.  
  1316.    - Characters from a "#" to the next end-of-line are ignored (comments).
  1317.  
  1318.    - No line should be longer than 70 characters.
  1319.  
  1320.    Here is an example of a small bitmap in this format:
  1321.    P1
  1322.    # feep.pbm
  1323.    24 7
  1324.    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  1325.    0 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 1 0
  1326.    0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0
  1327.    0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 1 0
  1328.    0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0
  1329.    0 1 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 0 0 1 0 0 0 0
  1330.    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  1331.  
  1332.  
  1333.    There is also a variant on the format, the RAW style.
  1334.    This variant is different in the following ways:
  1335.  
  1336.    - The "magic number" is "P4" instead of "P1".
  1337.  
  1338.    - The bits are stored eight per byte, high bit first low bit last.
  1339.  
  1340.    - No whitespace is allowed  in  the  bits  section,  and  only  a  single
  1341.     character  of  whitespace  (typically  a  newline) is allowed after the
  1342.     height.
  1343.  
  1344.    - The files are eight times smaller and many times  faster  to  read  and
  1345.     write.
  1346.  
  1347.               PPM - portable pixmap file format
  1348.  
  1349.    The portable pixmap format is a lowest  common  denominator  color  image
  1350.    file format.  The definition is as follows:
  1351.  
  1352.    - A "magic number" for identifying the file type.  A  ppm  file's  magic
  1353.     number is the two characters "P3".
  1354.  
  1355.    - Whitespace (blanks, TABs, CRs, LFs).
  1356.  
  1357.    - A width, formatted as ASCII characters in decimal.
  1358.  
  1359.    - Whitespace.
  1360.  
  1361.    - A height, again in ASCII decimal.
  1362.  
  1363.    - Whitespace.
  1364.  
  1365.    - The maximum color-component value, again in ASCII decimal.
  1366.  
  1367.    - Whitespace.
  1368.  
  1369.    - Width * height pixels, each three ASCII decimal values  between  0  and
  1370.     the  specified  maximum  value,  starting at the top-left corner of the
  1371.     pixmap, proceding in normal English reading order.  The  three  values
  1372.     for each pixel represent red, green, and blue, respectively; a value of
  1373.     0 means that color is off, and the maximum value means  that  color  is
  1374.     maxxed out.
  1375.  
  1376.    - Characters from a "#" to the next end-of-line are ignored (comments).
  1377.  
  1378.    - No line should be longer than 70 characters.
  1379.  
  1380.    Here is an example of a small pixmap in this format:
  1381.    P3
  1382.    # feep.ppm
  1383.    4 4
  1384.    15
  1385.    0  0  0   0  0  0   0  0  0  15  0 15
  1386.    0  0  0   0 15  7   0  0  0   0  0  0
  1387.    0  0  0   0  0  0   0 15  7   0  0  0
  1388.    15  0 15   0  0  0   0  0  0   0  0  0
  1389.  
  1390.    There is also a variant on the format, the RAW style.
  1391.    This variant is different in the following ways:
  1392.  
  1393.    - The "magic number" is "P6" instead of "P3".
  1394.  
  1395.    - The pixel values are stored as plain bytes, instead of ASCII decimal.
  1396.  
  1397.    - Whitespace is not allowed  in  the  pixels  area,  and  only  a  single
  1398.     character  of  whitespace  (typically  a  newline) is allowed after the
  1399.     maxval.
  1400.  
  1401.    - The files are smaller and many times faster to read and write.
  1402.  
  1403.    Note that this raw format can only be used for maxvals less than or equal
  1404.    to 255.
  1405.  
  1406.    The above three descriptions are very slightly altered versions of descriptions
  1407.    originally written and Copyrighted (C) 1989, 1991 by Jef Poskanzer.
  1408.  
  1409. So, if you need to input a file format that JoeView does not support, here is 
  1410. your chance if you know the format of the data you already have.  Convert the 
  1411. data into the appropriate ASCII format style above.  It is probably simplest 
  1412. just to use the ppm format and let JoeView convert it down into the appropriate 
  1413. number of colors. 
  1414.  
  1415.  
  1416. ΓòÉΓòÉΓòÉ 4.6. X11 Bitmap ΓòÉΓòÉΓòÉ
  1417.  
  1418. The code for reading and writing X11 bitmaps was hacked from XV, see the PBM 
  1419. section for copyright info. 
  1420.  
  1421.  
  1422. ΓòÉΓòÉΓòÉ 4.7. Sun Raster ΓòÉΓòÉΓòÉ
  1423.  
  1424. The code for reading and writing Sun Raster files was stolen from XV, see the 
  1425. PBM  section for copyright info.  This particular code from XV was written by 
  1426. Dave Heath (heath@cs.jhu.edu) with additions by Ken Rossman 
  1427. (ken@shibuya.cc.columbia.edu). 
  1428.  
  1429.  
  1430. ΓòÉΓòÉΓòÉ 4.8. PCX ΓòÉΓòÉΓòÉ
  1431.  
  1432. The code for reading and writing PCX files is taken from Michael Davidson.  I 
  1433. have made significant changes, including the ability to handle 24 bit images. 
  1434. This should handle up to version 5 PCX. 
  1435.  
  1436.  
  1437. ΓòÉΓòÉΓòÉ 4.9. TIFF ΓòÉΓòÉΓòÉ
  1438.  
  1439. The code for reading and writting TIFFs is based on code written by Sam 
  1440. Leffler.  Here is his copyright notice. 
  1441.  
  1442. /*
  1443.  * Copyright (c) 1991, 1992 Sam Leffler
  1444.  * Copyright (c) 1991, 1992 Silicon Graphics, Inc.
  1445.  *
  1446.  * Permission to use, copy, modify, distribute, and sell this software and
  1447.  * its documentation for any purpose is hereby granted without fee, provided
  1448.  * that (i) the above copyright notices and this permission notice appear in
  1449.  * all copies of the software and related documentation, and (ii) the names of
  1450.  * Sam Leffler and Silicon Graphics may not be used in any advertising or
  1451.  * publicity relating to the software without the specific, prior written
  1452.  * permission of Sam Leffler and Silicon Graphics.
  1453.  *
  1454.  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
  1455.  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
  1456.  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
  1457.  *
  1458.  * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
  1459.  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  1460.  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  1461.  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
  1462.  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
  1463.  * OF THIS SOFTWARE.
  1464.  */
  1465.  
  1466. When you save a TIFF file, there are five choices for the type of TIFF file to 
  1467. stored.  Not exactly sure what each of the types is except that the FAX choices 
  1468. will be reduced to black and white images first. 
  1469.  
  1470. Understand that the TIFF spec is disgustingly huge and I will not even begin to 
  1471. think about getting in to it in detail.  If your TIFF files are not displaying 
  1472. correctly, well tough tiff, it is beyond my capabilities to go in and mess with 
  1473. the library supplied by Sam Leffler. 
  1474.  
  1475.  
  1476. ΓòÉΓòÉΓòÉ 4.10. Utah RLE ΓòÉΓòÉΓòÉ
  1477.  
  1478. JoeView only reads Utah RLE files, it will not write them.  The code for 
  1479. reading Utah RLE files is based on code from XV, see the PBM section for 
  1480. copyright info. 
  1481.  
  1482.  
  1483. ΓòÉΓòÉΓòÉ 4.11. MetaFiles ΓòÉΓòÉΓòÉ
  1484.  
  1485. JoeView will only read MetaFiles, it will not write them.  Meta files are 
  1486. actually a series of drawing commands and so you can imagine how big a file 
  1487. would be if every command was to draw a single point at some color.  JoeView 
  1488. will size the MetaFile to display onto the screen and then create a raster 
  1489. version of it.  Right now you cannot stop a MetaFile from playing once it has 
  1490. started. 
  1491.  
  1492.  
  1493. ΓòÉΓòÉΓòÉ 4.12. Slide Show Files ΓòÉΓòÉΓòÉ
  1494.  
  1495. JoeView can store a selection of files for use in a Slide Show.  These 
  1496. typically are given and extension of sls.  You can load these files using the 
  1497. Slide Show Dialog or the regular File Open Dialog.  In addition, you can drag 
  1498. and drop  such a file onto JoeView. 
  1499.  
  1500. As of version 1.22, the files created will contain the slide show settings in 
  1501. effect when the file was created. 
  1502.  
  1503.  
  1504. ΓòÉΓòÉΓòÉ 5. Key Help ΓòÉΓòÉΓòÉ
  1505.  
  1506. There are keyboard equivalents to many of the pull down menu commands.  Most 
  1507. are single character commands and will be shown on the menu underlined.  They 
  1508. are only valid when the main window is active.  They are: 
  1509.  
  1510. Ctrl+O or O  Open a file 
  1511.  
  1512. S  Save a file 
  1513.  
  1514. Z  Zoom in or out 
  1515.  
  1516. B  Brighten Image 
  1517.  
  1518. D  Darken Image 
  1519.  
  1520. G  Grayscale image 
  1521.  
  1522. C  Crop the image 
  1523.  
  1524. A  Auto crop the image using Average parameter 
  1525.  
  1526. Ctrl+C  Auto crop the image using Custom Dialog 
  1527.  
  1528. I  Image information window 
  1529.  
  1530. Ctrl+I Iconfy the file 
  1531.  
  1532. H  Help table of contents 
  1533.  
  1534. K  This window 
  1535.  
  1536. M  Move the window using arrow keys, good in No TitleBar mode 
  1537.  
  1538. N  Next image when in slide show mode 
  1539.  
  1540. Ctrl+N  Open File dialog next image 
  1541.  
  1542. Ctrl+P  Open File dialog previous image 
  1543.  
  1544. Alt+P Print Image 
  1545.  
  1546. + Increase image size by 10% 
  1547.  
  1548. - Decrease image size by 10% 
  1549.  
  1550. R  Refresh image 
  1551.  
  1552. T Toggle Title Bar on and off 
  1553.  
  1554. Ctrl+R Rotate image Clockwise 
  1555.  
  1556. Alt+R Rotate image CounterClockwise 
  1557.  
  1558. Ctrl+F Flip image Vertically 
  1559.  
  1560. Alt+F Flip image Horizontally 
  1561.  
  1562. F Toggle Floating on/off 
  1563.  
  1564. Alt+O  Options Dialog 
  1565.  
  1566. Ctrl+S  Slide Show Dialog 
  1567.  
  1568. Space Bar  Minimize JoeView (someone's coming) 
  1569.  
  1570. Alt+C  Main Colors manipulations dialog 
  1571.  
  1572. Aggessive Palette can be toggled using Alt+A.  There will be a beep. 
  1573.  
  1574. Alt+F4  Quit 
  1575.  
  1576. Number keys 2 - 4 will size the image by that number.  2 doubles, etc... 
  1577.  
  1578. Shift Number keys 2 - 4 will divide image size by that number.  2 halves, 
  1579. etc... 
  1580.  
  1581. The Open File dialog has the following keyboard equivalents, they are active 
  1582. only when the Open File dialog is active.  They are: 
  1583.  
  1584. Ctrl+N Show next image 
  1585.  
  1586. Ctrl+P Show previous image 
  1587.  
  1588. Space Bar Minimize JoeView 
  1589.  
  1590.  
  1591. ΓòÉΓòÉΓòÉ 6. A Few Thanks ΓòÉΓòÉΓòÉ
  1592.  
  1593. The following people were kind enough to answer questions I posted to the net. 
  1594. The few minutes they took to respond to my questions saved me untold days of 
  1595. fruitless searching through .inf files.  I hope these words make a contribution 
  1596. towards their 15 minutes of fame. 
  1597.  
  1598. o Keith Murray 
  1599.  
  1600. o Jeroen Hoppenbrouwers 
  1601.  
  1602. o Gene Mangum 
  1603.  
  1604. o Roman Fischer 
  1605.  
  1606. o Anders Bjurman 
  1607.  
  1608. This is of course in addition to the people who have made their source code 
  1609. available for use by others.  This would be the JPEG, PBM, and XV authors who 
  1610. are listed in the respective file formats sections. 
  1611.  
  1612. The following people have made significant suggestions for improvement of 
  1613. JoeView and/or pointed out bugs.  You may have made suggestions or comments but 
  1614. are not listed here.  Typically I caught the bug before you notified me or 
  1615. something along those lines.  If you really want on this list, SEND MONEY. 
  1616.  
  1617. o Dan, Dick, Tom, Chance Glazing Donuts instead of working. 
  1618.  
  1619. o Steve M. Lacy Creation of FS Dithered bitmaps for wallpaper use. 
  1620.  
  1621. o Scott Hiles Create Slide Show files, Toggle Title Bar, Drag Drop Slide Show 
  1622.   Files 
  1623.  
  1624. o Rob Eitzen Can't access A/B drives, bug fix 
  1625.  
  1626. o Scott Harper Found lots of little bugs, good style criticisms, bitmap file 
  1627.   problems, ghost cropping rectangle (fix) 
  1628.  
  1629. o Reinhard Meyer Found truly obscure bugs, other suggestions 
  1630.  
  1631.  
  1632. ΓòÉΓòÉΓòÉ 7. <-Registering JoeView-> ΓòÉΓòÉΓòÉ
  1633.  
  1634. You are required to register JoeView if you wish to use it after an evaluation 
  1635. period of 20 uses.  This means that you can start the JoeView program a total 
  1636. of 20 times, after which you are obligated to register it.  There is no time 
  1637. constraint for this.  To register JoeView you (the user) send me (the author) 
  1638. money, gold, chinese food, Claudia Schiffer's home phone number, or any 
  1639. combination of these items. I (me) then send you (you) one of two passwords. 
  1640. The password is according to this scale: 
  1641.  
  1642. o You send me less than $27.82 (US money bub) and I will give you a password 
  1643.   that will work on all 1.22 versions of JoeView - this means all bug fixes, 
  1644.   etc.  We are talking about any amount, but let's say $10 to keep it simple. 
  1645.  
  1646. o You send me more than $27.82 (also US dinero) and I will give you a password 
  1647.   that will work on JoeView 1.22 and I will forward new passwords to you as 
  1648.   needed, free of charge for all future versions. This assumes that demand is 
  1649.   great enough to warrant me writing the next version of JoeView - next big 
  1650.   thing is 24 bit display. 
  1651.  
  1652. Now you bright types notice I didn't say what happens when you send me exactly 
  1653. $27.82.  Well, do ya feel lucky PUNK, just try it and see. 
  1654.  
  1655. The above is for a single user.  The agreement is (in theory) that you can 
  1656. create as many passworded versions of JoeView as you wish, but only one of 
  1657. these copies can be in use at any given time (this is the book description used 
  1658. by Borland and others). 
  1659.  
  1660. Any company or government use of JoeView will follow the below registration 
  1661. costs: 
  1662.  
  1663. o Groups registration of 4 or less people: 
  1664.  
  1665.    - For 1.22 version only $10 US for each person. 
  1666.  
  1667.    - For lifetime password $30 US for each person. 
  1668.  
  1669. o Group registration of 5 to 10 people: 
  1670.  
  1671.    - For 1.22 version only $15 + $7 US per person (5 people = $50, 6 = $57, 
  1672.      etc) 
  1673.  
  1674.    - For lifetime password $100 + $11 US per person 
  1675.  
  1676. o Site license: 
  1677.  
  1678.    - 1.22 version only $279. 
  1679.  
  1680.    - Lifetime password on an individually negotiated basis. 
  1681.  Payment can take the form of cash or check, send it to: 
  1682.  
  1683. Crunch Products 
  1684. P.O. Box 370353 
  1685. San Diego, CA 92137-0353 
  1686.  
  1687. The checks can be made out to Joe Burkley or Crunch Products. 
  1688.  
  1689. Have an interesting idea for a new program?  Let's talk, I'm always interested 
  1690. in considering new ideas. Contact me at the above address and we can talk. 
  1691.  
  1692.  
  1693. ΓòÉΓòÉΓòÉ 8. <-Non USA Registration-> ΓòÉΓòÉΓòÉ
  1694.  
  1695. Everything in the section on registering still applies.  In addition, you need 
  1696. to consider the following. 
  1697.  
  1698. Through lots of negotiations I have found a way to cash foreign checks. This 
  1699. means that you can send me a personal check made out in your local currency. 
  1700. You have to figure out the proper amount to send from a currency exchange 
  1701. perspective.  For example, if you want to send me $50 US and your local 
  1702. currency is marks and the exchange rate (get from the financial section of your 
  1703. newspapers) is 1.7 marks to each US dollar then you send me a check for 50 x 
  1704. 1.7 = 85 marks.  I get a service charge for foreign checks, so add $4 US to 
  1705. whatever amount you wish to send.  This method is OK for any country EXCEPT the 
  1706. following: 
  1707.  
  1708. o Finland 
  1709. o Greece 
  1710. o India 
  1711. o Italy 
  1712. o Japan 
  1713. o Mexico 
  1714. o New Zealand 
  1715. o Philipines 
  1716. o Portugal 
  1717. o Spain 
  1718. o Ireland 
  1719.  
  1720. For the above countries you will have to send cash (your currency is OK) or get 
  1721. a money order made out in US dollars. 
  1722.  
  1723.  
  1724. ΓòÉΓòÉΓòÉ 9. Drag and Drop ΓòÉΓòÉΓòÉ
  1725.  
  1726. JoeView supports the dragging and dropping of an image file or slideshow file 
  1727. onto either the JoeView Icon or onto a running version of JoeView.  JoeView 
  1728. will not accept drag and drop operations while a Slide Show is running or while 
  1729. a file is currently being read.  If you drag and drop multiple files at one 
  1730. time, the files will be loaded into a slide show and started with whatever 
  1731. defaults are currently selected as slide show options. 
  1732.  
  1733.  
  1734. ΓòÉΓòÉΓòÉ 10. Command Line ΓòÉΓòÉΓòÉ
  1735.  
  1736. There are two possible command line options.  You can specify a file name for 
  1737. JoeView to load upon startup. 
  1738.  
  1739. For example:  joeview c:\gifs\hooters.gif 
  1740.  
  1741. The other command line option is to create a Floyd Steinberg Dithered bitmap. 
  1742. The main purpose of this option is so that you can create background images for 
  1743. your desktop or lockup screens.  When you received this copy of JoeView, one of 
  1744. the files included should have been a REXX script to randomly generate 
  1745. background images using this command line option.  The format of the command is 
  1746.  
  1747. joeview -b input_file output_file or joeview -bs input_file output_file.  You 
  1748. should specify drives and paths for the input and output files.  The input file 
  1749. can be in any file format the JoeView normally reads.  The output file will 
  1750. always be an OS2 2.0 format bitmap.  The "-b" option causes JoeView to perform 
  1751. the dithering at full CPU utilization.  As the process is very CPU intensive, 
  1752. the "-bs" option is included.  This option is meant to mean -b slow.  Basically 
  1753. it puts JoeView in a low priority mode that causes the operation to take 
  1754. considerably longer than if you use "-b" but you'll find that your machine is 
  1755. much more useful while the process is running. JoeView will not be visible when 
  1756. this option is invoked. 
  1757.  
  1758. The idea of using FS Dithering to create background bitmaps was originally 
  1759. proposed by Steve M. Lacy. 
  1760.  
  1761.  
  1762. ΓòÉΓòÉΓòÉ 11. Blue Screen ΓòÉΓòÉΓòÉ
  1763.  
  1764. If'n your startup image in JoeView is a blue screen, your JoeView.ini file has 
  1765. been corrupted.  Delete it and JoeView will create another. 
  1766.  
  1767.  
  1768. ΓòÉΓòÉΓòÉ 12. Thread Priorities ΓòÉΓòÉΓòÉ
  1769.  
  1770. OS2 has (for all practical purposes) 2 levels of thread priority, low(idle) and 
  1771. regular.  There seems to be a limit on the number of low priority threads that 
  1772. can be active at once.  Many applications (CPU meters, clocks, etc.) use low 
  1773. priority threads.  Along comes JoeView and it wants to use one.  Well OS2 will 
  1774. give JoeView a low priority thread, but OS2 doesn't want to devote any CPU 
  1775. cycles to that thread.  The net effect is that nothing happens as far as 
  1776. JoeView processing is concerned.  Another possibility is that Dos Boxes and 
  1777. certain other OS2 programs will cause OS2 to not give any CPU time to low 
  1778. priority threads.  If you have many applications running (or Dos programs) and 
  1779. you try something with JoeView and nothing seems to happen, try regular 
  1780. priority threads instead.  Most of the time with JoeView you can use a check 
  1781. box to specify whether a command should occur at low or regular priority or you 
  1782. can use a menu selection to alter the priority.  Some commands might start out 
  1783. at low priority.  These commands can be upgraded to regular priority by using a 
  1784. menu command.  I think I have changed all commands to start out at regular 
  1785. priority, but earlier version of JoeView were not this way and I may have 
  1786. missed some. 
  1787.  
  1788. For saving of files, I have brazenly stolen an idea I saw mentioned in pmview, 
  1789. which is to bump the priority of these threads if JoeView doesn't detect 
  1790. activity for 3 seconds.  This only occurs for saving.  SlideShows, File Reads, 
  1791. dithering, etc. priorities can be changed while the command is running so I 
  1792. leave it up to you to decide how you want them to go. 
  1793.  
  1794. BTW, one way to see this type of activity is to have a file read occuring at 
  1795. low priority and while it is reading open or make active an application that 
  1796. runs in a Dos Box.  Or run the SlideShow in low priority and open a Dos 
  1797. program. 
  1798.  
  1799.  
  1800. ΓòÉΓòÉΓòÉ 13. Installation & Setup ΓòÉΓòÉΓòÉ
  1801.  
  1802. You should have seen this in the readme file included with your distribution of 
  1803. JoeView. 
  1804.  
  1805. I have used the philosophy that JoeView will impact your OS2 system with as 
  1806. little change as possible so that if you ever decide to  get rid of JoeView, 
  1807. perish the thought, all you will need to do is delete the files in one 
  1808. directory. 
  1809.  
  1810. JoeView can be used as you got it without any system (config.sys) 
  1811. modifications. For best results you should put the JoeView files in a directory 
  1812. that is included in your path statement.  JoeView does sometimes create 
  1813. temporary files and because of this it looks to see if you have either a TMP or 
  1814. TEMP environental variable set in your config.sys.  Lots of application use 
  1815. these so you probably have them defined.  If not, you can add one by entering 
  1816. SET TMP=c:\os2\tmp or whatever directory you want your temp files stored in. 
  1817. This keeps your system nice and clean so that you don't get random files 
  1818. popping up all over the place. 
  1819.  
  1820. The last installation option is of most importance to people working in a 
  1821. network environment.  You can put an environment variable called JOEVIEWINI 
  1822. that points to a drive and directory where you want the JoeView.ini file to be. 
  1823. This is also the place where the palette file (described below) and other 
  1824. JoeView (permanent) files will be placed.  If this variable is not present in 
  1825. your config.sys, these files get placed in the same directory as JoeView.exe is 
  1826. located.  The main benefit of this option is that people running on a network 
  1827. can have one of JoeView (exe and help) located on a common drive with each 
  1828. personal .ini files on each person's machine.  In your config.sys this would 
  1829. look like SET JOEVIEWINI=C:\IMAGES. 
  1830.  
  1831. Thats about the only change to your system that you can make regarding JoeView. 
  1832.  
  1833. When you run JoeView the first time, two files will be created.  The first is 
  1834. joeview.ini which contains information about your current configuration of 
  1835. JoeView.  The second file is joeview.pal which contains the colors used in your 
  1836. default system setup.  The pal file is important when you are converting images 
  1837. to use the system colors.  When you run JoeView for the first time (and create 
  1838. the pal file) you should have your system setup color-wise in the way you will 
  1839. be using it.  This means that no other palette changing programs should be 
  1840. running at the time. 
  1841.  
  1842. Other files included with JoeView are the help file and several script and REXX 
  1843. example files.  In addition, certain functions may create files. These will 
  1844. always have a name similar to JoeView. 
  1845.  
  1846.  
  1847. ΓòÉΓòÉΓòÉ 14. Copyright ΓòÉΓòÉΓòÉ
  1848.  
  1849. The author makes NO WARRANTY or representation, either expressed or implied, 
  1850. with respect to JoeView, its quality, accuracy, merchantability, or fitness for 
  1851. a particular purpose.  This software is provided "AS IS", and you, its user, 
  1852. assume the entire risk as to its quality and accuracy. 
  1853.  
  1854. This software is copyright (C) 1992, 1993, V. Joseph Burkley. All Rights 
  1855. Reserved except as specified below. 
  1856.  
  1857. Permission is hereby granted to use, copy, and distribute this software (or 
  1858. portions thereof) for any purpose, without fee, subject to these conditions: 
  1859.  
  1860. (1) The three files, joeview.exe, joeview.hlp and the accompanying readme 
  1861. (readme.jvw) files must always be included during distribution.  Any 
  1862. alterations to the files must be clearly documented.  No changes may  be made 
  1863. to the About screen or any of the copyright information. 
  1864.  
  1865. (2) Permission for use of this software is granted only if the user accepts 
  1866. full responsibility for any undesirable consequences; the author accepts NO 
  1867. LIABILITY for damages of any kind. 
  1868.  
  1869. (3)Permission is NOT granted for the use of the author's name or company name 
  1870. in advertising or publicity relating to this software or products derived from 
  1871. it. 
  1872.  
  1873. (4)Users are granted permission to collect fees for the distribution of 
  1874. JoeView, (such as BBS's that have a membership fee or a downloading charge, or 
  1875. FTP sites that sell cdrom versions of their archives) but users are 
  1876. specifically prohibited from selling JoeView as a product or bundling JoeView 
  1877. with other products that are then sold.  It may be given away for free. 
  1878.  
  1879. I encourage the free or at cost distribution of JoeView. 
  1880.  
  1881.  
  1882. ΓòÉΓòÉΓòÉ 15. Scripts & REXX ΓòÉΓòÉΓòÉ
  1883.  
  1884.  Any script file or REXX program can be loaded like a normal file.  Either 
  1885.  command line, drag and drop, or using the JoeView open file dialog.  The 
  1886.  script file must begin with the line 
  1887.  
  1888.  JoeScript 
  1889.  
  1890.  and no blank lines should exist.  For a REXX file, the first line of the file 
  1891.  must begin with the /* sequence.  For all commands (except the first line in a 
  1892.  script file) the command will be converted to lower case.  Optional arguments 
  1893.  will not be case adjusted so you should treat them with care.  For example, if 
  1894.  your script or REXX file has the line going to JoeView as: 
  1895.  
  1896.  Print Hello 
  1897.  
  1898.  JoeView would receive a line like: 
  1899.  
  1900.  print Hello 
  1901.  
  1902.  Play it safe and keep all commands as lower case.  Type all arguments to be 
  1903.  exactly as you would like them.  I did all this so that JoeView will work with 
  1904.  Unix type file systems where case does make a difference in file names. 
  1905.  
  1906.  Except for the print command, all passed numerical arguments need to be 
  1907.  integers (no decimal points).  Remember integers! 
  1908.  
  1909.  Initial Settings: The following are the defaults, regardless of what you have 
  1910.  set in the JoeView options. 
  1911.  
  1912.  o Save at displayed size is off. 
  1913.  o When saving, image is saved in full color. 
  1914.  o Priorities are set to regular. 
  1915.  o Iconify on file save is set to off. 
  1916.  o Display using system palette is off. 
  1917.  o Display using aggressive palette is off. 
  1918.  
  1919.  otherwise, whatever defaults you have set in the options part of JoeView are 
  1920.  used.  You can overide most of these settings by using script/REXX commands. 
  1921.  
  1922.  The commands that are unique to JoeView Script files are: 
  1923.  
  1924.  o open_start and open_finish These two commands bracket groups of files that 
  1925.    are to be operated on.  It doesn't matter if the number of files is 1 or 
  1926.    1000, the names must be between the brackets with each name on its own line. 
  1927.    Wild cards are allowed and drives and paths should be included.  For 
  1928.    example: 
  1929.  
  1930.       open_start 
  1931.       c:\images\*.gif 
  1932.       c:\stuff\*.jpg 
  1933.       c:\thisfile.bmp 
  1934.       open_finish 
  1935.  
  1936.  would set up for processing all the gifs in c:\images, all the jpg files in 
  1937.  c:\stuff and file c:\thisfile.bmp. This has loaded in a list of filenames. 
  1938.  These file en mass will only be affected by commands which are listed between 
  1939.  the begin & end statements. 
  1940.  
  1941.  o begin and end Any command can appear on a line, but if you want to do 
  1942.    operations on groups of files, the commands must be listed between begin and 
  1943.    end statements.  For example, if you had previously loaded in a group of gif 
  1944.    file names, then: 
  1945.  
  1946.       begin 
  1947.       grayscale 
  1948.       end 
  1949.  
  1950.  would load a file, convert it to grayscale (no save) and then load in the next 
  1951.  file until all files had been processed.  The number of commands between the 
  1952.  begin and end statements is (realistically) unlimited.  Each command must be 
  1953.  on its own line without any blank lines. 
  1954.  
  1955.  o run_commands This command tells JoeView to begin using the commands defined 
  1956.    previously by use of the begin & end statements.  The commands will be run 
  1957.    on all files that were loaded using the open_start and open_finish commands. 
  1958.  
  1959.  The commands that are unique to REXX files are: 
  1960.  
  1961.  o get_info This is used to query JoeView about the current state of the image 
  1962.    and the JoeView window.  The RC variable that JoeView returns to the REXX 
  1963.    program will be a string with the format of: 
  1964.  
  1965.    Image Width, Image Height, number of colors, X Position of the frame window, 
  1966.    Y Position of the frame window, Width of the frame window, Height of the 
  1967.    frame window 
  1968.  
  1969.    The actual data is not separated by commas and would look something like: 
  1970.  
  1971.    300 456 200 310 466 10 50 
  1972.  
  1973.    The origin of the screen occurs at the lower left corner and is 0, 0.  The 
  1974.    position of the frame window is relative to this coordinate.  To receive 
  1975.    this information in the REXX program you would execute the get_info command 
  1976.    and then use: 
  1977.  
  1978.    PARSE VAR rc wide high colors position_x position_y window_width 
  1979.    window_height 
  1980.  
  1981.    RC(rc) is the variable REXX uses for passing info back and forth to JoeView. 
  1982.    You can use any variable names you like inplace of the ones in this example. 
  1983.  
  1984.  o get_filename  Used in a simlar way to get_info, this will return the image's 
  1985.    filename in the rc variable. 
  1986.  
  1987.  The following commands can be used by either a JoeView script or by a REXX 
  1988.  program.  Their execution is the same for both. 
  1989.  
  1990.  brighten number 
  1991.     Also darken number. Brighten or darken image by specified amount.  number 
  1992.     can be from 0-255 and must be in integer form. 
  1993.  
  1994.  bw_dither 
  1995.     Dither the image to black and white. 
  1996.  
  1997.  crop left bottom right top 
  1998.     Crop the image to the specified coordinates.  These are the "real" image 
  1999.     coordinates, not the displayed coordinates.  1,1 would be the lower left 
  2000.     corner of the image and the image width and height would be the limits on 
  2001.     the upper right corner. 
  2002.  
  2003.  crop_regular 
  2004.     Aslo crop_average, crop_loose, crop_strict. Do autocropping. 
  2005.  
  2006.  crop_custom number 
  2007.     Do autocropping with the specified cropping value.  number must be an 
  2008.     integer. 
  2009.  
  2010.  exit 
  2011.     This must exist outside of the begin & end pair of a Script file.  It 
  2012.     functions just like stop, except JoeView will terminate instead of 
  2013.     returning control to the user like stop does. 
  2014.  
  2015.  flip_vertical 
  2016.     Also flip_horizontal.  Flip image along the appropriate axis. 
  2017.  
  2018.  fixed_window_on & fixed_window_off 
  2019.     Display window will have or not have to stay at a fixed size turned on. 
  2020.  
  2021.  grayscale 
  2022.     Converts image to grayscale. 
  2023.  
  2024.  iconify & uniconify 
  2025.     Iconify the current image into whatever is the current file name.  Or, with 
  2026.     uniconify, delete the icon information from the file. 
  2027.  
  2028.  iconify_on & iconify_off 
  2029.     Turns on or off the iconifying of a file when it is saved. 
  2030.  
  2031.  invert_colors 
  2032.     Invert image colors 
  2033.  
  2034.  jpeg_smooth number 
  2035.     Will turn jpeg file save smoothing on.  number (an integer) indicates the 
  2036.     smoothing factor. 
  2037.  
  2038.  jpeg_smooth_on 
  2039.     Will turn on jpeg file save smoothing and use whatever the default 
  2040.     smoothing factor is. 
  2041.  
  2042.  jpeg_smooth_off 
  2043.     Turns off jpeg file save smoothing. 
  2044.  
  2045.  jpeg_optimize_off & jpeg_optimize_on 
  2046.     Turns on or off jpeg file save optimization. 
  2047.  
  2048.  jpeg_quality number 
  2049.     Jpeg file save quality, number is the quality and must be an integer, 
  2050.     between 50-100. 
  2051.  
  2052.  jpeg_quantize string 
  2053.     The method used to quantize (convert from 24 to 8 bits) the original jpeg 
  2054.     file when read in.  string will be one of the following: 
  2055.  
  2056.     o quick  -Use quick method 
  2057.     o slow  -Use slow method - not recommended 
  2058.     o best  -Use best method 
  2059.     o gray  -Convert to grayscale 
  2060.     o builtin -Use builtin method, recommended 
  2061.  
  2062.  move_abs number_x number _y 
  2063.     Move the window to the absolute position indicated by the integers number_x 
  2064.     and number_y.  The values are relative to the lower left corner of the 
  2065.     screen, which is 0, 0.  The position on the window that this is in 
  2066.     reference to is the lower left corner.  No checking takes place for whether 
  2067.     the window will be off screen. 
  2068.  
  2069.  move_rel number_x number _y 
  2070.     Move the window the number of pixels indicated relative to its current 
  2071.     position. number_x and number_y are integers and can be positive or 
  2072.     negative.  No value testing is performed. 
  2073.  
  2074.  open_file string 
  2075.     This command will open whatever file is indicated in string.  The argument 
  2076.     should ideally have a drive and path but this is not absolutely needed if 
  2077.     you know the directory JoeView is currently in. 
  2078.  
  2079.  pause number 
  2080.     Pause for indicated number of tenths of a second before going on to next 
  2081.     command. number must be an integer. 
  2082.  
  2083.  print many options 
  2084.     The printing allows you to specify almost everything you would normally 
  2085.     specify when using the print dialog.  There are many options and they can 
  2086.     appear in many orders.  The order can have an effect on how the image is 
  2087.     ultimately display.  JoeView will come up with default image where the 
  2088.     image is centered and ready for the default printer.  The options (some 
  2089.     required) are: 
  2090.  
  2091.     o image_width number  Will specify the image width, in inches 
  2092.     o image_height number Will specify the image height, in inches 
  2093.     o left_margin number Will specify the left margin, in inches 
  2094.     o right_margin number Will specify the right margin, in inches 
  2095.     o top_margin number Will specify the top margin, in inches 
  2096.     o base_margin number Will specify the base margin, in inches 
  2097.     o center Center the image on the page. 
  2098.     o landscape_on Print image in landscape mode. 
  2099.     o landscape_off Print image in portrait mode. 
  2100.     o fixed_left Left margin is held fixed. 
  2101.     o fixed_right Right margin is held fixed. 
  2102.     o fixed_width Image width is held fixed. 
  2103.     o fixed_top Top margin is held fixed. 
  2104.     o fixed_base Base margin is held fixed. 
  2105.     o fixed_height Image Height is held fixed. 
  2106.     o set_printer name  Choose a printer.  Capitalization is important for the 
  2107.       name and only the first part of your printer name is important.  For 
  2108.       example, if your printers are called "My Printer" and "Sekas Printer" you 
  2109.       should only use Sekas to select the second printer.  Never put two 
  2110.       strings in for the printer name.  Your default printer will be selected 
  2111.       initially. 
  2112.     o delay number  Delay processing by the indicated number of seconds.  Use 
  2113.       this to take a look at the printer dialog when you are trying to debug 
  2114.       your code.  The maximum value is 30. 
  2115.     o print_it  Print the image.  This is mandatory, if this does not exists, 
  2116.       the print dialog will be cancelled. 
  2117.  
  2118.  priority_low & priority_regular 
  2119.     Set thread priority to low or regular. 
  2120.  
  2121.  priority_monitor 
  2122.     You should read the discussion of the use of priority which is located in 
  2123.     the main menu.  If you execute a priority_monitor command, JoeView will 
  2124.     always monitor whether idle time threads (low priority threads) can 
  2125.     execute.  If during a 3 second period they can't execute, then their 
  2126.     priority is increased to regular priority.  For this option to work you 
  2127.     need to execute it first, then do a priority_low command.  It is advisable 
  2128.     to always use this command when you are going to specify low priority 
  2129.     threads.  If you are really sure you want low priority threads, all the 
  2130.     time, go ahead and leave it off.  BTW, you can only turn this on, once on 
  2131.     it stays on. 
  2132.  
  2133.  quantize string 
  2134.     The method used to quantize (convert from 24 to 8 bits) when image file is 
  2135.     a non-jpeg 24 bit image (targa, pbm, etc).  string will be one of the 
  2136.     following: 
  2137.  
  2138.     o quick  -Use quick method 
  2139.     o slow  -Use slow method - not recommended 
  2140.     o best  -Use best method - recommended 
  2141.     o gray  -Convert to grayscale 
  2142.  
  2143.  reduce_colors number 
  2144.     Reduces image to specified number of colors.  number must be an integer 
  2145.     greater than 1. 
  2146.  
  2147.  resizex2 
  2148.     Also resize/2, resizex3, resize/3, resizex4 resize/4. Resize image by 
  2149.     appropriate factor, either multiply x or divided by /.  resizex2 would 
  2150.     double the image, resize/2 would half the image, etc. 
  2151.  
  2152.  resize_640 
  2153.     Also resize_800 and resize_1024. Resize image to fit screen resolution 
  2154.     indicated. 
  2155.  
  2156.  resize_custom width height 
  2157.     Resize image to specified width and height.  width and height must be 
  2158.     integers. 
  2159.  
  2160.  rotate_clockwise 
  2161.     Also rotate_countclockwise.  Rotate image in the appropriate direction. 
  2162.  
  2163.  save_colors string 
  2164.     When doing a file save, save image in a specified color format.  string is 
  2165.     the color format and must be: 
  2166.  
  2167.     o gray  -Grayscale 
  2168.     o bw   -Black and white 
  2169.     o color  -Color 
  2170.  
  2171.  save_file string 
  2172.     Save the file.  string is the file format and must be one of the following. 
  2173.     This does not change the image name extension, you must do that explicitly 
  2174.     with set_filename_extension, otherwise you will overwrite the original file 
  2175.     if you haven't changed directories or filenames. 
  2176.  
  2177.     o sun - Sun raster format 
  2178.     o pbm_ascii - PBM, PGM, PPM formats in ascii 
  2179.     o pbm_raw  - PBM, PGM, PPM formats, raw 
  2180.     o x11 - X11 bitmaps 
  2181.     o tiff_none - TIFF with no compression 
  2182.     o tiff_packbits - TIFF with packbits compression 
  2183.     o tiff_lzw - TIFF with LZW compression 
  2184.     o tiff_fax3 - TIFF in fax 3 style 
  2185.     o tiff_fax4 - TIFF in fax 4 style 
  2186.     o gif - GIF format 
  2187.     o targa - TARGA format 
  2188.     o targa_rle - TARGA RLE format 
  2189.     o pcx - PCX format 
  2190.     o windoze - MS Windows bitmap 
  2191.     o os2 - OS2 2.0 bitmap 
  2192.     o windoze_rle - MS Windows bitmap, rle encoded 
  2193.     o os2_rle - OS2 2.0 bitmap, rle encoded 
  2194.     o jpeg - JPEG format 
  2195.  
  2196.  say_commands_on & say_commands_off 
  2197.     Will have JoeView show you the command it is about to execute.  Used for 
  2198.     debugging a script or REXX file. 
  2199.  
  2200.  set_filename string 
  2201.     Changes the name of the current image to string.  This will not change the 
  2202.     path or drive info. 
  2203.  
  2204.  set_filename_directory string 
  2205.     Will change the directory of the image, but will leave the image name 
  2206.     unchanged. You should include the drive. 
  2207.  
  2208.  set_filename_extension string 
  2209.     Will change the extension of the image, or assign one if it doesn't have 
  2210.     one. The extension string should include its own period.  For example, If 
  2211.     the image was orginally c:\bigguns\test.gif, 
  2212.  
  2213.     set_filename_extension .jpeg 
  2214.  
  2215.     would change the file to c:\bigguns\test.jpeg 
  2216.  
  2217.  size_abs wide high 
  2218.     Size the display of the image to the indicated values.  Note that this is 
  2219.     the displayed image, not the "real" image.  wide and  high are integers. 
  2220.  
  2221.  size_rel wide high 
  2222.     Adjust the size of the displayed image  by the increment indicated.  wide 
  2223.     and  high are integers. 
  2224.  
  2225.  smooth_weighted number 
  2226.     Do a weighted smooth.  number  is the weighting factor, an integer from 
  2227.     0-100. 
  2228.  
  2229.  smooth_no_weight 
  2230.     Do a non weighted smooth. 
  2231.  
  2232.  stop 
  2233.     This must exist outside of the begin & end pair of a Script file.  It stops 
  2234.     the Script or REXX program and returns control back to JoeView.  It should 
  2235.     be the last command sent to JoeView.  When you are using a REXX program, it 
  2236.     is slightly better to just have the REXX program do a normal exit and not 
  2237.     send the stop command. 
  2238.  
  2239.  system_colors_distance 
  2240.     Convert image to system colors using Distance Method. 
  2241.  
  2242.  system_colors_fsd 
  2243.     Convert image to system colors using Floyd Steinberg Dithering. 
  2244.  
  2245.  title_bar_toggle 
  2246.     Turn the title bar on if off or off if on. 
  2247.  
  2248.  visible & invisible 
  2249.     Hide or unhide the displayed image.  Will also turn off the palette 
  2250.     realizing when invisible. 
  2251.  
  2252.  warnings_on & warnings_off 
  2253.     With warnings off, you will not be warned about problems except for those 
  2254.     relating to memory errors which generally signify a pretty big error.  You 
  2255.     will not be warned if an unknown file format was read or if you are 
  2256.     overwriting a file. 
  2257.  
  2258.  zoom_in left bottom right top 
  2259.     Zoom in to the specified coordinates.  These are the "real" image 
  2260.     coordinates, not the displayed coordinates.  0,0 would be the lower left 
  2261.     corner of the image. 
  2262.  
  2263.  zoom_out 
  2264.     Zoom back out. 
  2265.  
  2266.  Several example scripts are included.  They are: 
  2267.  
  2268.  script1.exm  This script takes whatever image was in JoeView before the script 
  2269.  is loaded and runs it through a variety of manipulations.  Because of the 
  2270.  choice of manipulations, the original image will not be affected.  Note that 
  2271.  the image's original filename will be lost. 
  2272.  
  2273.  script2.exm  This script would read in all the files located in directory 
  2274.  c:\kermit\temp that have the extension .gif.  It would iconify each of the 
  2275.  files, and save them as jpegs after first changing the extension to .jpg.  The 
  2276.  jpeg save options would be whatever the defaults had been set to prior to 
  2277.  executing the script.  After all the files have been gone through, the last 
  2278.  image has its colors inverted twice.  Only the last image is affected because 
  2279.  the invert commands are outside the begin & end pair.  If the the 
  2280.  set_filename_extension command had not been issued, the jpegs would have been 
  2281.  saved over the orginal gifs.