ΫΫΫΫΫ» ΫΫ» ΫΫΫΫ» ΫΫΫ»
ΫΫΙΝΝΌ ΘΝΌ ΫΫΙΝΫΫ» ΫΫΊ
ΫΫΫΫ» ΫΫ» ΫΫ» ΫΫ» ΫΫΫΫΙΝΌ ΫΫΫΫ» ΫΫΊ
ΫΫΙΝΌ ΫΫΊ ΘΝΫΫΙΝΌ ΫΫΙΝΌ άάΫΫΊ ΫΫΊ
ΫΫΊ ΫΫΊ ΫΫΙΝΫΫ» ΫΫΊ ΫάΫΫΫ» ΫΫΫΫ»
ΘΝΌ ΘΝΌ ΘΝΌ ΘΝΌ ΘΝΌ ΘΝΝΝΝΌ ΘΝΝΝΌ Version 2.8a
created by Marian Dvorsky
1. Introduction
ΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ
Sometimes you need to use many bitmaps in your programs. But they can
have different palette. And when you put them on a screen, you don't know
which palette you have to use. (you can use only one 256 color palette)
So, they all can't have right colors.
With this program, you can solve this problem.
2. Are there any limits?
ΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ
Yes, of course. We are still talking about 256 (8 bit) colors. So all
bitmaps must have together just 256 colors (all same or similar colors are
in palette just once) (for 16, 24 or 32 bit, you don't need palette
i think).
For g method - all files must have together 65535 used colors.
Sure, they can have more than 256 (for s method) or 64k (for g method) colors,
but they will be ignored.
3. How this program really works?
ΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ
First of all, you must have common palette - the same palette for all
your bitmap, which you want to have on screen at once. You can create
this common palette "by hand", or leave it to FixPal. If you will leave
to FixPal, you have two options:
- sequential or guess method (default).
Guess method produces better results but it's a little bit slower.
Sequential search
ΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔ
This method reads input files and saves all used colors. All same
(or similar, when using color tolerance) color is saved only once. That is
why is it called sequential - it reads pixel by pixel and saving it's
color. If that (or similar) color is already in common palette, it don't
puts it there, otherwise it's saved to common palette. When 255 (or value
specified with -m) colors are currenly in common palette, palette reading
will exit.
Accepted color tolerance (-s parameter) values are from 0 to 255
(255 is maximum tolerance - there will be only one color).
Transparent color is by default all colors with rgb 0,0,0, not color 0.
(but you can set it with -T or -t parameter).
Guess method
ΔΔΔΔΔΔΔΔΔΔΔΔ
If you don't want to bother with things like color tolerance, etc. you
can leave all work on this guess method. It will read all palettes of all
files and then choose the most different colors. This method produces
good results I think, so I recommend to try it first.
Custom
ΔΔΔΔΔΔ
If you don't want FixPal to create common palette you can specify your
common palette which will be used.
You can create this input palette with palette editor (Run fixpal.exe
with 'e' command. See editpal.txt for details)
After creating common palette with one of previous methods this program
reads all input files again and replaces original color vaules of original
palette with new ones with "which new color in common palette fits best"
method. (this step is omited when you use -p parameter)
To get the best result you could try all methods combining with
different finding best color method algorithm. (-f parameter)
When processing true/hicolor images you have two options. The first
(default) is VERY slow but produces good results. FixPal works with
hi/truecolor files like every other 256 color file (that means to go
pixel by pixel, saving different colors and then remapping in new
palette). Second option is to use -r parameter. FixPal then reduce
true/hicolor image to 256 color image first and after THAT does the other
things. (like saving colors, etc.) This is a LOT faster but not always
does the best.
4. Which files can you use?
ΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ
If you specify output palette file, then it can be TGA, PCX or BMP file
(can be used with grabber). Input files can be TGA, PCX or BMP 8,15,16,24
or 32 bit color files.
You can use filelists as parameter. Filelists are text files with one file
(not wildcard) per line. Add char '@' before filelist filename. See example
few lines below.
5. How to use this program?
ΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ
Syntax: fixpal.exe [method] infile [infile [infile]...] [options]
method - method you want to use:
s - Sequential search
g - Guess method (default)
c - remap to specified Custom palette
infile - graphic file(s) in format tga,pcx,bmp
(use wildcard, ie. *.bmp, or filelist (add '@' before
filelist name))
Options:
-pfilename : saves palette ONLY to specified file
-mcol : set max number of colors in palette
-fx : finding best color method
a - my method
b - method by Shawn Hargreaves
-tr,g,b : set rgb structure of original transparent color
-ntr,g,b : set rgb structure of new transparent color
-llogfile : creates logfile
-r : reduce hi/truecolor files to 8 bit before processing
for method s
-Tc : set original transparent color (can't combine with -t)
-sc : set color tolerance (0-255)
for method c
-ifilename : re-map bitmaps' color to palette in this file
Example: fixpal.exe s *.bmp *.tga bitmap.pcx @myfiles.txt -ppaleta.tga -s10
6. Changes
ΝΝΝΝΝΝΝΝΝΝ
== Version 2.8a ==
- fixed very ugly bug in 'c' method
== Version 2.8 ==
- editpal improved (added cut, copy, paste, insert, gradient and inverse)
== Version 2.7 ==
- few bugfixes in editpal
- method is now optional (default method is g)
- when you use -p parameter it will not remap colors to new palette
- when reading palettes from 8 bit files, it scales r,g,b to fit in
range (0-255) not (0-63) - that was done because of hi/truecolor files
- because of previous fix, color tolerance accepted values are from 0-255
and in -t and -nt parameters you have to use 0-255 for r,g,b
- added -l parameter to save logfile. Maybe I will save some useful
information there in future. ;)
- added -r parameter - with this parameter turned on you will get same
results with true/hicolor images as in previous version
== Version 2.6 ==
- improved guess method - now it produce better results - try it!
- improved speed
- new parameter -d - use it, if you want fixpal only create common
palette
- hi/truecolor input files supported (and tested)
- changed my "bestfit" algorithm to 3d color distance
- added filelist support
- minor bugfixes
== Version 2.5 ==
- fixed bug in specifing file with directory name
- new method for creating common palette
- ready to add new "best fit" algorithms
- improved palette editor (hope you'll like it)
== Version 2.1 ==
- fixed bug in editpal, which didn't saves palette changes
- there was repaired an error, so when you didn't use -i parameter you
didn't get right colors
- fixed bug in parameters reading
- you can now enter more than one wildcard/file
== Version 2.0 ==
- added PALETTE EDITOR (see editpal.txt for detials)
- added PCX and BMP support
- better algorithm for finding the most similar color
- you can now specify your own common palette and
all bitmaps' colors will be re-maped in it (very useful, though)
== Version 1.5 beta ==
- setable max number of colors
- better transparent color support
- color tolerance
== Version 1.0 - first official release ==
- added Allegro support
- now it recognize same colors
- many, many changes
7. Future
ΝΝΝΝΝΝΝΝΝ
I want append following in next release:
- FixPal Graphical interface
- Windows version
8. Copyright
ΝΝΝΝΝΝΝΝΝΝΝΝ
This program is now freeware. You can distribute it in any way, but always
with fixpal.txt and editpal.txt.
9. Thanks list
ΝΝΝΝΝΝΝΝΝΝΝΝΝΝ
Thanks goes to all who made Allegro, the best free graphic library for
DJGPP out there. (http://www.talula.demon.co.uk/allegro)
I want also thank to Grzegorz Adam Hankiewicz, who helps me with testing
FixPal.
10. Contact
ΝΝΝΝΝΝΝΝΝΝΝ
Any comments? Suggestions? Questions? Write them to my e-mail:
mdvorsky@dodo.sk, or to my snail-mail:
Marian Dvorsky
Rosna 1
040 01 Kosice
Slovakia
For newest version go to http://www.step.sk/marian/fixpal.htm