Table of Contents
- 1. Introduction
- 2. Color Palettes and PaletteWB
- 3. PaletteWB's Graphical User Interface
- 4. PaletteWB Actions
- 5. PaletteWB's Dialog Presets Database
- 6. Contact and Further Information
- A. Supported Palette Types
- B. Formatted String Variables
- C. Key Shortcuts
- D. Included Palettes
- E. Presets File Format
- F. Selection File Format
PaletteWB is a software program for generating, importing, browsing, manipulating, applying, converting, and exporting color palettes and for interacting with indexed images. PaletteWB is a color palette workbench and supports indexed images beyond 8 bits and 256 colors. It runs under Microsoft Windows.
This document is the user manual for PaletteWB, version 2.0. It contains information that explains what PaletteWB was designed for and how to use it.
In particular, PaletteWB allows for:
-
Importing palettes from different formats, including GIMP palettes (*.gpl), Adobe Photoshop palettes (*.aco), Fractint palettes (*.map), Microsoft palettes (*.pal), hexadecimal color list (*.hextxt);
-
Exporting palettes to the before named formats, and additionally to images, and user-defined text formats, including presets for json, JavaScript, CSS, or HTML;
-
Browsing through a database of almost 700 palettes with instant image coloring;
-
Generating palettes using a cosinus-based approach or by interpolating between colors;
-
Adjusting palette colors using filters such as adjusting brightness and contrast, adjusting hue / saturation / value, blurring, or tinting;
-
Reordering palette entries by shifting, sorting, inverting the order, or applying diverse patterns;
-
Applying palettes to images in batch, batch palette conversion, and animation export;
-
Generating images - Julia or Mandelbrot fractals, and different Noise functions.
Above all, PaletteWB supports not only 8 bit indexed images, but as well ones with indices of up to 65536 entries or continuous, floating point color assignment.
PaletteWB was tried to be designed to please its users. We hope for a feedback on this. Please give us a notice about your experience with PaletteWB using the contact possibilities located at http://www.palettewb.com/. We would also be very lucky to be informed about errors within the application or mistakes in the documentation.
This user documentation is structured as following: Chapter 2 gives an introduction into color palettes and what PaletteWB is. Chapter 3 describes how PaletteWB's graphical user interface is divided into different components. Chapter 4 describes all actions PaletteWB is capable to perform. Chapter 5 explains PaletteWB's presets database that holds presets and may store user settings for many of PaletteWB's dialogs. Chapter 6 points to further resources and to the possibilities to contact us. The document closes with appendices, namely Appendix A: Supported Palette Types, Appendix B: Formatted String Variables, Appendix C: Key Shortcuts, Appendix D: Included Palettes, Appendix E: Presets File Format, and Appendix F: Selection File Format.
Initially, computer images ("bitmaps") had a limited number of colors. Each pixel was not holding a value for red, green, and blue (RGB) respectively as nowadays, but was rather pointing to a color in a color table. Such image formats, where each pixel points to an entry in a color palette are called "indexed images". The color table itself is called "palette", "color map" or "color palette". Sometimes, they are also called "gradients" as the colors are assigned to a continuous-looking color gradient.
Indexed images have been replaced by RGB images in most cases. But there are different applications where indexed color images are a better choice. When computing graphics, it often makes sense to render them as grayscale images and apply gradients afterwards for colorizing them. As some computations may require a lot of computing time, trying out different gradients on an image computed as grayscale image is often a faster, resources saving choice.
Similar counts for abstract images that may have no own color, such as images taken in non-visible spectra, or which are monochrome and which pixels only differ in brightness. Colorizing them makes them more appealing and may be used to point out certain details. Of course, you may apply palettes to your own images as well, drawings for example, or computer graphic effects for playing with colors.
PaletteWB was designed to be an all-purpose tool box for color palettes and indexed images. As such, it contains methods for generating palettes, converting them between different formats, saving and exporting them, applying filters and resorting them, and for reading, generating, writing, converting, and manipulating indexed color images.
Usually, indexed color images use one byte per pixel for pointing to the image's color map. This allows for a maximum of 256 colors per image. PaletteWB goes beyond this. It not only supports indexed 8bit-images, but as well images with an index size of up to 65536 entries and floating point indices. The different index formats are discussed in the next subsection. Afterwards, a small overview about how to use PaletteWB is given.
PaletteWB supports the following indices:
-
8bit indexed images: These are mainly the plain, old-style one byte indices, yielding in a palette size of max. 256 colors and an 8bit - one byte - index.
-
32bit indexed images: Each pixel in a 32bit indexed image is a pointer to a color palette. As each pixel is 32bit large, the color table can be up to 232 entries in size what yields in 4,294,967,296 colors (4 billions). For honesty, we limit this to max. 65536 entries. If you really need more entries, please let us know...
-
Continuous indexed images: In continuous indexed images, a pixel is represented as a floating point value between 0 and 65535. Continuous indexed images are agnostic to the palette size. The given palette is spread across the indices of the image.
All formats have their pros and cons. We will discuss them in the following.
We would advice you to use continuous indices. As long as no direct addressing of a pixel or index is necessary, this format index seems to be the most flexible one.
8bit indexed images are the usual form of indexed images. They can be exported to .gif-files, including animations, and can be processed by most image processing applications in their native form. The biggest drawback is of course the limit of colors per image to 256 entries.
32bit indexed images go beyond this. Instead of using a byte per pixel as index to a color palette, they use a 4-bytes integer, allowing in theory up to 4,294,967,296 colors per image (yes, more than RGB values in a usual true color image). As said, we set a limit of 65536 colors per image currently.
Common to both, 8 and 32 bit indexed images, is that each pixel directly points to an entry in the color palette. As such, the size of the palette must match the number of colors the image uses. When applying a palette to an image that has more entries than the image has colors, the tail of the palette will be cut and will be not visible in the image. When applying a palette with fewer colors than the image has colors, the remaining colors will be filled with a background color. In this case, details - pixels that would use the upper part of a palette - of the image will get lost. This is the major drawback of plain indexed images.
Continuous float point indices solve this issue. Here, every pixel is represented as a real (floating point) number. In PaletteWB, the indices range between 0 and 65535, including fractions. As the indices are represented as real numbers, even more colors can be addressed. A given palette is stretched to this range, so that always the complete palette is used. In addition, PaletteWB supports the interpolation of colors between the entries. This means that pixels with an index that is not mapped to a palette entry directly will get a color computed via interpolation between neighbor color palette entries. A smaller drawback of continuous indices is their reduced explicitly. While 8bit and 32bit indices directly point to color palette entry, a continuous index may get an offset and get blurred. Usually, this occurs seldom and has usually no meaning when dealing with artistic images. It still can be unwished, e.g. when dealing with scientific images. For such purposes, one should use 8bit or 32bit indexed images.
Yes, nice, but where to get such images from?
The most simple method is to convert an RGB image into an indexed one by computing the grayscales of the image's pixels. PaletteWB of course supports this and can generate 8bit and continuous grayscale images, see "To grayscale" and "To continuous grayscale".
Yet, an RGB image has in principle 766 brightness values, as between the plain gray values, where all components (R, G, B) have the same brightness, one can find two additional brightness values. Within PaletteWB, such a palette is called "extended grayscale" or "pseudo-grayscale", see "To extended grayscale". PaletteWB brings methods for generating extended grayscale images from RGB images. Extended grayscale images with 766 entries is basically the maximum what you can get out of plain RGB images when interpreting their brightness.
PaletteWB contains two additional methods for generating indexed images with more colors. The first one is reading images saved as .npy or .npz files using the numpy module from the Python programming language. Given this, you can compute your own continuous images using Python, save them as numpy arrays and load them into PaletteWB for applying different color palettes.
The second one is to interpret an image's RGB components not as such, but rather as integer (normal) numbers. Such images have to be prepared manually, no software for generating them is currently known. When choosing this option, see "To 32bit indexed as ints", a pixel's index to the color palette is computed as:
Where:
-
ip is the pixel's index;
-
bp is the value of the pixel's blue component;
-
gp is the value of the pixel's green component;
Please note that this is currently limited to generating images with up to 65535 color entries.
If you are interested in color palettes only, not in applying them to images, you have different possibilities to interact with them. PaletteWB comes with a database of almost 700 palettes, see "Browse DB...". You may load and save palettes, see "Open palette..." and "Save palette". You may as well export them as images or as almost arbitrary text files, see "Export palette as image..." and "Export palette as text...", so that you can use them in own applications. Different methods for generating palettes are available, see "Generate", as well as for changing the palettes entries' order, see "Apply pattern" and "Reorder", or applying color filters, see "Adjust colors".
If you want to colorize your images, you would probably start with loading your image, see "Open image...". As most images are stored as RGB images, you have to convert it into an indexed format first. The fastest way to do this is using one of the "Fast convert" actions, located in the "Image" menu. If you want to play with conversion options, use "Convert...". It is more flexible, yet slightly slower than the "Fast convert" actions.
We would advice you to convert your image into a continuous extended grayscale image as it's the most variable and robust format, see "Supported Index Formats".
When using PaletteWB frequently, it may be convenient to define a default action to perform when loading an RGB image, see "Default RGB image action".
To explore different color palettes, you may use the "Browse DB..." action. A chosen palette is instantaneously applied to the shown indexed image. Same counts for the named palette changing actions - their respective result is directly applied to the image.
You may wonder what a project is in this case. Basically, you can do everything by interacting with palettes and images only. Yet, you may want to save a work in progress. This is what a PaletteWB project is for. Saving a project, see "Save project", saves all current application settings so that the work can be later continued without loading the current image and palette individually and setting other options, such as the current background color or the palette size.
The main window is divided into different sections or components. The main ones are the image viewer part and the palette viewer part. Below the palette viewer you may find some meta information about the currently used image and palette. Additionally, a menu bar holds all the actions PaletteWB is capable to do, and some of them can be accessed faster using the tool bar below. The following image shows PaletteWB's graphical user interface. The components of the graphical user interface are described in the following subsections and partially in further chapters as well.
The image viewer is highlighted in the following image.
The palette viewer shows the current palette. If an RGB (24 bit, "true color") image was loaded, the palette viewer stays empty. In this case, the image has to be converted into an indexed format first (see "Using PaletteWB").
If the palette is bigger than the visible screen, a scrollbar shows up which can be used to scroll along the palette.
Single palette entries can be selected and deselected. Pressing the left mouse button over an entry selects it, a second single left mouse button click or selecting another entry deselects the first one. A double-click with the left mouse button opens a color editor. If a new color has been chosen by pressing
within this color editor, it will be used as this entry's new color.Holding the left Control (Ctrl) key when selecting entries using the left mouse button prevents from deselecting prior ones. When pressing the Shift key, the range between the current and the next already selected entry is selected or deselected.
PaletteWB holds as well the functionality to select entries using patterns (see "Selection pattern...") and save and load selections (see "Load selection..." and "Save selection...").
The palette can be changed using different actions, including usual edit function, such as Cut, Copy, Paste, etc. (see "The Edit Menu") as well as by a diverse set of color modifications (see "Adjust colors"), resorting methods (see "Reorder"), or methods for applying diverse patterns (see "Apply Pattern"). In addition, palettes can be selected from a database of almost 700 palettes (see "Browse DB...") or generated using different methods (see "Generate").
The image viewer is highlighted in the following image.
After starting the application or if an image was closed (see "Close Image"), the viewer is empty. As soon as an image was loaded (see "Open Image") or the user has generated an image (see "Image Generation"), the image is displayed within the viewer.
The user can zoom into (see "Zoom In (25%)") the image and out (see "Zoom Out (25%)") of image. You may as well zoom using the mouse wheel when the mouse is above the image viewer. The view can be restored to its original size (see "Normal Size").
When applying or changing the palette, the image is automatically updated to the new settings.
The meta information panel is highlighted in the following image.
The meta information panel holds basic information about the current palette and image. For the current palette, the following information is listed:
-
: The name of the palette, if given;
-
: A comment about the palette, if given;
-
: The file name the current palette is saved at, if valid;
-
: The number of color entries this palette consists of.
The following information is shown for the current image:
-
: The file name the current palette is saved at, if valid;
-
: The height of the image;
-
: The width of the image;
-
: The mode of the image, may be one of 'RGB
', 'indexed 8bit
', 'indexed 32bit
', 'continuous
', or 'continuous (interpolated)
'.
If no image is loaded or was generated, the fields stay empty. Only the "
" information is set to 'N/A'.The menu bar is highlighted in the following image.
The menu bar contains all the actions PaletteWB is capable to perform. It is the major interface between the user and PaletteWB. Thereby, Chapter 4 is completely denoted to list the actions that can be found in the menu bar.
The tool bar is highlighted in the following image.
The tool bars contain shortcuts to a selected set of actions that can be found in the menu bar. The following tool bars exist:
-
: Holds project interaction actions, namely:
-
: Holds palette interaction actions, namely :
-
: Holds image interaction actions, namely:
-
: Holds the following actions:
-
: Holds the clipboard options for palettes, namely:
-
: Holds actions for interacting with the palettes database, namely:
-
: Holds action for batch processing of images or palettes, namely:
-
: Holds major meta information about PaletteWB, namely:
The settings menu holds actions for toggling the visibility of each of the tool bars, see "Show tool bars -> X".
The status bar is highlighted in the following image.
When hovering above a menu bar or a tool bar entry, the status bar shows a coarse description of the according action. In addition, the status bar shows an according message when a new file was loaded or saved.
All of PaletteWB's functionality is accessed using the actions to be found in the menu bar. The actions are grouped into the following topics:
- : Holds actions for loading, saving, and exporting files and for printing, see "
- : Holds actions for editing the palette and selected entries, see "
- : Holds actions for generating and reordering the palette and for applying color enhancement filter, see "
- : Holds actions for generating, converting and transforming images, see "
- : Holds actions for interacting with the image view, see "
- : Holds settings for opening RGB images, for defining the format of the palette within the clipboard, for setting the maximum palette size, and for toggling the visibility of the tool bars and the status bar, see "
- : Holds actions for display PaletteWB's about and help dialog, see "
The menus are described in the following subsections.
The
menu allows you to load and save projects, images, and color palettes from/to different formats. Additionally, a loaded palette can be exported as an image or into diverse text formats. As well, both images, and palettes can be printed. The menu contains the following entries:- : Generates a new, empty project, see "
- : Opens an existing project file, see "
- : Saves the current project, see "
- : Saves the current project under a new name, see "
- : Opens a palette file, see "
- : Saves the current palette, see "
- : Saves the current palette under a new name, see "
- : Exports the current palette as an image, see "
- : Exports the current palette as text, see "
- : Opens an image, see "
- : Saves the current image, see "
- : Saves the current image under a new name, see "
- : Closes the current image, see "
- : Prints the current image, see "
- : Prints the current palette, see "
-
Exit".
: Quits the application, see "
The actions within the
menu will be described in the following.A new project will be initialized consisting of a grayscale palette with 256 colors and no image. If either the palette or the image that were used before were not saved, a dialog will pop up asking whether they should be saved.
If the project tool bar is shown, you may as well click on the according icon () to instantiate a new project.
This action loads an existing project from the file system. If either the palette or the image that were used before were not saved, a dialog will pop up asking whether they should be saved. Then, a file dialog will be shown that allows you to select the project file to load. When selecting one and pressing
, the selected project will be loaded.If the project tool bar is shown, you may as well click on the according icon () to load a project.
If a project was loaded and modified you can save the changes to the project by choosing this item. If the project was not saved before, a dialog will be shown where you can select the folder to save the project into and define the project's file name.
If the project tool bar is shown, you may as well click on the according icon () to save a project.
Choosing this item will show a dialog where you can select the folder to save the project into and its name.
If the project tool bar is shown, you may as well click on the according icon () to save a project under a new name.
A window opens which allows you to choose a palette file to load. After selecting the file and clicking
or by double-clicking the file within the window, the palette will be loaded and shown in the palette viewer. If the current image is a not indexed RGB image, you will be asked whether it may be closed as palettes cannot be applied to such images. If the prior palette was modified and not saved, you will be asked whether you want to save it.If the palette tool bar is shown, you may as well click on the according icon () to load a palette.
If a palette was loaded and modified you can save the changed palette by choosing this item. If the palette was not saved before, a dialog will be shown where you can select the folder to save the palette into and define the palette's file name. As well, this dialog enables you to select the format to use for saving the palette.
The action can be only performed if a palette was loaded and changed or if a palette has been generated.
If the palette tool bar is shown, you may as well click on the according icon () to save the current palette.
Choosing this item will show a dialog where you can select the folder to save the palette into and its name. As well, this dialog enables you to select the format to use for saving the palette.
The action can be only performed if a palette was loaded or generated.
If the palette tool bar is shown, you may as well click on the according icon () to save the current palette under a new name.
This action exports the current palette as an image. First, a dialog for defining how the palette shall be rendered is shown. This dialog is shown in the next figure.
In principle, when being exported to an image, a palette is rendered as a table where each cell contains one of the palette's color entries. The number of columns is variable. You may alter the following rendering parameter:
-
: defines the size of the top border;
-
: defines the size of the right border;
-
: defines the size of the bottom border;
-
: defines the size of the left border;
-
: defines the width of the vertical spacing between the columns;
-
: defines the height of the horizontal spacing between the lines;
-
: defines the width of each palette entry cell;
-
: defines the height of each palette entry cell;
-
: defines the number of columns;
-
: defines the color of the background, i.e. the color of the borders and spaces between the cells.
The resulting image is shown in the preview window.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database. This dialog shares the database with the "Print palette..." dialog. Settings saved into the database in one of these dialogs are available within the other one as well.
After defining how the palette shall be rendered and pressing
, the dialog will be closed and a file selection dialog will be opened for choosing the destination folder and a file name. In addition, one of the supported image formats can be chosen. When Pressing , the current palette will be rendered and saved as an image to this file.The action can be only performed if a palette was loaded or generated.
This action exports the current palette as text. First, a dialog for defining how the palette shall be rendered is shown. This dialog is shown in the next figure.
The text export consists of four parts which can be edited as text using the according text line editors:
-
: the header will precede all the entries;
-
: defines how each entry shall be rendered;
-
: defines the divider that is written between the entries;
-
: the footer is written after all entries were written.
In addition, you may define the text encoding to use using the
selector. The resulting text representation is shown in the preview window.For writing colors, diverse placeholders / variables can be used that render the components of a color entry in different ways. In addition, special character, such as newlines or tabs can be used. An overview can be found in the appendix "User Symbols".
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database. This dialog shares the database with the "Palette clipboard format..." dialog. Settings saved into the database in one of these dialogs are available within the other one as well.
After defining how the palette shall be rendered and pressing
, the dialog will be closed and a file selection dialog will be opened for choosing the destination folder and file name. When Pressing , the current palette will be rendered and saved as an image to this file.This action can be only performed if a palette was loaded or generated.
A window opens which allows you to choose an image file to load. After selecting the file and clicking
or double-clicking the file within the dialog, the image will be loaded and shown in the image viewer after being computed.Please note that PaletteWB works with indexed images. If an RGB image has been loaded, it should be thereby converted into an indexed image, see "Supported Index Formats". Please note additionally, that it is possible to set a default (conversion) action to apply after an RGB image has been loaded, see "Default RGB image action".
If the image tool bar is shown, you may as well click on the according icon () to load an image.
If an image was loaded and modified you can save the changes by choosing this item. If the image was not saved before, a dialog will be shown where you can select the folder to save the image into and define the image's file name.
The action can be only performed if an image was loaded or generated and modified afterwards.
If the image tool bar is shown, you may as well click on the according icon () to save the current image.
Choosing this item will show a dialog where you can select the folder to save the image into and define the image's file name.
The action can be only performed if an image was loaded or generated.
If the image tool bar is shown, you may as well click on the according icon () to save the current image under a new name.
Choosing this item will remove the image from the image viewer. If the image was generated or modified, you will be asked whether you want to save the image before.
When selecting this action, a standard print dialog will be opened. When pressing
, the current image is printed using the selected printer.The action can be only performed if an image was loaded or generated.
This action prints the current palette. First, a dialog for defining how the palette shall be rendered is shown. This dialog is shown in the next figure.
In principle, when being printed, a palette is rendered as a table where each cell contains one of the palette's color entries. The number of columns is variable. You may alter the following rendering parameter:
-
: defines the size of the top border;
-
: defines the size of the right border;
-
: defines the size of the bottom border;
-
: defines the size of the left border;
-
: defines the width of the vertical spacing between the columns;
-
: defines the height of the vertical spacing between the lines;
-
: defines the width of each palette entry cell;
-
: defines the height of each palette entry cell;
-
: defines the number of columns;
-
: defines the color of the background, i.e. the color of the borders and spaces between the cells.
The resulting image is shown in the preview window.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database. This dialog shares the database with the "Export palette as image..." dialog. Settings saved into the database in one of these dialogs are available within the other one as well.
After defining how the palette shall be rendered and pressing
, the dialog will be closed and a standard print dialog will be opened. When pressing , the current palette is printed using the selected printer.The action can be only performed if a palette was loaded or generated.
The
menu holds actions for undoing/redoing actions, interact with the palette and color clipboard and for selecting entries within the palette view. You may find the following actions in the menu:-
Undo";
: Undoes the last action, see " -
Redo";
: Redoes the last action, see " - : Clears the undo/redo history, see "
-
Cut";
: Cuts selected palette entries, copying them to the clipboard, see " -
Copy";
: Copies the palette or selected entries to the clipboard, see " -
Paste";
: Pastes colors from the clipboard into the palette, see " -
Replace";
: Replaces selected entries by colors from the clipboard, see " -
Delete";
: Deletes selected entries from the palette, see " -
Edit...";
: Edits selected entries, see " - : Selects all entries, see "
- : Deselects all entries, see "
- : Inverts the current selection, see "
- : Opens a dialog for applying a selection pattern, see "
- : Loads a previously saved selection, see "
- : Saves the current selection to a file, see "
The actions within the
menu will be described in the following.Undo revokes the last action. Please note the changing the selection as well as fixing the palette size can be undone too.
The undo buffer is limited to 20 actions.
If the undo/redo tool bar is shown, you may as well click on the according icon () to undo the last action.
Redo re-performs the last undone action. Please note the changing the selection as well as fixing the palette can be redone too.
If the undo/redo tool bar is shown, you may as well click on the according icon () to redo the last undone action.
Cut removes selected palette entries, copying them into the clipboard. The order of colors in the palette is preserved within the clipboard. The palette will be reduced by the number of cut entries, subsequent entries are moved in place of the cut colors. If the palette size is fixed, the default background color is appended to the palette to fit the fixed size, see also "Fix palette size". After cutting the entries, the current selection is removed.
The action can be only performed if at least one palette entry is selected.
Please note that you may change the format of single colors in the clipboard using the "Color clipboard format" action and the format of palettes or color sets using the "Palette clipboard format..." action, both to be found in the Settings menu (see The 'Settings' Menu).
If the edit tool bar is shown, you may as well click on the according icon () to remove selected palette entries while copying them to the clipboard.
The selected entries are copied into the clipboard. If no entry is selected, the complete palette will be copied into the clipboard. The order of colors in the palette is preserved within the clipboard.
The action can be only performed if a palette exists.
Please note that you may change the format of single colors in the clipboard using the "Color clipboard format" action and the format of palettes or color sets using the "Palette clipboard format..." action, both to be found in the Settings menu (see The 'Settings' Menu).
If the edit tool bar is shown, you may as well click on the according icon () to copy selected palette entries.
Colors within the clipboard are copied into the current palette by this action. If no entry is selected, the colors from the clipboard are appended to the end of the palette. If one or more entries are selected, all colors from the clipboard are inserted at all selected positions.
The action can only be performed if the clipboard contains colors and the palette size is not fixed, see also "Fix palette size".
If the edit tool bar is shown, you may as well click on the according icon () to paste colors from the clipboard into the palette.
Please note that currently the palette size is limited to 65536 entries. Please let us know if you need bigger palettes.
The colors in the clipboard are used subsequnetly to replace selected palette entries. If more entries are selected than colors in the clipboard, the process repeats from the begin of the clipboard colors.
The action can only be performed if the clipboard contains colors and at least one color entry is selected.
The action removes selected palette entries. The palette will be reduced by the number of deleted entries, subsequent entries are moved in place of the deleted colors. If the palette size is fixed, the default background color is appended to the palette to fit the fixed size, see also "Fix palette size". After cutting the entries, the current selection is removed.
If the edit tool bar is shown, you may as well click on the according icon () to delete selected palette entries.
The Edit action opens a dialog for choosing a new color for selected entries. All selected entries will get the chosen color. The action can only be performed if at least one color palette entry is selected.
If the edit tool bar is shown, you may as well click on the according icon () to edit selected palette entries.
This action selects all palette entries.
The action can only be performed if a palette exists.
This action deselects all palette entries - no entry is selected afterwards.
The action can only be performed if a palette exists.
Reverts the selection - all not selected entries will be selected, all selected entries will be deselected. The action can only be performed if a palette exists.
When activating this action, a dialog for defining a selection pattern will be opened. The dialog is shown in the following figure.
A selection pattern consists of a number of subsequently selected cells and a number of skipped, not selected cells. This pattern is repeated until the final cell to regard is reached. In addition, you may define the range of the palette to apply the selection pattern to. In particular, the following values can be set:
-
: defines the first palette entry the pattern shall be applied to;
-
: when selected, the complete palette is covered;
-
: defines the last palette entry the pattern shall be applied to;
-
: defines the number of subsequent entries that shall be selected;
-
: defines the number of subsequent entries that shall not be selected;
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
The action can be only performed if a palette was loaded or generated.
This action opens a dialog for choosing a file that contains a previously saved selection. When choosing an according file, the selection description it contains will be loaded and shown in the palette view. It replaces the previous selection.
The action can only be performed if a palette exists.
For a description of the selection format see Appendix "Selection File Format".
When choosing this action, a dialog will open which allows you to define the folder and the file to save the current selection to. When choosing a file and pressing
, the current selection will be saved into this file. This action can only be performed when at least one entry is selected.The
menu holds actions for generating and manipulating color palettes. You may find the following actions in the menu:- : Opens a dialog for browsing the internal palettes database, see "
- : Sets a random palette from the internal palettes database, see "
- : Sets the palette from the internal palettes database that predecedes the last chosen one, see "
- : Sets the palette from the internal palettes database that follows the last chosen one, see "
- : Interpolates the colors between selected palette entries, see
-
Generate";
: Menu with palette generation methods, see "- : Opens a dialog for generating palettes by interpolation, see "
- : Opens a dialog for generating palettes by interpolation using selected entries, see "
- : Opens a dialog for generating palettes using cosini, see "
-
: Menu with
standard palettes, see "
- : Sets a grayscale palette with 256 colors, see "
- : Sets a pseudo-grayscale palette with 766 colors, see "
- : Sets a rainbow palette with 256 colors, see "
- : Sets a rainbow palette with 1024 colors, see "
-
: Dialogs for colors
enhancement, see "
- : Opens a dialog for changing the brightness and contrast of the palette, see "
- : Opens a dialog for changing the hue, saturation, and value of the palette, see "
-
Tint...";
: Opens a dialog for tinting the palette, see " - : Opens a dialog for tinting the palette using a gradient, see "
-
Blur...";
: Opens a dialog for blurring the palette, see "
-
Reorder";
: Menu with palette reordering actions, see "- : Inverts the palette order, see "
- : Opens a dialog for shifting the palette by an offset, see "
- : Sorts palette entries with variable component weight, see "
-
: Dialogs for applying
resorting patterns on palettes, see "
- : Opens a dialog for applying diverse repetition patterns, see "
- : Appends a mirrored version of the palette to the palette, see "
- : Opens a dialog for applying a persian raster pattern, see "
- : Opens a dialog for resizing the palette, see "
- : Sets the default color, see "
- : Triggers whether the palette's size shall be fixed, see "
-
: Sets the
palette size to the chosen value, see "
-
: ... different palette sizes;
-
- : Converts palettes between different formats in batch, see "
The actions within the
menu will be described in the following.PaletteWB comes with many free palettes. The action "
" opens a dialog that supports browsing this database and selecting a palette. The dialog looks as shown in the following figure.You can select a color palette source collection using the "Included Palettes". The entry "all" lists all color palettes from all sources. You may scroll through the entries using the mouse or the cursor keys up and down. When pressing the left mouse button over an entry, the entry will be selected. If an indexed image is loaded, the image will be colored using the selected palette. When clicking , the dialog will be closed and the last selected palette will be applied to the image.
" drop-down. The included collections are listed in Appendix "The action is not available if an (not indexed) RGB image was loaded or generated.
If the database tool bar is shown, you may as well click on the according icon () to open the database.
This action choses a random palette from the palettes database and - if an indexed image exists - applies it to the current indexed image.
The action is not available if an (not indexed) RGB image was loaded or generated.
If the database tool bar is shown, you may as well click on the according icon () to choose a random palette from the database.
This action retrieves the palette from the palettes database that precedes the one chosen last and - if existing - applies it to the current indexed image.
The action is not available if an (not indexed) RGB image was loaded or generated.
If the database tool bar is shown, you may as well click on the according icon () to select the palette from the database that is prior to the last chosen.
This action retrieves the palette from the palettes database that succeeds the one chosen last and - if existing - applies it to the current indexed image.
The action is not available if an (not indexed) RGB image was loaded or generated.
If the database tool bar is shown, you may as well click on the according icon () to select the palette from the database that is next to the last chosen.
When choosing this action, the color palette entries between the selected entries will get a color determined using a plain RGB interpolation between the colors of selected entries.
The action is available when a palette exists and at least two color entries have been selected.
The "
" submenu holds actions for generating palettes, namely:- : Opens a dialog for generating palettes by interpolation, see "
- : Opens a dialog for generating palettes by interpolation using selected entries, see "
- : Opens a dialog for generating palettes using cosini, see "
These actions will be described in the following subsections.
This action generates palettes by interpolating between so-called "ticks". When choosing the action, the dialog shown in the following figure is shown.
The dialog is build up as described in the following. A small grayscale ramp hints to the position along the palette. The resulting palette is shown below. Below the palette, you will find the field to interact with the diamond-shaped "ticks" which define the colors and their positions within the palette to interpolate between.
You may generate new ticks by clicking on an empty (not occupied by a tick) space within the ticks bar with the left mouse button. You may delete ticks by pressing the right mouse button on a tick. You may move a tick by selecting it with a single click and moving it. You may change the color of a tick by a double-click on it.
Please note that the first (index=0) and last (index=255) ticks cannot be moved or deleted.
The dialog offers additional controls for dealing with a selected tick and defining the methods for interpolation:
-
: shows the position (index) of the selected tick, allows to move the tick;
-
: shows the color of the selected tick, allows to change it by clicking with the left mouse button at the color field;
-
: defines the function to use on the right side of the selected tick;
-
: the color space to use for interpolation on the right side of the selected tick;
-
: defines the size of the palette to generate.
Please note that the tick indices are normed to the range between 0 and 255 even if the generated palette is bigger. The tick positions will be internally adapted to accord to the generated palette shape.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the generated one.Calling this action opens the color interpolation dialog (see "By interpolation..."), yet with the currently selected entries as ticks.
The action opens a dialog for generating palettes based on cosini. The dialog is shown in the following figure.
For each of the components, R, G, and B, the following values can be set:
-
: a static offset along which the cosinus moves;
-
: cosinus scaling factor;
-
: step factor;
-
: a static step offset.
As such, each of the components is computed using the following formula:
Where i
is the index running along the
palette entries.
The control "Palette size" sets the size of the generated palette. When "Keep size" is chosen, the formula is normalized. The palette is then shrunk / stretched. If the control is not checked, the function moves along the palette indices.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the generated one.The "
" submenu holds actions that instantiate one of the given standard palettes, namely:- : Sets a grayscale palette with 256 colors, see "
- : Sets a pseudo-grayscale palette with 766 colors, see "
- : Sets a rainbow palette with 256 colors, see "
- : Sets a rainbow palette with 1024 colors, see "
These actions will be described in the following subsections.
This action generates an extended "grayscale" palette with 766 entries. The ramp is built by incrementing the components R, G, and B individually with an offset of 1.
This action generates a rainbow palette with 256 entries by iterating over the hue component of the HSV color space.
The "
" submenu holds actions that apply filters on the current palette's entries, namely:- : Opens a dialog for changing the brightness and contrast of the palette entries, see "
- : Opens a dialog for changing the hue, saturation, and value of the palette entries, see "
-
Tint...";
: Opens a dialog for tinting the palette, see " - : Opens a dialog for tinting the palette using a gradient, see "
-
Blur...".
: Opens a dialog for blurring the palette, see "
These actions will be described in the following subsections.
When selected, this action shows a dialog for adjusting the palette's brightness and contrast. The dialog is shown in the following figure.
The dialog contains the following parameter:
-
: changes the brightness of the colors;
-
: changes the contrast between colors;
-
: when checked, the action will be performed on selected entries only. This parameter is only enabled if at least a single entry is selected.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the adjusted one.When selected, this action shows a dialog for adjusting the palette's hue, saturation, and value. The dialog is shown in the following figure.
The dialog contains the following parameter:
-
: changes the colors' hue, see also "Colorize";
-
: changes the colors' saturation;
-
: changes the colors' value;
-
: when checked, the hue will be applied to all palette entries. Otherwise, the individual colors are shifted by the hue value, rotating through the hue;
-
: when checked, the action will be performed on selected entries only. This parameter is only enabled if at least a single entry is selected.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the adjusted one.When selected, this actions show a dialog for tinting the palette. Tinting denotes blending all of the palette colors with a semi-opaque color. The dialog is shown in the following figure.
The dialog contains the following parameter:
-
: the color to apply;
-
: the level of opacity to use when blending the palette with the chosen color;
-
: when checked, the action will be performed on selected entries only. This parameter is only enabled if at least a single entry is selected.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the adjusted one.When selected, this action shows a dialog for tinting the palette using a gradient. Tinting denotes blending all of the palette colors with a semi-opaque color. In this case, two colors can be used which are interpolated along the palette. The dialog is shown in the following figure.
The dialog contains the following parameter:
-
: the color to apply at the starting tinting position;
-
: the level of opacity to use at the starting tinting position when blending the palette with the chosen color;
-
: the starting position (palette index) to tint the palette;
-
: the color to apply at the last tinting position;
-
: the level of opacity to use at the last tinting position when blending the palette with the chosen color;
-
: the last index to tint the palette;
-
: The color space to use when interpolating between the starting and the last tinting color.
-
: when checked, the action will be performed on selected entries only. This parameter is only enabled if at least a single entry is selected.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the adjusted one.This action blurs the palette. When selected the following dialog is shown.
The dialog contains the following parameter:
-
: selects the color mode to use when blurring;
-
: you may select "running mean" or "normal (Gauß)" as the weighting function for blurring;
-
: if checked, the blurring algorithm will wrap around the palette's boundaries;
-
: this defines the size (window) of the blur filter for all components;
-
: this defines the size (window) of the blur filter for component #1 of the selected color space;
-
: this defines the size (window) of the blur filter for component #2 of the selected color space;
-
: this defines the size (window) of the blur filter for component #3 of the selected color space;
-
: this defines the size (window) of the blur filter for component #4 of the selected color space if existing (only for the CMYK color space).
-
: when checked, the action will be performed on selected entries only. This parameter is only enabled if at least a single entry is selected.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the adjusted one.The "
" submenu holds actions that change the order of colors within the palette, namely:- : Inverts the palette order, see "
- : Opens a dialog for shifting the palette by an offset, see "
- : Sorts palette entries with variable component weight, see "
These actions will be described in the following subsections.
This action shifts (rotates) the palette entries. When selected the following dialog is shown.
The dialog contains the following parameter:
-
: the offset by which the palette's entries shall be rotated.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the adjusted one.This action (re)sorts the palette entries by variable values. When selected the following dialog is shown.
The dialog contains the following parameter:
-
: selects the color mode to use when sorting;
-
: defines the weight of component #1 of the selected color space;
-
: defines the weight of component #2 of the selected color space;
-
: defines the weight of component #3 of the selected color space;
-
: defines the weight of component #4 of the selected color space if existing (only for the CMYK color space);
-
: when checked, computed order will be reversed.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the adjusted one.The "
" submenu holds actions that apply a repetition pattern to the current palette, namely:- : Opens a dialog for applying diverse repetition patterns, see "
- : Appends a mirrored version of the palette to the palette, see "
- : Opens a dialog for applying a persian raster pattern, see "
These actions will be described in the following subsections.
This action reorders the colors of a palette using diverse repetition patterns. When selected, the following dialog is shown:
The dialog contains the following parameter:
-
: the repetition algorithm to use;
-
: a width, where applicable;
-
: the color of the dividing cells, where applicable;
-
: the size of the dividing cells, where applicable;
-
: when checked, a mirrored copy of the generated pattern will be appended to the resulting palette.
See this blog entry about c64 repetition pattern for further information.
Please note that applying repetition patters to palettes increases their size very fast. This method should be thereby applied to small palettes only. Therefore, a warning dialog is prompted if the function is applied to palettes with more than 16 entries.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the generated one.This action appends a mirrored version of the current palette to the current palette.
This action is only available if a palette exists and her size is not fixed.
This action reorders the colors of a palette using the "Persian raster" method. When selected, the following dialog is shown:
The dialog contains the following parameter:
-
: the offset to the first color entry used;
-
: the height of the fins;
-
: the index increment between the fins;
-
: the index increment within a fin;
-
: defines the palette size.
See this blog entry about Persian rasters for further information.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the generated one.This action offers diverse methods to resize - shrink or enlarge - the palette. When selected the following dialog is shown.
The dialog contains the following parameter:
-
: selects the method to use when enlarging the palette;
-
: selects the method to use when shrinking the palette;
-
: defines size of the palette to generate.
In dependence to whether you enlarge or shrink the palette, the method defined in "Extension method" or "Reduction method" will be applied. They will be discussed in the following.
The following methods are available for reducing a palette size:
-
Stretch by interpolation
: available entries are spread linear along the new palette, added entries will be by computed by interpolating the neighbor entries; the interpolation is currently performed in the RGB space; -
Stretch by duplication
: available entries are spread linear along the new palette, added entries are generated by duplicating neighbor entries; -
Stretch with background
: available entries are spread linear along the new palette, the currently chosen background / default color, see "Set default color...", is used for added entries; -
Append last
: available entries are put at the begin of the palette, the palette's remaining entries are filled with the last color of the palette; -
Prepend first
: available entries are put at the end of the palette, the palette's first entries are filled with the first color of the palette; -
Center with first/last
: available entries are put in the middle of the palette, added entries are split into half and the first ones are filled with the palette's first color, while the palette's last color is used to fill the entries at the end; -
Append background
: available entries are put at the begin of the palette, the palette's remaining entries are filled with the background color; -
Prepend background
: available entries are put at the end of the palette, the palette's first entries are filled with the background color; -
Center with background
: available entries are put in the middle of the palette, added entries are filled with the background color.
The following methods are available for reducing a palette size:
-
Nearest
: using a linear mapping from the initial to the reduced palette, each entry gets the color of the nearest entry in the original palette; -
Average
: using a linear mapping from the initial to the reduced palette, each entry gets the average of the colors within the original palette that are mapped to it; -
Prune back
: entries are removed at the end of the palette; -
Prune front
: entries at the begin of the palette are removed; -
Prune sides
: entries from the begin and the end of the palette are removed; -
Prune center
: entries from the center of the palette are removed.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
When pressing
, the current palette will be replaced by the generated one.This action opens a new color chooser dialog for defining the default color. The color is mainly used to fill up undefined colors, e.g. when the palette is fixed and parts of it are cut.
The currently set default color is shown on the left side of the action's menu entry.
When pressing
, the current palette will be replaced by the generated one.This action triggers (checks / unchecks) whether the palette size shall be fixed. When fixed, most actions keep the current palette size unchanged. Otherwise, the palette size may change when entries are cut, appended or new palettes are generated.
This set of actions reset the palette size to the given number. If the size is lower than the current palette size, entries beyond the desired palette size are removed. If the new size is bigger than the current palette size, entries with the default color are appended.
For a more powerful way to change the palette size, use "Resize the palette...".
This option allows you to convert multiple palettes in batch. When selected, the action opens the dialog shown in the following figure.
This dialog allows you to select the individual files as well as folders. When selecting folders, all found palette files stored within them will be converted. Whether a file is a palette file or not is determined by the file's extension. Using the "Assume file format:" option, you can force PaletteWB to convert only certain types of palettes. The "Convert to:" option allows you to set the format to convert the palettes to. The extension used by this file format will be automatically set.
At the top of the dialog, the available drives and subsequently folders and files are listed. The dialog contains the following further parameter:
-
: selects which files shall be read, by format; when the "unspecified" option is chosen, all known palette files within the selected folders will be converted;
-
: selects the destination format; if a non-standard palette format is chosen, i.e. "Image file" or "Text file", the "Extended settings" button and the "Destination file extension" selector will be activated that allows for setting the exact export / rendering format and the destination format, respectively;
-
Export palette as image..." and "Export palette as text..."-dialogs, respectively;
: available if "Image file" or "Text file" was selected; in these cases, the generated files can be defined using the dialogs from " -
: available if "Image file" or "Text file" was selected; in these cases, known image and text file extensions get available;
-
: the destination folder may be selected using the open button () or directly entered into the text field at the dialog's bottom; if a destination folder is given, the converted files are written into this folder. Otherwise, the converted files are written to the folder the original files lie within.
When pressing
, the batch converting process starts. A progress dialog is shown for following the process. If something fails during the conversion, an error dialog pops up asking for further action.If the export tool bar is shown, you may as well click on the according icon () to delete selected palette entries.
Here, you can find items for generating images, converting images to indexed images and for exporting a color cycling animation
-
: Menu with image generation methods;
- : Converts the current image into a different mode, see "
-
: Menu with instant
actions for changing the image mode, see "
- : Converts the current image to a 8bit grayscale image with 256 shades, see "
- : Converts the current image to a 32bit pseudo-grayscale image with 766 shades, see "
- : Converts the current image to a continuous grayscale image, see "
- : Converts the current image to an indexed 8bit grayscale image and applies the last used palette, see
- : Converts the current image to a continuous image and applies the last used palette, see
- : Converts the current image to an indexed 8bit image with a quantized palette, see
- : Converts the current image to an indexed 32bit image assuming the RGB color is an index, see
- : Converts the current image to a continuous image, see
- : Triggers color interpolation in continuous images, see "
-
: Menu with image
transformation methods, see "
- : Mirrors the image horizontally, see "
- : Mirrors the image vertically, see "
- : Rotates the image by 90° clockwise, see "
- : Rotates the image by 90° counter-clockwise, see "
- : Exports a color cycling animation, see "
- : Applies the current palette to multiple images, see "
The "
" submenu holds actions that generate diverse images, namely:These actions will be described in the following subsections.
When selected, a dialog for rendering Mandelbrot fractals is shown. The dialog is shown in the following image.
The dialog contains the following parameter:
-
: defines the position of the center of the shown part of the Mandelbrot area along the x-axis;
-
: defines the position of the center of the shown part of the Mandelbrot area along the y-axis;
-
: defines the used zoom factor;
-
: defines the maximum iteration number;
-
: defines the palette repetition scale;
-
: defines the width of the image to generate;
-
: defines the height of the image to generate;
-
: selects the mode of the generated image;
-
: available if the continuous image mode was selected; when chosen, the contents of generated image will be stretched along the complete value range.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
The view is interactive. You can move the shown part when pressing the left mouse button and moving the mouse. You can use the mouse scroll wheel to zoom in/out. You may as well move the shown area with the cursor keys and zoom in/out using the keys '+' and '-', respectively.
Pressing "
" will reset the view to the first preset. Pressing generates the defined image, optionally asking whether the previous image shall be saved. will close the dialog without generating an image.Please note that PaletteWB is not a fractal rendering application. The used fractal rendering method support only low-precision floating point numbers. Deep zooms are thereby not possible and will yield in low resolution images.
For further information about Mandelbrot sets, see the Wikipedia article about Mandelbrot sets.
When selected, a dialog for rendering Julia fractals is shown. The dialog is shown in the following image.
The dialog contains the following parameter:
-
: defines the real part of the investigated z;
-
: defines the imaginary part of the investigated z;
-
: defines the position of the center of the shown part of the Julia area along the x-axis;
-
: defines the position of the center of the shown part of the Julia area along the y-axis;
-
: defines the used zoom factor;
-
: defines the maximum iteration number;
-
: defines the palette repetition scale;
-
: defines the width of the image to generate;
-
: defines the height of the image to generate;
-
: selects the mode of the generated image;
-
: available if the continuous image mode was selected; when chosen, the contents of generated image will be stretched along the complete value range.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
The view is interactive. You can select a new z by pressing the right mouse button within the area, you can as well move the mouse while holding the right button. You can move the shown part when pressing the left mouse button and moving the mouse. You can use the mouse scroll wheel to zoom in/out. You may as well move the shown area with the cursor keys and zoom in/out using the keys '+' and '-', respectively.
Pressing "
" will reset the view to the first preset. Pressing generates the defined image, optionally asking whether the previous image shall be saved. will close the dialog without generating an image.Please note that PaletteWB is not a fractal rendering application. The used fractal rendering method support only low-precision floating point numbers. Deep zooms are thereby not possible and will yield in low resolution images.
For further information about Julia sets, see the Wikipedia article about Julia sets.
When selected, a dialog for rendering Noise images is shown. The dialog is shown in the following image.
The dialog contains the following parameter:
-
: defines the position of the center of the shown part along the x-axis;
-
: defines the position of the center of the shown part along the y-axis;
-
: defines the position of the center of the shown part along the y-axis;
-
: defines the step increment along the x-axis;
-
: defines the step increment along the y-axis;
-
: defines the width of the image to generate;
-
: defines the height of the image to generate;
-
: selects the mode of the generated image;
-
: available if the continuous image mode was selected; when chosen, the contents of generated image will be stretched along the complete value range.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
The view is interactive. You can move the visible area when holding the left mouse button and moving the mouse. This affects the
and the values. When holding the right mouse button and moving the mouse the scale is changed, namely and . For scaling in both dimensions at once, you can use the mouse' scroll wheel.Pressing "
" will reset the view to the first preset. Pressing generates the defined image, optionally asking whether the previous image shall be saved. will close the dialog without generating an image.Please note that PaletteWB is not a fractal rendering application. The used fractal rendering method support only low-precision floating point numbers. Deep zooms are thereby not possible and will yield in low resolution images.
This action opens a dialog for converting a loaded image into a format that allows for applying palettes as gradients, see "Supported Index Formats", what means that the colors within the palette are sorted.
The sorting is initially based on the pixel brightness. Even if a palette that is not sorted by brightness is applied afterwards, the order remains preserved.
Such ordered images - indexed or continuous - are, besides color palettes, PaletteWB's main data to work with, see "Supported Index Formats".
The dialog contains the following parameter:
-
: defines the palette to apply; the options (see below) may have additional dialogs;
-
: defines the image mode to convert the image to, see below.
Different sources can be used for the destination palette to apply, namely:
-
Grayscale
: a grayscale palette with 256 shades will be used; -
Extended grayscale
: a pseudo-grayscale palette with 766 shades will be used; -
Last palette
: the last palette shown before loading the image will be used; -
From DB
: a palette from the PaletteWB database can be selected that will be used.When selected, the pane will include additional controls for selecting a palette from the database. The controls are shown in the next figure.
You may either enter the name of the palette to use directly into the text field or press the database symbol for opening the palette database browsing dialog, see "Browse DB".
-
From file
: A palette loaded from a palette file will be used.When selected, the pane will include additional controls for selecting a palette file to read the palette to use from. The controls are shown in the next figure.
You may either enter the name of the palette file to read directly or use the open palette button. When pressing the button, a dialog for selecting a palette will be shown, see "Open palette...".
The usual PaletteWB image modes are supported, namely
indexed
and continuous
. If indexed
is chosen, an 8 bit indexed color image will be generated if the
palette contains not more than 256 colors. If the palette is bigger, a
32 bit indexed color image will be generated. The interpolation of
colors (see "Interpolate
colors") is disabled per default and has to be set manually
using Interpolate
colors. If the generated image would contain more colors that
currently set as maximum (see "Fix palette size"), the
indices beyond the maximum index will be set to the maximum
index.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
Pressing
converts the image using the set values. will close the dialog without converting an image.The "Convert..., but often faster. The following fast conversion actions exist:
" submenu holds actions that convert the current image into a different mode. They are less powerful than the " " action, see- : Converts the current image to a 8bit grayscale image with 256 shades, see "
- : Converts the current image to a 32bit pseudo-grayscale image with 766 shades, see "
- : Converts the current image to a continuous grayscale image, see "
- : Converts the current image to an indexed 8bit grayscale image and applies the last seen palette, see
- : Converts the current image to a continuous image and applies the last seen palette, see
- : Converts the current image to an indexed 8bit image with a quantized palette, see "
- : Converts the current image to an indexed 32bit image assuming the RGB color is an index, see "
- : Converts the current image to a continuous image, see "
These actions will be described in the following subsections.
When selected, the current image is converted to an indexed grayscale image with 256 shades. The generated image is an 8bit indexed image.
The result is the same as when applying the "Convert...." action with
=Grayscale
and
=Indexed
.
When selected, the current image is converted to an indexed pseudo-grayscale image with 766 shades. The generated image is a 32bit indexed image.
The result is the same as when applying the "Convert...." action with
=Extended
grayscale
and =Indexed
.
When selected, the current image is converted to a continuous grayscale image with 256 shades. The generated image is a continuous (floating point) image.
The result is the same as when applying the "Convert...." action with
=Extended
grayscale
and =Continuous
.
When selected, the current image is converted to an indexed grayscale image with 256 colors (8bit). Then, the last visible palette is applied.
When selected, the current image is converted to a continuous grayscale image. Then, the last visible palette is applied.
When selected, the current image is converted to an indexed image with max. 256 colors. The generated image is an 8bit indexed image. The image is quantized and dithered using Qt's default settings.
When selected, the current image is converted to an indexed image. The generated image is a 32bit indexed image with 65536 color entries. It is a special format that should be used for specifically prepared images, see also "Supported Index Formats". Use it at your own risk.
This action checks / unchecks the interpolation of colors for continuous images. A continuous image may address an almost infinite number of colors, including fractions. When interpolation is enabled, these fractions will be colored by interpolating palette entries, see also Supported Index Formats. Currently, the interpolation is performed within the RGB color space.
Please note that image processing gets remarkably slower when interpolating colors as every pixel's color has to be computed using an interpolation function. Enabling interpolation should be therefore performed as one of the last steps. As a remembering help, PaletteWB will warn you when enabling color interpolation.
The "
" submenu holds actions for transforming the current image, namely:- : Mirrors the image horizontally, see "
- : Mirrors the image vertically, see "
- : Rotates the image by 90° clockwise, see "
- : Rotates the image by 90° counter-clockwise, see "
These actions will be described in the following subsections.
This option allows generating animations using color cycling.
At first, a file choosing dialog is shown where you can define the animation's destination folder and the file name to use. If the palette is less or equal to 256 entries in size, the animation can be exported as a gif-file. Otherwise, only avi movie files are supported. Currently, the animations are exported in a non-compressing codec and are thereby very large.
After entering or selecting a valid filename, the dialog shown in the following figure is displayed.
The dialog contains the following parameter:
-
: defines the first index to cycle;
-
: defines the last index to cycle;
-
: defines the speed of the animation in frames per second;
Pressing
begins the animation generation process. To indicate the remaining time, a progress dialog is shown. will close the dialog without generating an animation.The action can only be chosen, if an indexed image exists.
If the export tool bar is shown, you may as well click on the according icon () to open the export animation dialog.
This action applies a palette to an arbitrary number of selected images, e.g. for preparing image to be joined into a movie. When selected, the dialog shown in the following figure is displayed.
The dialog contains the following parameter:
-
: the view allows for choosing individual files as well as folders by setting a check marker in the rectangles one can find left to the folder / file names; if a folder is selected, the action will be applied to all image files it contains;
-
: selects a destination palette; available values are:
-
Grayscale
: a grayscale palette with 256 shades will be used; -
Extended grayscale
: an extended pseudo-grayscale palette with 766 shades will be used; -
Current palette
: the currently shown, or, if not given, the last shown palette will be used; -
From DB
: a palette from PaletteWB's palette database will be used; one can either enter the name of the palette manually, or use the "db" icon () to open the "Browse DB..." dialog for selecting a palette; -
From file
: a palette loaded from a file will be used; one can either enter the name of the palette file manually, or use the "open palette" icon () to open a file dialog for selecting a palette.
-
- : defines the mode that shall be used while applying the palette, see also "
-
: only available for continuous images; if selected, the colors will be interpolated;
-
: defines the destination image format to use when saving the results;
-
: defines the folder to write the files to; if empty, the files will be written to the same folder they were respectively read from; the name of the folder to use can be either entered manually into the text field or be selected using the "open" () button.
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database.
Pressing
starts the conversion process. To indicate the needed time, a progress dialog is shown. Please note that this process may take quite some time, not only overall, but for each processed image. will close the dialog without any action.If the export tool bar is shown, you may as well click on the according icon () to open the batch apply palette dialog.
The
menu holds actions for interacting with the image view. The menu contains the following entries:- : Resets the zoom factor to normal size, see "
- : Increases the zoom factor by 25%, see "
- : Decreases the zoom factor by 25%, see "
The actions within the
menu will be described in the following.This action resizes the view to the image's original size. The action is only available if an image was loaded.
This action zooms into the shown image by 25 %. The action is only available if an image was loaded.
Please note that zooming in will be disabled as soon as the resulting image takes too much memory. The limit depends on the original image's size.
The
menu holds actions changing the PaletteWB applications appearance. The menu contains the following entries:- : defines how colors shall be represented in the clipboard, see "
- : opens a dialog for defining the clipboard representations of palettes, see "
- : determines what to do when an RGB image is loaded, see "
- : sets the maximum palette size, see "
- : toggles the visibility of the toolbar X, see "
- : toggles the visibility of the status bar, see "
The actions within the
menu will be described in the following.This submenu holds options for defining how a single color shall be represented within the clipboard. When copying single colors, they can be pasted into a text editor. The format is defined by the selected option. The following clipboard color formats are currently defined:
-
: the color will be represented as a hex-triplet containing the R, G, and B components, with a leading #;
-
: the color will be represented as a hex-triplet containing the R, G, and B components;
-
: the color will be represented as an integer triplet of the R, G, and B components, surrounded by round brackets.
This action opens an editor for defining the text representation of palettes within the clipboard. When selected, an editor for representing the palette as text is opened. This dialog is shown in the next figure.
The text export consists of four parts which can be edited as text using the according text line editors:
-
: the header will precede all the entries;
-
: defines how each entry shall be rendered;
-
: defines the divider that is written between the entries;
-
: the footer is written after all entries were written.
For writing colors, diverse placeholders / variables can be used that render the components of a color entry in different ways. In addition, special character, such as newlines or tabs can be used. An overview can be found in the appendix "User Symbols".
This dialog supports an interface to the presets database, see "PaletteWB's Dialog Presets Database". This means that you can save the current settings into a file or into PaletteWB's internal database, and load previously saved presets from files or the database. This dialog shares the database with the "Export palette as text..." dialog. Settings saved into the database in one of these dialogs are available within the other one as well.
After defining how the palette shall be rendered and pressing
, the dialog will be closed.This submenu holds options for the action to perform as default when an RGB image has been loaded. Palettes cannot be applied to RGB images directly. The image has to be converted into a format that supports color indices, first, see also "Supported Index Formats".
As a shortcut, it is possible to define the default action to perform when an RGB image is loaded. The following actions are supported:
-
: When selected, after loading an RGB image a dialog that asks what to do next is shown;
-
Fast convert" and "Convert...") to an indexed format for applying palettes;
: does nothing; the user has to convert the image using the available actions (see " - : Opens the convert dialog, see "
- : Converts the image to an 8bit grayscale image with 256 shades of gray, see "
- : Converts the image to an 32bit grayscale image with 766 pseudo-shades of gray, see "
- : Converts the image to a continuous grayscale image with 766 shades of gray, see "
- : Converts the image to an 8bit indexed grayscale image and applies the palette seen as last, see
- : Converts the current image to a continuous image and applies the last seen palette, see
- : Converts the current image to an indexed 8bit image with a quantized palette, see "
- : Converts the current image to an indexed 32bit image assuming the RGB color is an index, see "
This menu holds the possibility to limit the maximum palette size. Often, big palettes are not needed and may be unhandy. You should keep this value as low as possible.
This set of actions toggles the visibility of the diverse tool bars. Tool bars are described "Tool bars". Each action triggers the visibility of certain tool bar.
The
menu holds actions for interacting with the image view. The menu contains the following entries:- : shows some information about the application, see
-
Help;
: opens the help dialog, see -
https://www.palettewb.com in your default web browser, see Visit palettewb.com;
: opens the web site - : opens the current PDF documentation in your default web browser, see
The actions within the
menu will be described in the following.This action shows the application about dialog which contains some basic information about PaletteWB.
If the help tool bar is shown, you may as well click on the according icon () to show the about dialog.
This action opens the help dialog. The help dialog includes the same information as the online user documentation, yet browsable off-line. The dialog looks like the following:
If the help tool bar is shown, you may as well click on the according icon () to show the help dialog.
When choosing this action, PaletteWB's web site https://www.palettewb.com will be opened in your web browser.
If purposeful, dialogs contain a menu bar for loading / saving the current dialog values. Values can be either saved to / loaded from files, or can be stored in an internal database (DB). The following actions are possible:
- : The current settings are saved into an internal database, under a name the user may choose, see "
- : The currently selected settings are removed from the database, see "
- : The currently selected settings are renamed within the database into a named to be entered by the user, see "
- : The database will be reloaded as it may have been changed by a further instance, see "
- : Reads previously saved settings from a file, see "
- : Saves the current settings into a file, see "
In the following, these options will be described, first. The description of the used format for importing and exporting the current dialog values to files is given in the appendix "Selection File Format".
A new dialog value set can be stored in the user database. When pressing this button, you will be asked to enter a name for the value set. If the name already exists for this dialog, you will be informed. Otherwise, the current value set is stored in the database and can be restored afterwards.
A value set previously saved by the user can be removed from the database. When pressing this button, you will be asked whether you really want to delete the value set. When confirmed, the value set is removed from the database and cannot be access in future.
Please note that internal value sets (presets) cannot be removed.
A value set previously saved by the user can be renamed. When pressing this button, you will be asked for a new name of the value set. If the entered name already exists, you will be informed. Otherwise, the entry in the database will be renamed and is afterwards accessible via the new name.
Please note that internal value sets (presets) cannot be renamed.
The contents of the user database can be altered while PaletteWB is running, e.g. through a second instance. For this purpose, it is possible to reload the current settings. When this button is pressed, the current database state is loaded.
Value sets can be imported from files. Usually, such files are generated using the "Save to file" method. The format of these files is described in Presets File Format.
When pressing this button, a file dialog will be shown where you can choose the file to read. When selecting a file, it will be loaded. If any error occurs, you will be informed.
Value sets can be exported to files. The format of these files is described in Presets File Format.
When pressing this button, a file dialog will be shown where you can choose a folder and a name to save the current value set to. If a file name was chosen, the current value set will saved into this file.
PaletteWB has a web page at https://www.palettewb.com/. You may contact us by writing to info@palettewb.com.
PaletteWB is a product of:
Daniel Krajzewicz Jochen-Nüßler-Straße 5 12359 Berlin USt-IdNr.: DE281155133
The following table shows which palette formats are known by PaletteWB.
Table A.1. Palette formats that can be imported and exported
Palette Format | Extension | Can be read | Can be written |
---|---|---|---|
GIMP palette | gpl | yes | yes |
Adobe Photoshop palette | aco | yes | yes |
Fractint palette | map | yes | yes |
Microsoft palette | pal | yes | yes |
A hexadecimal color list | hextxt | yes | yes |
At some places, a FORMAT_STRING is used. The string may contain placeholders for current values, e.g. the color table entry's index. The following placeholders are supported:
Table B.1. FORMAT_STRING variables
Variable | Expansion |
---|---|
%f | the filename without extension |
%n | the name of the palette if given in the file, otherwise the file name (%f) |
%i | the index of the palette entry |
%r | red component in decimal notation |
%g | green component in decimal notation |
%b | blue component in decimal notation |
%R | red component in hexadecimal notation |
%G | green component in hexadecimal notation |
%B | blue component in hexadecimal notation |
%h | hue component in decimal notation |
%s | saturation component in decimal notation |
%v | value component in decimal notation |
Some of the GUI menus have key shortcuts. The set of shortcuts shown in the next table is valid for interacting with the main PaletteWB window.
Table C.1. Key shortcuts in PaletteWB's main window
Shortcut | Action |
---|---|
Ctrl+O | open project |
Ctrl+S | save project |
Ctrl+Z | undo |
Ctrl+Y | redo |
Ctrl+X | cut |
Ctrl+C | copy |
Ctrl+V | paste |
Ctrl+H | replace |
Del | delete |
Ctrl+E | edit |
Ctrl+A | select all |
Ctrl+I | invert selection |
Ctrl+D | browse database |
Ctrl+W | random palette from database |
Alt+Right | prior palette from database |
Alt+Left | next palette from database |
Ctrl+0 | reset zoom |
Ctrl++ | zoom in |
Ctrl+- | zoom out |
The help window has some shortcuts as well. Please find them in the following table.
Table C.2. Key shortcuts in PaletteWB's help window
Shortcut | Action |
---|---|
Ctrl+0 | go to home page |
Alt+Right | go forward |
Alt+Left | go back |
Ctrl+F | search |
PaletteWB comes with almost 700 free palettes. Please find the references to them in the following table.
Table D.1. Included palette sets
Prefix | Source |
---|---|
adrian | http://ftp.vim.org/pub/ftp/ftp/graphics/gimp/contrib/palettes-adrian-fractint.tar.gz |
fractint | https://archive.org/details/ALLMAPS_ZIP |
gimp | unknown / lost |
robert96 | https://robert-96.github.io/gimp-color-palettes/ |
swizzly | unknown / lost |
wizzle | http://web.archive.org/web/20000604022403/http://wizzle.simplenet.com/fractals/fractint_maps/newmaps.htm |
All dialogs that allow interacting with the presets database share the same format, which can be easily understood by human beings. Dialog value sets are stored as key/value pairs in text files.
At first, a header is written, consisting of the dialog name and the application version. Then, every dialog element (selection, value, option) is stored in an own line, the name first, then the value.
As such, the format is:
<DIALOG_NAME> <PALETTEWB_VERSION> (<ENTRY_NAME>: <ENTRY_VALUE>)+
E.g., when exported, the value set for the adjust brightness / contrast dialog which decreases the brightness by 63 and increases the contrast by 61 will look as following:
brightness_contrast 2.0.0 brightness:-63 contrast:61
Legal Information
Daniel Krajzewicz
Jochen-Nüßler-Straße 5
12359 Berlin
USt-IdNr.: DE281155133
© Copyright 2009-2022 Daniel Krajzewicz
Last changed on November 07 2022 21:17:34.
2075 visitors.
Contact: info@palettewb.com