RISC OS 3.7 User Guide
ChangeFSI stands for 'Change Floyd Steinberg Integer' ( ChangeFSI performs Floyd Steinberg error diffusion dithering).
You should make sure that your conversion and subsequent use of an image does not infringe on any copyright that the image may be under.
ChangeFSI can read image data, scale the data to improve an image, change the x and y size, sharpen an image and write the result using error diffusion dithering in one step (so it provides the best possible quality). All operations are carried out with 32-bit fixed-point numbers (three per pixel in the case of a colour picture).
Note: ChangeFSI may not retain transparent sprite pixels during processing. Transparent pixels can be changed to a colour, depending on the screen mode (e.g. transparent pixels in a 16-colour sprite become white in a 256-colour sprite).
ChangeFSI can also convert sprites or JPEGs from one display resolution into another. Be careful, though: every time you recompress a JPEG file it loses some information. Process a file first, and only save it as a JPEG once, right at the end.
There are some JPEG files available which don't conform to the standard convention. Although some of these files are accepted by !ChangeFSI, others will not be. If you find this to be the case try setting the file's type to JPEG (C85) before giving it to !ChangeFSI.
Files and what's in them:
CmdBasUse
: Syntax for using ChangeFSI from the command line, and for calling it from BASIC programs.
DesktopUse
: Instructions for using ChangeFSI from the desktop.
Formats
: Details of formats that ChangeFSI can use as input or output.
JPEGInfo
: Standard information about JPEG processing (taken from the Independent JPEG Group's JPEG software).
Theory
: Theoretical explanation of how ChangeFSI works, likely only to be of interest to advanced users.
256sprites
: Information for programmers about creating, recognising and displaying a sprite with a 256-entry palette.
Scale 1:1 1:1 gives a full-sized image (the same dimensions as the original). The other Scale options set different preset scaling ratios.
Custom gives you finer control over the size of the output image. You can either set your own scaling ratio by filling in all four boxes, or you can set the size in pixels by filling in the left x and y boxes only, leaving the right boxes blank.
Scale to fill scales the image so that it covers the entire screen area at the current display resolution; this may distort the aspect ratio.
Ignore source pixel size ignores any source information about the pixel size. This can be useful if you have images that use a non-standard pixel size. The pixels are all considered to be square.
Ignore pixel aspect ignores all the size information in the source file. Both source and output pixels are considered to be square.
Lock picture aspect prevents the Scale to fill and Custom options from stretching the image horizontally or vertically. The output image will fit within the size you specified; it may be smaller than you asked in one direction only, to avoid changing its aspect ratio.
Rotate can shift an image through 90° (+90 is anticlockwise).
Mirror performs left/right and up/down mirror operations on an image.
If you select Rotate and Mirror, the rotation is performed first.
Expand dynamic range will expand the range of colours in the image. This normally brightens the image. It expands the dynamic range of a picture to full scale.
Histogram equalisation will most often result in a worse picture but it can be used to recover detail from an otherwise useless image. Alternatively you can use it to look at information locked in a small part of the input scale.
Disable dithering will disable Floyd-Steinberg dithering. This will usually result in an inferior image.
Invert input will result in your colour images having their colours inverted. Black and white images are also inverted.
Brighten picture will produce a picture that is slightly brighter than it should be. Useful if you have dark pictures. This option only works with monochrome pictures.
Black correction is useful if you want to print the image on a laser printer. You should use a number between zero and 128, though values between 32 and 64 usually give the best result; experiment. Images treated in this way will give a poor result when viewed on screen. This only works for 1bpp (black and white) output.
Gamma correction is used to correct the image quality as displayed on your monitor. Low values of gamma (0 to 1) make colours darker and high values (above 1) make them lighter. Gamma correction is most often used to correct images that have been scanned in with a scanner. Different monitors may need different Gamma Corrections. A standard value is 2.2 (TV industry standard).
Pre-sharpening is used to sharpen the edges of objects in the image. Values between 10 and 20 can be used to sharpen an image. Values between 20 and 30 can be used to compensate for the blurring introduced by the dithering process.
For example, a value of 24 will counteract the general dither blurring. A value of 20 is noticeably sharp. All values from 1 to 99 can be selected.
Smoothing does the reverse of sharpening; it smoothes the edges of objects in the image. You can use values between 1 and 23, with low values giving the most smoothing. Values between 1 (the default) and 3 can be used to blur an image. Values between 3 and 10+ can be used to reduce noise in an image.
Colour gives an image in colour.
Monochrome gives an image in shades of grey.
Special allows the use of special file suffixes. These are the same as the <mode>
parameter described in the on-line documentation file CmdBasUse
.
Use current mode outputs the image for display in the current desktop Display manager mode.
Old mode allows you to output the image for display in an old-type screen mode:
Enter a backward-compatible screen mode number. We don't recommend that you use this method (it is overridden if you set a colour mode and then use the Monochrome button).
The Mode number is only useful in old-type screen modes. It's an information box (you can't enter anything into it). When Use current mode is selected, the mode number generated with new style screen displays has no significance.
Colours: The two rows of 2, 4, 16, 256, 32K and 16M buttons set the number of colours in the output image. The top row beside the square box chooses a square pixel mode, and the lower row beside the oblong box chooses a non-square (90 x 45dpi) screen mode. For monochrome output the 2, 4, 16 and 256 buttons set 2, 4, 8 and 16 greys respectively, and you cannot use the 32K and 16M buttons.
Colour gives an image in colour.
Monochrome produces a monochrome image.
Quality can take any value from 0 to 100 and is passed to the JPEG compression code. The default value is 75, but you can change this using Save choices. The default value gives a sensible compromise between quality and compression.
Image Info gives the information about the output file.
Source Info gives the information about the source file.
Range Info gives you information about the dynamic range of the image.
Zoom allows you to change the magnification of the image. This is not the same as scaling the source image.
Save image allows you to save the image as a Sprite file or JPEG file (this depends on the setting in Output Options - see page 346).
Reprocess allows you to process the image again using any options you have changed on the main menu.
Image types and how to recognise them:
Note: If you get a 'Number to big' error message while trying to display a TIFF file, or 'Division by zero' with an IFF file, then try setting the 'Ignore source pixel size' and/or 'Ignore pixel size' options. Also try setting these options if the proportions of an image (for example from an IMG file) are not what you expect.