home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Archive Magazine 1995
/
ARCHIVE95.iso
/
discs
/
utilities
/
utility_02
/
translatr
/
!Translatr
/
Docs
/
Guide
next >
Wrap
Text File
|
1993-03-06
|
54KB
|
1,309 lines
>Guide
-----------------------------------------------------------------------------
This program is SHAREWARE. It is *not* free software. You may evaluate it for
a two-week trial period. After this, you are required to register for further
usage, or else destroy your copy. Refer to the end of this guide for details.
-----------------------------------------------------------------------------
This application is based in part on the Independent JPEG Group's JFIF coding
and decoding software, version 4 (Dec 1992), used for reading the JFIF format.
_______________________________________________________________________________
Translator 7.14 ---------------------------
This program is SHAREWARE
Version date : 05 Mar 1993 ---------------------------
----------------
- Introduction -
----------------
Translator is a powerful tool that will convert and process image files from
other computers.
Translator will give you access to the enormous amount of graphics images
created on other computers. Powerful and fast image processing options are
available to produce special effects and/or enhance the quality of images.
---------------------
- Supported formats -
---------------------
The image file formats that are supported are summed up below.
- The 'Name' field gives the name of the format.
- The 'Pixels' field gives the resolution of the image format in pixels. A '-'
entry means there is no fixed resolution (the usual case).
- The 'Colours' field gives the number of colour bits used (i.e. 4 means 16
colours, 8 means 256 colours, etc.), and a suffix 'c' for colour images, 'm'
for monochrome images. Images with <=8 colour bits are 'palette' images, i.e.
have a colour lookup table. Images with >8 colour bits are pure colour images
and contain seperate Red, Green and Blue components per pixel.
- The 'Comments' field gives further special information.
-------------------------------------------------------------------------------
| Name | Pixels | Colours | Comments |
-------------------------------------------------------------------------------
Foreign formats
-------------------------------------------------------------------------------
GIF - 1-8c Graphics Interchange Format
TIFF Class B(ilevel) - 1m Compression none/packbits/LZW
TIFF Class G(reyscale) - 1/2/4/8m ''
TIFF Class C(olour) - 1/2/4/8c ''
TIFF Class R(GB) - 24c '' (24-bit non-planar RGB)
Amiga ILBM IFF - 1-12c Also HAM (12-bit), halfbright
Atari Degas PI1/PC1 320x200 4c PC1 is run length compressed
'' '' PI2/PC2 640x200 2c PC2 ''
'' '' PI3/PC3 640x400 1c PC3 ''
Atari GEM IMG - 1m
MacIntosh MacPaint 576x720 1m
SUN Microsystems - 1/8c None/RLE compression supported
PCX - 1/2/4/8c EGA/MCGA
QRT - 24c Quick Ray Tracer
MTV - 24c MTV Ray Tracer
Windows 3 BMP - 1/2/4/8c
Truevision TARGA - 8/15/16/24/32c
PBMPlus - 1-8m/3-24c Formats P1 up to P6
MSX2 - 8c
Unix RLE - up to 24c
FITS - 8m/16m Astronomical data format
JFIF (JPEG) - 24c/24m Discrete cosine compression
-------------------------------------------------------------------------------
Native formats
-------------------------------------------------------------------------------
CadSoft/Millipede - 8c Millipede PRISMA digitiser
Irlam - 24c Irlam I-scan scanner
Archimedes sprite - 1/2/4/8c
Arvis - 15c 2 sprite files in HIP/LOP dirs
Clear - 1/2/4/8/24c Translator's own format
Pro-Artisan 640x256 8c Compression types 0 and 1
Watford digitiser 512x256 6m
Render Bender - 8c
AIM square 8m Archimedes Image Manager
Pineapple digitiser 512x256 16c
Snapshot digitiser 512x256 12c
Zeridajh Video Digitiser - 1/2/4/8m My own video digitiser's multi-
Animation image animation file
RIX Softworks ColoRIX - 8c Uncompressed only
Wild Vision Hawk V9 - 12c
-------------------------------------------------------------------------------
-------------------------
- Using the application -
-------------------------
To start up Translator, either :
- Double-click on the '!Translatr' icon.
- Double-click on an image file, after !Translator has been seen by the filer
(only for image types in the &690 range). This will auto-load the image that
was clicked on.
It will install itself on the icon bar, and clicking MENU on Translator's icon
pops up the main menu, giving the usual 'Info' and 'Quit' options, and others,
which will be discussed further on.
------------------
- Loading images -
------------------
Loading an image may be done in a number of ways :
a) by dragging the image file to the Translator icon on the icon bar
b) by dragging the image file to the image window (when an image is loaded)
c) by double-clicking on an image file (not for 'native' Archimedes formats, to
ensure that the originating programs (when loaded) 'catch' these files, not
Translator)
d) By clicking SELECT or ADJUST on the image window while holding down CTRL.
This will reload the most recently loaded image file.
e) By clicking ADJUST on Translator's iconbar icon, which also reloads the
most recently loaded image file.
NOTE : The ArVis Videographics format consists of two sprite files per image,
of which one resides in a directory named 'HIP', the other in a directory
called 'LOP' (both at the same directory level). To load an ArVis image, drag
the sprite file in the 'HIP' directory to Translator (i.e. a or b).
Image files should be filetyped appropiately to be recognized by Translator.
The following filetypes are used by Translator (the filetypes in the range
&690-&6xx are new filetypes, mainly used for foreign formats) :
-------------------------------------------------------------------------
Filetype Name Image file type/origin
-------------------------------------------------------------------------
&004 AIM AIM (Archimedes Image Manager)
&690 * Clear Translator Clear
&691 * Degas Atari PI1,PI2,PI3,PC1,PC2,PC3
&692 * Img Atari IMG
&693 !* AmigaIFF Amiga IFF (ILBM)
&694 !* MacPaint MacIntosh MacPaint
&695 !* GIF GIF (Graphics Interchange Format)
&696 !* Pineappl Pineapple colour video digitiser
&697 * PCX PC PCX
&698 * QRT QRT (Quick Ray Tracer) RAW
&699 * MTV MTV ray tracer
&69A !* CadSoft CadSoft/Millipede PRISMA
&69B !* Irlam Irlam Instruments scanners
&69C !* BMP PC Windows 3
&69D * Targa Truevision TARGA
&69E !* PBMPlus PBMPlus (Portable Bit Map toolkit)
&69F !* ZVDA Zeridajh Video Digitiser Animation
&6A0 * MSX2 MSX-2
&6A1 !* RLE Unix RLE
&6A2 !* ColoRIX RIX Softworks
&6A3 !* FITS Flexible Image Transport System
&6A4 !* HawkV9 Wild Vision Hawk V9 digitiser
&C85 !* JPEG JPEG JFIF ***
&CC2 ! SnapShot Snapshot colour video digitiser
&D58 RendPic Render Bender
&DE2 ProArt ProArtisan
&DFA Picture Watford digitiser
&FC9 !* SunRastr SUN Microsystems
&FF0 !* TIFF TIFF (Tag Image File Format)
&FF9 Sprite Standard Archimedes sprite file (or ArVis, see above)
-------------------------------------------------------------------------
A '*' indicates which filetypes also load by method c) (see above).
A '!' indicates which filetypes can be recognized and loaded without them
having the correct filetype. You can choose to give these files the correct
filetype yourself, or leave them as they are. Every 'new' filetype (in the
&690 range) is represented in filer windows by its own icon.
*** : JFIF files are decoded by a seperate application (by the Independent JPEG
Group), resulting in a PBMPlus file. The temporary PBMPlus file will be sent to
<Wimp$Scrap>, and deleted afterwards. Image info will give PBMPlus information.
There are two sets of icons, one set for mode 20 and one for mode 12 (default).
The mode 20 icons are more detailed, and can be selected as the default by
renaming !Sprites to !Sprites12, and then renaming !Sprites20 to !Sprites.
Most icons were designed by Pieter Gosselink.
When succesfully processed, the image will appear in a resizable, scrollable
window.
-----------------
- The main menu -
-----------------
This menu, popped up by clicking MENU on Translator's iconbar icon, or clicking
MENU on an image window, contains a number of icons (some of which lead to
submenu's/windows). The functions of the icons will be discussed below.
The main purpose of the main menu is to provide access to Translator's control
window (via the 'Control' icon), which contains (in groups) most of the
available options and controls.
-------------
| Filetypes |
-------------
Gives access to a window in which the image file formats accepted by Translator
are summarized.
Clicking on this icon will make this window permanent (but it can be closed
again by clicking on its close icon).
--------------
| Image info |
--------------
This icon gives access to an information window, in which the resolution,
compression technique, filename, etc. of the current image is displayed.
Clicking on this icon will make this window permanent (but it can be closed
again by clicking on its close icon).
-----------
| Control |
-----------
Gives access to Translator's control window, which contains most of
Translator's options and controls, divided into groups.
Clicking on this icon will make this window permanent (but it can be closed
again by clicking on its close icon).
Clicking MENU on the control window pops up a menu with short-hands for all
the groups. Clicking on one 'pan's to the appropiate group.
Several types of icons appear in the control window :
- Toggle icons. These are square, and clicking on them switches the
corresponding option on (red square in its middle) or off ('closed' box).
- Writable icons. These are square icons with a border and a white background,
in which you may click an subsequently enter a value or text.
- Selection icons. These look like writable icons, but don't have a 'fancy'
border. They are preceded by a light grey coloured label indicating what is
selected. Clicking the MENU button over the selection icon enables changing
of the current value, which may be chosen from a menu.
- Button icons. These are round, and clicking on them executes some function.
They do not change their appearance when clicked on.
- 'Up/down' button icons. These are triangular, and increase or decrease some
value in the writable icon in between them. When clicking ADJUST instead of
SELECT or MENU, 'up' decreases and 'down' increases (i.e. reverse). These
icons are mainly used in the scaling and zoom groups.
The functions of the icons in the control window are discussed below. Icons are
identified by giving their 'path', i.e. group name (name on the border
surrounding the group), if appropiate followed by sub-category (medium grey
heading), followed by the icon's own name, seperated by '|'s.
\\\\\\\\\\\\\\\\\\\
Colour processing
///////////////////
In this group, options may be set that influence the way that input image's
colours are processed.
\\\\\\\\\\\\\\\\\\\\\\\\\\\
Colour processing | B & W ***
///////////////////////////
Toggles the 'Black and white' flag.
When ON, Translator changes all the image's colours to their closest greyvalues
(on a scale of 0-255).
\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Colour processing | Expand ***
////////////////////////////
Toggles the 'Expand' flag.
When ON, the range of the red, green and blue components of the image's colours
will be (equally) expanded to the full range of 0-255. This will make the image
'lighter' (in fact, it gives the image its maximum contrast).
The image info window will show the input image's intensity range, and the
percentage that this represents of the full 0-255 range.
NOTE 1 : For images that contain no palette (i.e. all 'pure' RGB images), it is
necessary for Translator to make an extra 'pass', to determine the range of
intensities present in the image. For 'paletted' images, the range can be
calculated from the palette, and no extra pass is necessary.
NOTE 2 : Set black correction to 0 when using this option. As the intensity
range is already maximised by the range expansion, any extra correction will
inevitably cause colour detail to be lost.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Colour processing | Invert ***
////////////////////////////
Toggles the 'Invert' flag.
When ON, all the input image's colours will 'inverted' (in fact, the red, green
and blue components of the colours are inverted seperately). This results in
'negative' images for both colour and black and white images.
This may be useful to correct monochrome images which have their black and
white colours 'reversed'. It is also useful to create colour effects.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Colour processing | Gamma correction ***
//////////////////////////////////////
Toggles the 'Gamma correction' flag. The gamma correction factor may be entered
in the writable icon following this icon.
When ON, input colours will have their 'gamma' corrected.
Gamma correction is needed for most 'raw' scanner input, as this input usually
has a linear scale of intensity values for red, green and blue. This has to be
corrected for display, as the phosfors on the tube of display units do not have
a linear response curve for applied voltage (i.e. intensity) versus brightness,
but rather one of brightness=constant*voltage^gamma.
A gamma factor of 1.5 to 2.5 is a suitable value for most of these situations,
but you can experiment freely with values between (say) 1 and 4, to see which
setting gives the best results.
When OFF, or the gamma correction factor is 1 (default), no gamma correction
will take place.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Colour processing | Black correction ***
//////////////////////////////////////
Toggles the 'Black correction' flag. The black correction factor may be entered
in the writable icon following this icon.
When ON, input colours will have their black level corrected.
Black correction simply adds the correction factor (which may be a +ve or -ve
integer between -255 and 255) to the 8-bit red, green and blue components of
the image's colours. This effectively adds/subtracts an amount of 'white'
to/from the image's colours (i.e. a +ve value makes the image lighter, and a
-ve value makes the image darker). Using a negative value may, for example, be
useful to correct some digitised or scanned images, where areas of black on the
original turn out too light in the device's output. A positive value may be
used to lighten up dark images.
When OFF, or the black correction factor is 0 (default), no black correction
will take place.
To enhance the fidelity of 'dark' or 'light' images, it may be preferrable to
use the 'Expand' option. See its discussion elsewhere.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Colour processing | 'Red', 'Green', 'Blue'
////////////////////////////////////////////
These three sliders may be used to control the amount of red, green and blue
of the input image's colours that is 'let through'.
The slider values for red, green and blue represent the number of bits (0-8)
of the corresponding primary colour that are 'let through' in the final image.
You can drag the sliders to change the number of bits (a full bar is 8 bits).
For example, red=8, green=0, blue=0 will give a red seperation of the input
image, i.e. only the red components of the colours are let through. Depending
on how many bits are reserved for each of the primary colours in each graphics
format (mostly 8 bits giving 24-bit RGB, but sometimes 4 bits or less), a large
range of colour effects and colour seperations can be achieved.
Manipulating these sliders also makes it possible to filter out noise bits from
24-bit RGB input, by setting all the sliders to (e.g.) 6 or 7. This makes it
easier to compress these images, and rarely degrades image quality. (This is
especially useful when converting to 24-bit TIFF with LZW compression, using
!Creator. See end of this guide).
For normal results, leave all sliders at their maximum of 8 bits.
\\\\\\\\\\\\\\\\\\\
Sprite processing
///////////////////
In this group, options may be set that influence the way the input image is
processed to the output sprite.
\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Mode ***
//////////////////////////
The output mode for the sprite may be freely chosen. This selection icon
enables you to choose the way in which the output mode is determined.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Mode | Auto
/////////////////////////////////
When this icon is ON, Translator will determine the best possible mode (and
palette) for the output sprite.
For example, for pure RGB and 256 colour images, a 256 colour mode (with at
least the required resolution) will be chosen for output, whereas if the image
has 5-16 colours, or 3-4, or 1-2, a 16, 4 or 2 colour mode respectively.
For 256 colour output, the standard palette is always chosen. For 2, 4 or 16
colour output, the image's own palette is used to determine the output palette
(the closest available colours are used).
This is the default setting.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Mode | Current
////////////////////////////////////
When this icon is ON, the current mode will be used as the mode for the output
sprite.
This can be useful when you need to have a sprite defined in a specific mode.
For example, if you wish to create a desktop icon based on some image, you
would select a 16-colour mode and select this option.
When this icon is ON, the 'Palette' icon also gives you control over the output
palette that is used (see its discussion below).
It is advisable to always use some form of error distribution (see 'Error
distribution'), so you will still reach a result as close as possible to the
original, given the possibly limited number of colours and a non-ideal palette
that has been chosen.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Palette ***
/////////////////////////////
This selection icon enables a choice to be made for the output sprite's
palette.
NOTE : This is only effective when 'Mode' (see above) is set to 'Current', as
when 'Auto' is selected, Translator determines the best possible output
palette.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Palette | Current
///////////////////////////////////////
When this icon is ON, the current palette is used for the output image.
Usually this is the desktop palette (ideal for creating icons), but by loading
a palette file or by manipulating the palette by hand (via the palette
utility), any palette may be chosen. In 256 colour modes the palette can only
be changed to a limited extent (consult the Programmers Reference Manuals).
There are some example palette files for 16 colour modes in the 'Palette16'
directory. These contain palettes that divide the 4 available colourbits
between red, green and blue (i.e. 2,1,1 or 1,2,1 or 1,1,2 respectively), and
one palette with 1 bit red, blue, green and 'tint' (amount of white).
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Palette | Default
///////////////////////////////////////
When this icon is ON, the current mode's default palette is used in the output
sprite (as following a VDU20).
NOTE : In 16 colour modes, the upper eight 'flashing' colours are not used.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Palette | Greyscale
/////////////////////////////////////////
When this icon is ON, a greyscale from black up to full white will be used as
the output palette.
This is really only useful for greyscale input images (or when the 'B & W' flag
is on, see elsewhere), as colours can obviously never be represented by using
greyshades, not even with error distribution enabled.
NOTE : This option does not work in 256 colour modes, as it is impossible to
set a 256-level greyscale palette in these modes. Instead the default 256
colour palette will be used.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Diffusion ***
///////////////////////////////
This selection icon determines the error distribution algorithm (if any) that
is used to spread out colour approximation errors over the image.
When error distribution is enabled, errors made by the approximation of the
input image's colours to the closest available output colour are spread out
(locally) over the image. This usually results in images with a much higher
fidelity, so you will usually leave some kind of error distribution on
(Floyd-Steinberg at best).
When you switch off error distribution, only the best approximations to colours
are used, and the errors made in this process will be completely ignored. You
may want to do this to compare results, or to reduce the noise introduced by
the error spreading.
NOTE : Switching error distribution off is especially recommended for <=16
colour 'drawings', which usually end up very noisy when error distribution is
enabled.
Two error distribution algorithms are available, which differ in the way they
spread the approximation errors.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Diffusion | Simple
////////////////////////////////////////
This spreads out the errors along the same pixel row only. In fact, it gives
one of its neighbor pixels the full error factor, as follows :
------------------------------------------
| | Current pixel | full error |
------------------------------------------
This is the fastest of the two, and gives very good results.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Diffusion | FS, Normal/Precise
////////////////////////////////////////////////////
Floyd Steinberg error distribution, first discovered by R.W. Floyd and L.
Steinberg, spreads the errors intelligently. It divides the error factors among
four neighbor pixels (instead of one, as in 'Simple' error distribution), as
follows :
-------------------------------------------------
| | Current pixel | 7/16 of error | <-- current line
-------------------------------------------------
| 3/16 of error | 5/16 of error | 1/16 of error | <-- next line
-------------------------------------------------
The results are usually better than when using 'Simple' error distribution, but
to which degree depends heavily on the type of input image. Digitised images
will usually benefit much less than 'hand-drawn' images. The only penalty of
this error distribution technique is that it is computationally more expensive
than 'Simple' error distribution, so you'll have to wait a few seconds longer.
- Normal v.s. Precise
When 'FS, Normal' is chosen, then, while dithering, a 4096-entry table is used
to do a direct mapping of 12-bit RGB values (masked down from 24-bit) to the
closest available colour for the 24-bit value. Although, in this way, a lot of
the 24-bit values are mapped to the same colour instead of a possibly slightly
different closer colour, this is normally very effective, and gives 99% perfect
results.
When 'FS, Precise' is chosen, no map is used, and the closest colour for each
24-bit RGB value is calculated 'on the fly', out of the available colours. This
takes a lot more time, but can give a slightly better quality image.
It makes sense to use this option for 'final sprite saves' only, and to use
'FS, Normal' or 'Simple' for viewing and experimenting.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Diffusion | None
//////////////////////////////////////
Clicking on this icon switches off error distribution. Colours are only
approximated to the closest colours available, ignoring any errors.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Zig zag ***
/////////////////////////////
Toggles the 'Zig zag' flag.
When ON, and error distribution is also ON, every other image line will be
plotted in the opposite direction, i.e. left to right, then right to left, then
left to right again, etc..
This reduces the probability of patterns appearing in the image. Sometimes,
however, the effect is not so pleasing, which is why you may switch it off.
When OFF, lines are always plotted from left to right.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Sprite processing | Correct colour ***
////////////////////////////////////
Toggles the 'Correct colour' flag.
This flag determines how Translator interprets Archimedes palette values,
both for output to sprite and Archimedes sprite file input.
When ON, Translator correctly interprets R, G and B components as 8-bit
(expanding from 4-bit if neccesary), usually resulting in slightly darker
images.
When OFF, no special interpretations are made (which may be technically
incorrect in some situations, but results in slightly lighter images).
Refer to 'Sprite colours' for more details.
\\\\\\
Misc
//////
This group contains miscellaneous controls.
\\\\\\\\\\\\\\\\\
Misc | Kill DMA ***
/////////////////
Toggles the 'Kill DMA' flag.
When ON, video and sound DMA is disabled while processing an image. This
results in temporary blanking of the screen and termination of sound. This
speeds up processing considerably, especially when working in high resolution
modes, or when playing multi-channel music in the background.
When OFF, you can still enjoy the view and/or sing along with that evergreen
while Translator is sweating on your picture and wading through the DMA.
\\\\\\\\\\\\\\\\\
Misc | GIF scan ***
/////////////////
Toggles the 'GIF scan' flag.
When ON, GIF files are pre-scanned to count the number of pictures in them.
This number will then appear in the image information. When the GIF file
contains more than one image (which is rare), you may select any one of them by
using the 'Image number' option (see elsewhere).
When OFF, GIF files are not pre-scanned, and are assumed to contain a single
image (which is usually true). This has the advantage of substantially reducing
the loading time. The image info will display a '?' instead of an image count.
I.e. only switch this flag on if you suspect or know that there are more images
in the same GIF file.
\\\\\\\\\\\\\\\\
Misc | Image #
////////////////
Entering a number in this writable icon enables selection of one of possibly
several images in an image file. Entering 'n' will select the 'n'th image in
the file. The 'up'/'down' buttons above/below it may be used to increment/
decrement the image number.
Reloading the image file (with the new image number determining which image in
it will be accessed) may be done in two ways :
a) by clicking on the button icon left of the writable icon
b) by switching the toggle icon right to the writable icon to ON, and using
the up/down buttons (i.e. this performs automatic reload)
Image files that may contain more than one image are GIF files, Archimedes
sprite files and Zeridajh Video Digitiser Animation files. When this is the
case, the image info window will indicate this (but for GIF files only when the
'GIF scan' flag is ON, see elsewhere).
When the nth image is not present, Translator will complain (except when
dealing with GIF files and the 'GIF scan' flag is OFF).
\\\\\\\\\\\\\\\\\\
Misc | Auto mode ***
//////////////////
Toggles the 'Auto mode' flag.
When ON, then, after an image has been processed, Translator will select the
most suitable mode for display of the image.
When OFF, you must choose a mode yourself.
\\\\\\\\\\\\\\\\\\\\\
Misc | Auto palette ***
/////////////////////
Toggles the 'Auto palette' flag.
When ON, Translator will select the image's palette (see 'Image palette'
elsewhere) automatically when the image first appears in its window, and after
every mode change.
When OFF, the palette remains unchanged in these situations.
\\\\\\\\\\\\\\\\\\
Misc | Auto zoom ***
//////////////////
Toggles the 'Auto zoom' flag.
When ON, Translator will zoom in or out on the image so that it fits exactly on
the display mode's screen.
\\\\\\\\\\\\\\\\\\
Misc | View mode ***
//////////////////
Toggles the 'View mode' flag.
When ON, then when the image window is closed, the 'original' mode is
automatically re-selected. This 'original mode' is set to the current mode when
loading a new image without one already loaded.
\\\\\\\\\\\\\\\\\
Misc | Mode set ***
/////////////////
This selection icon selects a specific 'mode set', or switches it off.
When one of the mode sets is made active (i.e. any other than 'None'), and the
'Auto mode' flag (see elsewhere) is ON, the mode for display of the image will
be restricted to the corresponding set of modes.
Each mode set consists of four mode numbers, which are the modes to be selected
when a 2,4,16 or 256 colour mode is required.
There are two standard sets :
- 'Normal' (modes 0,8,12 and 15, i.e. all 640x256 pixels) can be used on all
monitors.
- 'Multisync' (modes 18,19,20 and 21, i.e. all 640x512 pixels) is for users of
multisync monitors only.
The third set is user-definable : you may enter the required mode numbers in
the writable icons to the right of the 'User mode set' icon (2,4,16 and 256
colour modes respectively, from left to right).
Selecting 'None' will switch off the mode set option, so that, when the 'Auto
mode' flag is ON, the 'closest' mode will be selected out of the total set that
is available.
\\\\\\\\\\\\\\\\\\\\\\
Misc | User mode set ***
//////////////////////
Enables selection of mode set members. See 'Misc | Mode set'.
\\\\\\\\\\\\\\\\\\\\\\
Misc | Auto filetype ***
//////////////////////
Toggles the 'Auto filetype' flag.
When ON, files that do not have the correct filetype, but are recognized by
contents, are set to the correct filetype automatically.
\\\\\\\\\\\\\\\\\\\\\\\\
Misc | Desktop colours ***
////////////////////////
Toggles the 'Desktop colours' flag.
When ON, Translator attempts to arrange the colours with which the image is
displayed on-screen in such a way that menu's, windows, etc. remain visible.
When OFF, colours are not re-arranged, which *may* make things badly visible,
but usually gives a somewhat faster image redraw because no translation
table is needed.
\\\\\\\\\\\\\\\\\\\\\\
Misc | Image palette
//////////////////////
Clicking on this button icon (re-)selects the palette of the output sprite.
The output sprite's palette is selected by default when the 'Auto palette' flag
is ON, both after the image has been processed, and after changing screen mode.
NOTE : selecting the output sprite's palette may make things badly (or not at
all) visible (e.g. menu's, etc.). Re-selecting the image's palette may be
necessary after using the desktop's palette utility (e.g. 'Default') or when
some other application has changed the palette.
See also 'Desktop colours'.
\\\\\\\\\
Scaling
/////////
The controls in this group allow you to define the scaling to be performed on
the input image.
Scaling in x (horizontal) and y (vertical) directions may be performed
independently. The scaling factors consist of a multiplier/divisor pair, the
values of which may be entered in the corresponding writable icons in this
group (the multiplier is in the left icon, the divisor in the right).
There are two different types of scaling, one of which may be selected by
using one of the selection icons on the far right :
- The 'Absolute' form ('Abs')
When this is selected, the scaling ratio is always indicated as
'multiplier:divisor'.
Any subsequently loaded image will be scaled by the ratio defined by
multiplier/divisor. For example, when subsequently loading two images with
resolutions of 640x512 and 100x200 pixels, then a scaling of '1:2' for both x
and y will result in images that are 320x256 and 50x100 pixels respectively.
- The relative form ('Rel')
When this is selected, the scaling ratio used depends on the resolution of the
subsequently loaded image, and is indicated as 'multiplier:x' or 'multiplier:y'
for x and y respectively.
Any subsequently loaded image will be scaled by multiplier/ires, where ires is
the (x or y) resolution of the image (which is why the 'x' or 'y' appears
instead of the divisor value : the divisor value depends on the resolution of
the image). This will always result in images which are exactly 'multiplier'
pixels high and/or wide.
For example, the aforementioned images of 640x512 and 100x200 pixels, when
setting the x multiplier to '80' and the y multiplier to '40', will both come
out at 80x40 pixels.
- Fixed scaling ratio's
Fixed ratio's may be chosen from a menu which pops up when clicking MENU over
the 'X' or 'Y' icons. Any choice forces the 'Absolute' form.
- Miscellaneous remarks
It is perfectly possible to use the relative form for one of x and y, and the
absolute form for the other.
When scaling without error distribution being active, pixels are simply
discarded (when scaling down) or duplicated (when scaling up). It is usually
wise to enable error distribution to preserve image fidelity.
\\\\\\\\\\\\\
Zoom sprite
/////////////
With the controls in this group the output sprite may be zoomed (note there
is also an easier way to examine the sprite : see 'Manipulate sprite').
The zoom controls are similar in style to the ones in the 'Scaling' group. The
X and Y zoom ratios may be entered seperately, the up/down buttons
increment/decrement the multiplier/divisor.
To let directly entered zoom factors take effect, click on the button at the
far left of the group.
The image window's title will indicate how much the original image is enlarged
or reduced, by showing a percentage after the image's pathname.
- Fixed zoom ratio's
Fixed ratio's may be chosen from a menu which pops up when clicking MENU over
the 'X' or 'Y' icons.
\\\\\\\\\\\\\\\\\\\
Manipulate sprite
///////////////////
This is a group of controls with which the output sprite's orientation may be
manipulated.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Manipulate sprite | 90░/180░/270░
///////////////////////////////////
Clicking on one of these buttons will rotate the output sprite clockwise by 90,
180 or 270 degrees respectively.
This may be used to correct images that are on one of their sides, or may be
convenient with high-and-narrow images (especially on normal monitors), so more
of the image can be on-screen without you having to use the scroll bars.
\\\\\\\\\\\\\\\\\\\\\\\\\\\
Manipulate sprite | ~X/~Y
///////////////////////////
Clicking on one of these buttons will mirror the output sprite horizontally or
vertically respectively.
\\\\\\\\\\\\\
File output
/////////////
This group contains controls with which the image may be saved as a Sprite
file, or captured in a Clear file.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
File output | (Clear filetype icon)
/////////////////////////////////////
A Clear file may be opened by dragging the filetype icon to a directory viewer.
The leafname for the Clear file may be entered in the writable icon below the
filetype icon, but see also 'Same name' below.
The image *subsequently* loaded will be translated to (and saved in) this Clear
file (because a Clear file has to be built 'on the fly' to avoid losing image
detail). Refer to 'Clear files' for more information.
Clear files preserve all image detail (in contrast to sprite files), and can be
used as the basis for further editing and conversions to other formats with
!Creator (refer to the end of this guide).
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
File output | Same name (Clear) ***
/////////////////////////////////
Toggles the 'Same name' flag for Clear files.
When ON, then *after* the image has been fully translated to a Clear file, the
leafname of the Clear file will be renamed to the leafname of the image file
that was loaded.
When OFF, the leafname of the file will be the one entered in the writable icon
below the Clear filetype icon.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
File output | (Sprite filetype icon)
//////////////////////////////////////
The currently loaded image may be saved in a sprite file by dragging the
filetype icon to a directory viewer.
The leafname for the sprite file may be entered in the writable icon below the
filetype icon, but see also 'Same name' below.
\\\\\\\\\\\\\\\\\\\\\\\\\\\
File output | Add palette ***
///////////////////////////
Toggles the 'Add palette' flag.
When ON, the output sprite's palette will also be saved in the sprite file,
else no palette will be saved.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
File output | Same name (Sprite) ***
//////////////////////////////////
Toggles the 'Same name' flag for sprite files.
When ON, the input file's leafname will automatically appear as the default
leafname for the sprite file to be saved.
This may be convenient when converting a large number of images.
-------------
| Magnifier |
-------------
Clicking on this icon pops up the magnifier window. The magnifier window shows
a (magnified) part of the output sprite. It enables you to examine areas of the
output sprite with ease.
By clicking either SELECT or ADJUST within the image window, the area around
the point clicked on will appear in the magnifier window, with this point
itself in the middle. You can shift through the image simply by holding the
button down and moving the pointer.
The magnifier window starts up at 1:1 magnification. The magnification may be
increased/decreased by holding SHIFT and clicking SELECT (increase) or ADJUST
(decrease) on the image window. Holding Shift and clicking the MENU button
will select 1:1 magnification.
----------
| Status |
----------
This icon gives access to a submenu of status handling functions.
Translator's 'status' consists of all the items marked ***.
- Save
Clicking on this icon will save the current status in Translator's status file.
This file (when present) is always loaded on startup, or may be explicitly
loaded by using the 'Load' option (to override the current status).
- Load
Clicking on this icon explicitly (re-)loads the status file, overriding the
current status.
- Default
Clicking on this icon selects the default status settings.
- Kill
Clicking on this icon will remove the status file. 'Standard' defaults will
be used when Translator is next started up.
-----------------
- The hourglass -
-----------------
The hourglass is normally displayed when any processing is done.
A number from 0-99 will be displayed in the hourglass to indicate the
percentage of image lines that has been processed so far.
In addition, during image processing, the top 'LED' will be 'on' when data is
being loaded from the input image file, or the bottom 'LED' will be 'on' when
data is being saved to a Clear file. They will both be 'off' when processing is
taking place.
---------------
- Clear files -
---------------
Translator can output its own graphics file format, called 'Clear' (filetype
&690). I devised this (simple to use) new filetype because of several
shortcomings of the Archimedes and sprite files :
- Too few colours : pure RGB input (Amiga IFF HAM, QRT, ArVis) at best ends up
in a 256 colour sprite on which error spreading has been applied. A lot of
the image's colour resolution is lost.
- Too few R/G/B bits : the resolution of the Archimedes red, green and blue
colour DAC's is only 4 bits, so it can't display more, and sprites can't
*effectively* store more. This means that any extra bits (>4) of red, green
and blue colour definition in input images is lost.
- Palette restrictions : because it is not possible to freely define all 256
colours in 256 colour modes, input images with more than 16 colours (which
end up in 256-colour sprites) will practically always need error spreading.
This again loses colour definition.
Without being able to output a 'fully accurate' filetype, it would thus be
impossible, in most cases, to retain the full colour resolution of input
images. This may be essential if the images that Translator can read are to be
put to more serious use, for example image manipulation, or conversion to other
formats (refer to my other application !Creator).
Also, I envisaged that it should be very easy to extract the image data from
this 'fully accurate' format, so people can quickly and easily write simple
programs to process it (i.e. no compression, no 'pixel value packing', etc.).
The 'Clear' graphics format was devised because of all this, and holds either
pure 24-bit RGB data or byte-wide pixel values with a 24-bit RGB palette (one
entry per pixel value).
The full format is as follows (the descriptions are necessarily 'formal' to
avoid misinterpretation, the format is actually extremely simple) :
Offset Bytes Description
-------------------------------------------------------------------------------
0 m String (e.g. 'Translator') to indicate the maker, or some other
comment (e.g. date, image contents, whatever)
m 1 0 (string terminator)
m+1 4 Version number *100 (or any other informational value)
m+5 4 Width of image in pixels (w)
m+9 4 Height of image in pixels (h)
m+13 4 Bits per pixel (bpp)
- If 1<=bpp<=8, then 24-bit palette entries for all colours
follow (i.e. n=3*2^bpp, and l (bytes per pixel) is 1).
- If bpp>8, then pure 24-bit RGB is stored, which needs no
palette (i.e. n=0, and l (bytes per pixel) is 3)
m+17 n Palette entries for all colours (only if 1<=bpp<=8), which
are triples of byte values (0=off, up to 255=full intensity),
one byte per primary colour, red first, then green, then blue.
For example, when 'Rx','Gx' and 'Bx' represent the intensities
of red, green and blue respectively for colour x, the palette
for 4 colours (bpp=2) would be stored : R0,G0,B0, R1,G1,B1,
R2,G2,B2, R3,G3,B3.
m+17+n w*h*l Pixel values, representing the image rows from top to bottom
and within every row the pixels from left to right.
- If l=1, every pixel value is a byte representing the colour
number/index.
- If l=3 (pure 24-bit RGB), data is stored like the palette
entries, i.e. red first, then green, finally blue, all byte
values (0-255) representing the intensity of the corresponding
primary colour for that pixel.
----------------------------------------------------------------------------
In the case of pure 24-bit RGB storage (i.e. bpp>8), bpp represents the bits of
RGB resolution of the original image (i.e. 12 for Amiga IFF HAM mode, 15 for
ArVis and 24 for QRT currently). If there are less than 8 bits per primary
colour, lower bits are set to 0 (but do not try to deduce how many per primary
colour if you don't know what the original image was).
For example, in the case ofáArVis' 15 bits RGB (5 bits each for red, green and
blue), the lower three bits of red, green and blue for each pixel are set to 0
when Translator creates the Clear file.
When 1<=bpp<=8, only the lower 2^bpp pixel values of the 256 available are
used.
Clear files are always 'pure' representations of the input images, i.e. they
represent the image exactly 'as it is'. They are thus independent of Archimedes
mode and palette, error spreading, etc.. Their palettes (if any) are full scale
24-bit RGB, as calculated *after* applying all colour manipulating options
(which are all in the 'Colour' submenu) to the input image's colours. To have
an exact reflection of the input image in the Clear file, you would switch off
all these options.
IMPORTANT NOTE : When the 'Black and white' option is ON, then where an RGB
(i.e. non-paletted) Clear file would normally result (with R=G=B), instead a
grey-paletted 8-bit Clear file is output. This is to save space, and to enable
easier conversion to formats that do not support non-paletted images (i.e.
GIF).
The image inside the Clear file will also have been scaled as appropiate, so
that you may easily create Clear files of, for example, a specified number of
pixels (e.g. 256x256, which is required for further conversion to the AIM
format, using !Creator. Refer to the end of this guide).
-----------------------
- Memory requirements -
-----------------------
Translator starts up taking a minimum amount of RAM. As and when images are
loaded/discarded, extra memory is claimed/released, as follows :
- When an image is loaded, all available memory is grabbed (to ensure maximum
file buffer sizes), and an attempt is made to load the image. When there is
too little memory available, Translator will complain, and possibly say how
much more free memory is needed.
- After loading (which may or may not be succesful), all memory that is not
needed anymore (i.e. all but the internal image sprite) is returned to the
system.
- When an image is discarded, i.e. by closing the image window, the memory
taken up by the internal image sprite is also released.
This memory allocation strategy ensures that
a) All available memory is used to speed up processing
b) Translator runs in the minimum amount of memory needed
c) You do not need to worry about how much memory to allocate to Translator
when you start it up
NOTE : In general, depending on image sizes, more free memory means faster file
loading and saving and thus processing. Do not 'choke' Translator by leaving
just a few K's free.
---------------------
- Mode independence -
---------------------
When the 'ideal' mode for display of the output sprite cannot be selected
(usually because of screen memory shortage), a beep will sound and Translator
will try succesively lower resolution modes with the right number of colours
(as, within the WIMP environment, there is at present no secure way of finding
out how much memory can and will be allocated to the screen).
Once an image has been created, it can, in principle, be displayed in any mode.
In modes with the 'wrong' number of colours, Translator attempts to display the
image as well as possible, as follows :
- If the number of available colours is larger than the required number of
colours for the output sprite, the 'lower' part of the palette is set (<=16
colour modes) or (256 colour modes) the standard palette is set and the
closest available standard colours are selected.
- If there are too few colours (i.e. only in <=16 colour modes), the number of
colours is reduced by using an algorithm called Heckbert quantization. This
intelligently determines a set of colours (and a mapping from the image
colours to this set) so that the total error made over the whole image is
close to minimal. This usually gives acceptable results.
------------------
- Sprite colours -
------------------
The DACs in Archimedes' VIDC have only 4-bit resolution. Yet Acorn decided to
record R, G and B components of sprite colours as 8-bit values, but only uses
the top 4 bits because of the VIDC limitations.
Also, internally, Translator calculates in 8-bit accuracy for R, G and B
intensity values. This poses two interpretation problems :
a) How to interpret a value of, say, &F0 (only top 4 bits used) for R, G and B,
when used as a colour in the output sprite. On screen, this is 'full white',
but internally, it is a light shade of grey, not full white (which is
represented by R=G=B=&FF).
b) A similar problem occurs when reading, say, the same palette value in an
Archimedes sprite file which is used for input. Is it 'full white' or a
light shade of grey ?
A solution to this problem is, when faced with a 'only top 4 bits significant'
intensity value, i.e. &x0, to copy the higher nibble into the lower, making
&xx. Continuing the above example, this correctly interprets &F0 as &FF, i.e.
full white. In fact, this method ensures a correct interpretation of all 4-bit
significant colours. I refer to this process as 'correction' of the palette
values.
The 'Correct colour' flag determines if this correction takes place (ON), or
not (OFF).
When no correction takes place, images will turn out to be slightly lighter
than when correction does take place. This is because the output sprite colours
are interpreted slightly 'darker' (&x0 instead of &xx), making the error
factors in the error spreading process slightly higher. This again causes
lighter colours to be chosen to compensate.
When an Archimedes sprite file is used as input, and the R, G and B components
of the palette entries do *not* have all their lower nibbles set to zero,
Translator assumes that they are 8-bit values, and does not correct them.
---------------------
- Sprite file input -
---------------------
Archimedes sprites may not have a palette. If they don't, the standard palette
setting in the sprite's mode is assumed.
Also, if the mode contained in the sprite is a valid one (i.e. it is a valid
WIMP mode and it is available on your monitor), then this is used by default.
If the mode is not valid, then the 'closest' mode is determined and used as
usual.
There's also a problem in interpreting sprite file's palette entries. Refer to
the discussion of the 'Correct colour' flag for more details.
----------------------
- Creator & GreyEdit -
----------------------
These applications, which were also written by me, are essential companions to
Translator.
Creator creates a number of (mainly foreign) graphics formats, accepting Clear
files and sprite files as input. It can create GIF, TIFF, AIM and PBMPlus
formats at present. This enables you to port images to a large number of other
computer platforms.
GreyEdit can process and edit 256-level greyscale (digitized) images. In
addition it can grab video images from the Zeridajh Video Digitiser podule,
when this is present. Several extremely fast filter algorithms, histogram
equalization, range expansion and inversion may be applied to whole images.
In addition, noise pixels may be edited by hand, and sides of images may be cut
off, optionally aided by zoom functions for precise editing.
Creator and GreyEdit are available from the address mentioned below and are
part of my shareware image processing package.
-----------
- The end -
-----------
This application is Shareware, and part of the image processing package
consisting of !Translator, !Creator and !GreyEdit.
I have put a lot of effort and time into these programs. Therefore, if you find
any of them useful, I kindly ask you to register yourself as a user of these
programs. The registration fee is just 35 dutch guilders. You will receive a
free disc with the latest versions of Translator, Creator, GreyEdit, and most
of my other applications.
You may not use or have this software in your posession beyond a two-week trial
period without registering.
Services that offer software for download (BBSses, mail servers, ftp sites,
etc.), and PD/Shareware libraries and the like, may *not* store this software
without my approval.
If you want to register, or if you have praise, complaints, comments, bugs(!),
or anything else to offer me, do not hesitate to write to
John Kortink
Nutterbrink 31
7544 WJ Enschede
The Netherlands
or try email to john@dialis.hacktic.nl.
Payment NOTE
------------
Payment in CASH ONLY PLEASE, in any currency, for the equivalent of 35 dutch
guilders (England ú10). The only exceptions may be (in order of preference) :
a) A Eurocheque, for 35 dutch guilders, *with* pass-number on the back
b) Postal exchange for 35 dutch guilders
c) Any other form of payment, which gets charged by the bank, but which I'm
happy to accept if I end up with 35 dutch guilders after bank charges.
Typical bank charges are ú8 on any non-a) payment.
Updates NOTE
------------
If you want Translator or Creator to handle a new format, always send me full
information, and several example files.
For registered users, new versions of the applications are available from the
same address : just send ú1 to cover postage and a self-addressed envelope
containing a formatted 3.5" disc. You will receive the latest versions. Discs
will always be returned immediately, and will not be put 'on hold' awaiting
new versions.
NOTE : I will *not* send new versions to unregistered users. Ask yourself if
you wouldn't be better off registering, if only to get new versions easily.
Happy imaging !!!
_______________________________________________________________________________
!!! NOTE !!!
You may NOT change this application or use ANY part of it in other products
without my approval. You may spread it freely (with *ALL* files included), but
not for any profit. This software is provided 'as is'. Using it is entirely at
your own risk.
This application may NOT be distributed as an 'extra' in commercial products.
You are kindly invited to contact me to discuss financial details, should you
want to do so.
_______________________________________________________________________________