diff --git a/Makefile b/Makefile
index 049fb2a6b..afcd10502 100644
--- a/Makefile
+++ b/Makefile
@@ -4,12 +4,12 @@
# Various contributors (see AUTHORS.txt)
# http://www.tuxpaint.org/
-# June 14, 2002 - June 28, 2021
+# June 14, 2002 - September 6, 2021
# The version number, for release:
-VER_VERSION:=0.9.26
+VER_VERSION:=0.9.27
ifdef SOURCE_DATE_EPOCH
VER_DATE=$(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+%Y-%m-%d" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+%Y-%m-%d" 2>/dev/null || date -u "+%Y-%m-%d")
else
@@ -80,37 +80,36 @@ endif
# /lib/pkgconfig *.pc files.
#
ifdef HOST
- ifndef HOSTROOT
- $(error Must set HOSTROOT to cross compile)
- endif
- ifeq ($(wildcard $(HOSTROOT)/.),)
- $(error Invalid HOSTROOT: $(HOSTROOT))
- endif
+ ifdef HOSTROOT
+ ifeq ($(wildcard $(HOSTROOT)/.),)
+ $(error Invalid HOSTROOT: $(HOSTROOT))
+ endif
- ifeq ($(HOST),iphoneos)
- OS:=ios
- CC:=$(shell xcrun --sdk iphoneos -f clang)
- SDK:=iphoneos
- ARCHS:=arm64 armv7s armv7
- MINVER:=9.0
- MINVEROPT:=-miphoneos-version-min=$(MINVER)
- SDKROOT:=$(shell xcrun --sdk iphoneos --show-sdk-path)
- else ifeq ($(HOST),iphonesimulator)
- OS:=ios
- CC:=$(shell xcrun --sdk iphonesimulator -f clang)
- SDK:=iphonesimulator
- ARCHS:=$(shell uname -m)
- MINVER:=9.0
- MINVEROPT:=-mios-simulator-version-min=$(MINVER)
- SDKROOT:=$(shell xcrun --sdk iphonesimulator --show-sdk-path)
- else
- $(error Invalid HOST: $(HOST))
- endif
+ ifeq ($(HOST),iphoneos)
+ OS:=ios
+ CC:=$(shell xcrun --sdk iphoneos -f clang)
+ SDK:=iphoneos
+ ARCHS:=arm64 armv7s armv7
+ MINVER:=9.0
+ MINVEROPT:=-miphoneos-version-min=$(MINVER)
+ SDKROOT:=$(shell xcrun --sdk iphoneos --show-sdk-path)
+ else ifeq ($(HOST),iphonesimulator)
+ OS:=ios
+ CC:=$(shell xcrun --sdk iphonesimulator -f clang)
+ SDK:=iphonesimulator
+ ARCHS:=$(shell uname -m)
+ MINVER:=9.0
+ MINVEROPT:=-mios-simulator-version-min=$(MINVER)
+ SDKROOT:=$(shell xcrun --sdk iphonesimulator --show-sdk-path)
+ else
+ $(error Invalid HOST for cross compilation: $(HOST))
+ endif
- # We set PKG_CONFIG_LIBDIR instead of PKG_CONFIG_PATH because we want to
- # *change* where pkg-config looks for .pc files instead of adding to the
- # default path which may have libraries that aren't for HOST.
- export PKG_CONFIG_LIBDIR:=$(HOSTROOT)/lib/pkgconfig
+ # We set PKG_CONFIG_LIBDIR instead of PKG_CONFIG_PATH because we want to
+ # *change* where pkg-config looks for .pc files instead of adding to the
+ # default path which may have libraries that aren't for HOST.
+ export PKG_CONFIG_LIBDIR:=$(HOSTROOT)/lib/pkgconfig
+ endif
endif
# change to sdl-console to build a console version on Windows
@@ -286,6 +285,7 @@ CURSOR_SHAPES:=LARGE
SDL_LIBS:=$(shell $(PKG_CONFIG) $(SDL_PCNAME) --libs)
SDL_LIBS+=$(call linktest,SDL2_image,-lSDL2_image,$(SDL_LIBS))
SDL_LIBS+=$(call linktest,SDL2_ttf,-lSDL2_ttf,$(SDL_LIBS))
+SDL_LIBS+=$(call linktest,SDL2_gfx,-lSDL2_gfx,$(SDL_LIBS))
SDL_LIBS+=$(call linktest,zlib,-lz,)
SDL_LIBS+=$(call linktest,libpng,$(PNG),)
@@ -699,9 +699,11 @@ uninstall: uninstall-i18n
-rm -r $(DATA_PREFIX)
-rm -r $(DOC_PREFIX)
-rm $(MAN_PREFIX)/man1/tuxpaint.1.gz
- -rm $(MAN_PREFIX)/pl/man1/tuxpaint.1.gz
+ -rm $(MAN_PREFIX)/*/man1/tuxpaint.1.gz
-rm $(MAN_PREFIX)/man1/tuxpaint-import.1.gz
+ -rm $(MAN_PREFIX)/*/man1/tuxpaint-import.1.gz
-rm $(MAN_PREFIX)/man1/tp-magic-config.1.gz
+ -rm $(MAN_PREFIX)/*/man1/tp-magic-config.1.gz
-rm -f -r $(CONFDIR)
-rm $(COMPLETIONDIR)/tuxpaint-completion.bash
-rm -r $(MAGIC_PREFIX)
@@ -964,6 +966,7 @@ install-dlls:
cp $(MINGW_DIR)/bin/libpng12.dll $(BIN_PREFIX); \
cp $(MINGW_DIR)/bin/SDL.dll $(BIN_PREFIX); \
cp $(MINGW_DIR)/bin/SDL_image.dll $(BIN_PREFIX); \
+ cp $(MINGW_DIR)/bin/SDL_gfx.dll $(BIN_PREFIX); \
cp $(MINGW_DIR)/bin/SDL_mixer.dll $(BIN_PREFIX); \
cp $(MINGW_DIR)/bin/SDL_ttf.dll $(BIN_PREFIX); \
cp $(MINGW_DIR)/bin/libfreetype-6.dll $(BIN_PREFIX); \
@@ -1070,28 +1073,31 @@ install-doc:
.PHONY: install-man
install-man:
@echo
- @echo "...Installing man pages..."
+ @echo "...Installing English man pages..."
@# man1 directory...
@install -d $(MAN_PREFIX)/man1
@# tuxpaint.1
- @cp src/manpage/tuxpaint.1 $(MAN_PREFIX)/man1
+ @cp man/en/tuxpaint.1 $(MAN_PREFIX)/man1/
@gzip -f $(MAN_PREFIX)/man1/tuxpaint.1
@chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint.1.gz
- @# pl/man1 directory...
- @install -d $(MAN_PREFIX)/pl/man1/
- @# tuxpaint-pl.1
- @cp src/manpage/tuxpaint-pl.1 $(MAN_PREFIX)/pl/man1/tuxpaint.1
- @gzip -f $(MAN_PREFIX)/pl/man1/tuxpaint.1
- @chmod a+rx,g-w,o-w $(MAN_PREFIX)/pl/man1/tuxpaint.1.gz
@# tuxpaint-import.1
- @cp src/manpage/tuxpaint-import.1 $(MAN_PREFIX)/man1/
+ @cp man/en/tuxpaint-import.1 $(MAN_PREFIX)/man1/
@gzip -f $(MAN_PREFIX)/man1/tuxpaint-import.1
@chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint-import.1.gz
@# tp-magic-config.1
- @cp src/manpage/tp-magic-config.1 $(MAN_PREFIX)/man1/
+ @cp man/en/tp-magic-config.1 $(MAN_PREFIX)/man1/
@gzip -f $(MAN_PREFIX)/man1/tp-magic-config.1
@chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tp-magic-config.1.gz
-
+ @echo
+ for l in `ls -d man/*.UTF-8 | cut -d '/' -f 2`; do \
+ DEST=$(MAN_PREFIX)/$$l/man1 ; \
+ echo "...Installing $$l man pages into $$DEST..." ; \
+ install -d $$DEST ; \
+ cp man/$$l/tuxpaint.1 $$DEST ; \
+ gzip -f $$DEST/tuxpaint.1 ; \
+ chmod a+rx,g-w,o-w $$DEST/tuxpaint.1.gz ; \
+ done
+ @# FIXME: The other man pages aren't localizable yet -bjk 2021.08.14
# Install the support files for macOS application bundle
.PHONY: install-macbundle
@@ -1348,6 +1354,7 @@ obj:
MAGIC_SDL_CPPFLAGS:=$(shell $(PKG_CONFIG) $(SDL_PCNAME) --cflags)
+# FIXME: Expose SDL_rotozoom to Magic API? -bjk 2021.09.06
windows_MAGIC_SDL_LIBS:=-L/usr/local/lib $(LIBMINGW) $(shell $(PKG_CONFIG) $(SDL_PCNAME) --libs) -lSDL_image -lSDL_ttf $(SDL_MIXER_LIB)
macos_MAGIC_SDL_LIBS:=-L/usr/local/lib $(shell $(PKG_CONFIG) $(SDL_PCNAME) --libs) -lSDL_image -lSDL_ttf $(SDL_MIXER_LIB)
ios_MAGIC_SDL_LIBS:=$(shell $(PKG_CONFIG) $(SDL_PCNAME) --libs) -lSDL_image -lSDL_ttf $(SDL_MIXER_LIB)
diff --git a/data/brushes/arrow.dat b/data/brushes/arrow.dat
new file mode 100644
index 000000000..fa3c03552
--- /dev/null
+++ b/data/brushes/arrow.dat
@@ -0,0 +1,2 @@
+rotate
+spacing=60
diff --git a/data/brushes/arrow.png b/data/brushes/arrow.png
new file mode 100644
index 000000000..93f75aaa0
Binary files /dev/null and b/data/brushes/arrow.png differ
diff --git a/data/brushes/arrow_compass_points.dat b/data/brushes/arrow_compass_points.dat
deleted file mode 100644
index b203f3288..000000000
--- a/data/brushes/arrow_compass_points.dat
+++ /dev/null
@@ -1,2 +0,0 @@
-directional
-spacing=80
diff --git a/data/brushes/arrow_compass_points.png b/data/brushes/arrow_compass_points.png
deleted file mode 100644
index 69a9e0c80..000000000
Binary files a/data/brushes/arrow_compass_points.png and /dev/null differ
diff --git a/data/images/ui/brush_anim.png b/data/images/ui/brush_anim.png
new file mode 100644
index 000000000..1c7336087
Binary files /dev/null and b/data/images/ui/brush_anim.png differ
diff --git a/data/images/ui/brush_dir.png b/data/images/ui/brush_dir.png
new file mode 100644
index 000000000..04c445715
Binary files /dev/null and b/data/images/ui/brush_dir.png differ
diff --git a/docs/CHANGES.txt b/docs/CHANGES.txt
index dc9b5a5a1..0b28351a2 100644
--- a/docs/CHANGES.txt
+++ b/docs/CHANGES.txt
@@ -8,6 +8,119 @@ http://www.tuxpaint.org/
$Id$
+2021.September.6 (0.9.27)
+ * New Magic Tools:
+ ----------------
+ * "Opposite" -- Change parts of the picture to their complementary
+ colors. (Similar to "Negative", but instead of inverting the
+ Red, Green, and Blue components, it rotates the Hue 180 degrees
+ while leaving Saturation and Lightness alone.)
+ (Closes https://sourceforge.net/p/tuxpaint/feature-requests/136/)
+
+ * "Panels" - Convert your picture to 4-panel-comic-style
+ 2x2 image, repeating the original. (Repeat for "compound eye"
+ style effects!)
+ (Closes https://sourceforge.net/p/tuxpaint/feature-requests/204/)
+
+ * Magic Tool Improvements:
+ ------------------------
+ * "Halftone" works much better, drawing large overlapping circles
+ of Cyan, Magenta, Yellow, and Black, based on the average
+ color of the area of the picture being replaced, to give a
+ "newsprint" effect.
+
+ * "Halftone" can now affect the entire image at once.
+
+ * Other Improvements:
+ -------------------
+ * WIP Rotational brushes now supported. Unlike "directional"
+ brushes, in which a 3x3 grid representing the 8 cardinal
+ directions (45 degree steps) is used, only a single brush image
+ is required, and Tux Paint will rotate it between 0 and 360 degrees,
+ depending on the direction the mouse is going. The brush's ".dat"
+ file should contain a line consisting of the word "rotate".
+ * FIXME: WIP -- Doesn't handle animated brushes correctly!
+ * Note: This adds a dependency on "SDL_gfx" library
+ (Homepage: https://www.ferzkopp.net/wordpress/2016/01/02/sdl_gfx-sdl2_gfx/
+ SourceForge project page: https://sourceforge.net/projects/sdlgfx/)
+ as this feature use it's "rotozoom" functionality.
+ (Closes https://sourceforge.net/p/tuxpaint/feature-requests/122/)
+
+ * Replaced the "arrow_compass_points" brush with a single
+ arrow which can rotate at any angle, using the new
+ "rotational" brush feature.
+
+ * Small icons appear on brush selection buttons denoting
+ when the brush is animated and/or directional.
+ (Closes https://sourceforge.net/p/tuxpaint/bugs/183/)
+
+ * Always show the appropriate instructions at the bottom when the
+ "Fill" (depends on which sub-tool chosen) and "Shapes" (depends
+ on whether "simpleshapes" option is set) tools are selected
+ (e.g., when returning from the "Open" dialog).
+ (Closes https://sourceforge.net/p/tuxpaint/feature-requests/186/)
+
+ * Documentation updates:
+ ---------------------
+ * Ensured Tux Paint's built-in help ("tuxpaint --help"),
+ Unix manual ("man page"), and command-line option
+ tab-completion list, and "OPTIONS" documentation all cover
+ the full set of Tux Paint options.
+
+ * Reorganized the "Available Options" section of "OPTIONS"
+ documentation (to match the organization found in the UI
+ of "Tux Paint Config.")
+
+ * Reorganized the options listed in Tux Paint's man page,
+ to more closely (but not precisely) match the organization
+ noted above.
+
+ * tuxpaint(1) manpage is now managed & translatable via the
+ 'tuxpaint-docs' project, just like the HTML & plaintext
+ documentation files (since 0.9.26).
+
+ * Added table of contents to some documentation
+ ("Options Documentation", "FAQ", "Installation Documentation",
+ and "Advanced Stamps 'How-To'").
+
+ * Moved Windows and macOS compilation instructions into main
+ "Installation Documentation" (docs/.../INSTALL...).
+
+ * Documentation translation updates:
+ + French translation
+ Jacques Chion
+
+ * Translation Updates:
+ --------------------
+ * Ensure some locales have hints to find the best fonts
+ for the Text and Label tools:
+ * Greek
+ * Scottish Gaelic
+
+ * French
+ Jacques Chion
+
+ * Icelandic
+ Sveinn í Felli
+
+ * Bug Fixes:
+ ----------
+ * "Negative" magic tool did not play its sound when using
+ fullscreen (vs painting) mode. Fixed.
+
+ * "Zoom" magic tool icon had weird artifacting. Mended.
+
+ * "Halftone" magic tool had the "Zoom" tool's icon.
+
+ * Ports & Building
+ ----------------
+ * Fix compilation error on Linux with HOST environment variable set.
+ Modifies the Makefile so it attempts to cross compile only when both
+ HOST and HOSTROOT environment variable (which are both required for
+ cross compilation) are set; avoid confusion when an unrelated
+ $HOST env. var. is set.
+ Mark K. Kim
+
2021.June.28 (0.9.26)
* New Features
------------
diff --git a/docs/en/ADVANCED-STAMPS-HOWTO.txt b/docs/en/ADVANCED-STAMPS-HOWTO.txt
index 8815c5e5f..48b73423d 100644
--- a/docs/en/ADVANCED-STAMPS-HOWTO.txt
+++ b/docs/en/ADVANCED-STAMPS-HOWTO.txt
@@ -1,9 +1,27 @@
Tux Paint
- version 0.9.26 Advanced Stamps 'How-To'
+ version 0.9.27 Advanced Stamps 'How-To'
Copyright © 2006-2021 by Albert Cahalan and others; see AUTHORS.
http://www.tuxpaint.org/
+ August 29, 2021
+
+ ----------------------------------------------------------------------
+
+ +----------------------------------------+
+ |Table of Contents |
+ |----------------------------------------|
+ | * About this 'How-To' |
+ | * Image choice is crucial |
+ | * Prepare the mask |
+ | * Replace the fringe and junk pixels |
+ | * Save the image for Tux Paint |
+ +----------------------------------------+
+
+ ----------------------------------------------------------------------
+
+ ----------------------------------------------------------------------
+
About this 'How-To'
This 'How-To' assumes that you want to make an excellent Tux Paint
@@ -18,6 +36,8 @@ About this 'How-To'
also best done with custom software, but are not troublesome to do as
follows.
+ ----------------------------------------------------------------------
+
Image choice is crucial
License
@@ -66,6 +86,8 @@ Image choice is crucial
will need to draw new ones. If only one is buried, you might be able
to copy the other one as a replacement.
+ ----------------------------------------------------------------------
+
Prepare the image
First of all, be sure to avoid re-saving the image as a JPEG. This
@@ -101,6 +123,8 @@ Prepare the image
normally. This would cause data loss. You will be given special scaling
instructions later.
+ ----------------------------------------------------------------------
+
Prepare the mask
Get used to doing [Ctrl]-click and [Alt]-click on the thumbnail images
@@ -161,6 +185,8 @@ Prepare the mask
expected color. Invert the selection, then paint these away using the
pencil tool. Do this operation for both white and black.
+ ----------------------------------------------------------------------
+
Replace the fringe and junk pixels
Still viewing the mask, select by color. Choose black. Shrink the
@@ -222,6 +248,8 @@ Replace the fringe and junk pixels
edge, you should use the pencil tool (or sloppy select with
drag-and-drop color) to ensure that the result will compress well.
+ ----------------------------------------------------------------------
+
Save the image for Tux Paint
It is very easy to ruin your hard work. Image editors can silently
diff --git a/docs/en/ENVVARS.txt b/docs/en/ENVVARS.txt
index 5b2965076..8c93732d1 100644
--- a/docs/en/ENVVARS.txt
+++ b/docs/en/ENVVARS.txt
@@ -1,11 +1,11 @@
Tux Paint
- version 0.9.26
+ version 0.9.27
Environment Variables Documentation
Copyright © 2021-2021 by various contributors; see AUTHORS.
http://www.tuxpaint.org/
- May 11, 2021
+ August 8, 2021
----------------------------------------------------------------------
diff --git a/docs/en/EXTENDING.txt b/docs/en/EXTENDING.txt
index 3bd679997..b24d64c5c 100644
--- a/docs/en/EXTENDING.txt
+++ b/docs/en/EXTENDING.txt
@@ -1,11 +1,11 @@
Extending
Tux Paint
- version 0.9.26
+ version 0.9.27
Copyright © 2002-2021 by various contributors; see AUTHORS.
http://www.tuxpaint.org/
- May 31, 2021
+ September 6, 2021
----------------------------------------------------------------------
@@ -212,17 +212,26 @@ Brushes
Add a line containing the word "directional" to the brush's data
file.
- Animated Directional Brushes
+ Rotating Brushes
- You may mix both animated and directional features into one brush.
- Use both options ("frames=N" and "directional"), in separate lines
- in the brush's ".dat" file.
+ As of Tux Paint version 0.9.27, you may now create rotating brushes.
+ As the brush is used, it is rotated 360 degrees, depending on the
+ direction the brush is going.
- Lay the brush out so that each 3x3 set of directional shapes are
- laid out across a wide PNG image. For example, if the brush is 30x30
- and there are 5 frames, it would be 450x90. (The leftmost 150x90
- pixels of the image represent the 9 direction shapes for the first
- frame, for example.)
+ Add a line containing the word "rotate" to the brush's data file.
+
+ Animated Directional or Rotating Brushes
+
+ You may mix both animated and either directional or rotating
+ features into one brush. Use both options desired ("frames=N" and
+ "directional" or "rotate"), in separate lines in the brush's ".dat"
+ file.
+
+ For directional brushes, lay the brush out so that each 3x3 set of
+ directional shapes are laid out across a wide PNG image. For
+ example, if the brush is 30x30 and there are 5 frames, it would be
+ 450x90. (The leftmost 150x90 pixels of the image represent the 9
+ direction shapes for the first frame, for example.)
Place the brush image PNGs (and any data text files) in the "brushes"
directory.
diff --git a/docs/en/FAQ.txt b/docs/en/FAQ.txt
index d7c4dbe96..6de91a436 100644
--- a/docs/en/FAQ.txt
+++ b/docs/en/FAQ.txt
@@ -1,10 +1,25 @@
Tux Paint
- version 0.9.26 Frequently Asked Questions
+ version 0.9.27 Frequently Asked Questions
Copyright © 2002-2021 by various contributors; see AUTHORS.
http://www.tuxpaint.org/
- June 2, 2021
+ August 29, 2021
+
+ ----------------------------------------------------------------------
+
+ +------------------------------+
+ |Table of Contents |
+ |------------------------------|
+ | * Drawing-related |
+ | * Interface Problems |
+ | * Printing |
+ | * Saving |
+ | * Audio Problems |
+ | * Fullscreen Mode Problems |
+ | * Other Probelms |
+ | * Help / Contact |
+ +------------------------------+
----------------------------------------------------------------------
diff --git a/docs/en/INSTALL.txt b/docs/en/INSTALL.txt
index bd07c141b..1a7a74043 100644
--- a/docs/en/INSTALL.txt
+++ b/docs/en/INSTALL.txt
@@ -1,26 +1,46 @@
Tux Paint
- version 0.9.26
+ version 0.9.27
Installation Documentation
Copyright © 2002-2021 by various contributors; see AUTHORS.
http://www.tuxpaint.org/
- March 9, 2021
+ September 5, 2021
----------------------------------------------------------------------
-Requirements:
+ +----------------------------------------------------+
+ |Table of Contents |
+ |----------------------------------------------------|
+ | * Requirements |
+ | * Simple DirectMedia Layer library (libSDL) |
+ | * Other Libraries |
+ | * Compiling and Installation |
+ | * Windows Users |
+ | * Linux/Unix Users |
+ | * macOS Users |
+ | * Debugging |
+ | * Uninstalling Tux Paint |
+ | * Windows |
+ | * macOS |
+ | * Linux |
+ +----------------------------------------------------+
- libSDL
+ ----------------------------------------------------------------------
+
+Requirements
+
+ Simple DirectMedia Layer library (libSDL)
Tux Paint requires the Simple DirectMedia Layer Library (libSDL), an
Open Source multimedia programming library available under the GNU
Lesser General Public License (LGPL).
Along with libSDL, Tux Paint depends on a number of other SDL 'helper'
- libraries: SDL_Image (for graphics files), SDL_TTF and (optionally)
- SDL_Pango (for True Type Font support) and, optionally, SDL_Mixer (for
- sound effects).
+ libraries: SDL_Image (for graphics files), SDL_gfx (for some graphical
+ functions, like rotation), SDL_TTF and (optionally) SDL_Pango (for
+ True Type Font support) and, optionally, SDL_Mixer (for sound
+ effects).
Linux/Unix Users:
@@ -30,6 +50,9 @@ Requirements:
* libSDL: http://www.libsdl.org/
* SDL_Image: http://www.libsdl.org/projects/SDL_image/
+ * SDL_gfx:
+ https://www.ferzkopp.net/wordpress/2016/01/02/sdl_gfx-sdl2_gfx/
+ (https://sourceforge.net/projects/sdlgfx/)
* SDL_TTF: http://www.libsdl.org/projects/SDL_ttf/
* SDL_Pango: http://sourceforge.net/projects/sdlpango/ (optional)
* SDL_Mixer: http://www.libsdl.org/projects/SDL_mixer/ (optional)
@@ -116,55 +139,261 @@ Requirements:
http://netpbm.sourceforge.net/
-Compiling and Installation:
+ ----------------------------------------------------------------------
+
+Compiling and Installation
Tux Paint is released under the GNU General Public License (GPL) (see
"COPYING.txt" for details), and therefore the 'source code' to the
program is available freely.
- Windows Users:
+ Windows Users
- Compiling:
+ October 25, 2020 Shin-ichi TOYAMA shin1@wmail.plala.or.jp
+
+
+ Compiling Set-Up
As of February 2005 (starting with Tux Paint 0.9.15), the "Makefile"
includes support for building on a Windows system using MinGW/MSYS
- (http://www.mingw.org/).
+ (https://sourceforge.net/projects/msys2/).
- After configuring the environment and building and installing all
- the dependencies, use these commands, in MSYS, to build, install and
- run:
+ Many tools and libraries are required to build Tux Paint. The
+ package management system "pacman" helps you install them
+ automatically solving complicated dependencies.
- Prior to version 0.9.20:
+ Download the latest MSYS2 environment from
+ https://sourceforge.net/projects/msys2/files/Base/ and install it
+ where you'd like (the default is "C:\msys64")
- $ make win32
- $ make install-win32
- $ tuxpaint
+ Open the MSYS2 shell from the "Start Menu" -> "MSYS2 64bit" ->
+ "MSYS2 MSYS" and execute following command (press [Enter] or
+ [Return] to accept the defaults for all questions):
- Version 0.9.20 and beyond:
+ pacman -Syu
- $ make
- $ make install
- $ tuxpaint
+ This will update core system and the window will close
+ automatically. Repeat the steps above one more time to finish the
+ remaining update process.
- Use the following command to build a version suitable for
- redistribution with the installer or in a zip-file:
+ Within the MSYS2 shell, run the following command to install basic
+ development tools:
+
+ pacman -S base-devel msys2-devel git
+
+ Proceed to the next "MinGW 64bit (x86_64) toolchains" section, or skip
+ to the "MinGW 32bit (i686) toolchains" section if you need only a
+ 32bit build environment.
+
+ -------------------------------------------------------
+
+ MinGW 64bit (x86_64) toolchains
+
+ Within the MSYS2 shell, run the following command to install basic
+ 64bit development tools:
+
+ pacman -S mingw-w64-x86_64-toolchain
+
+ 64bit (x86_64) dependency libraries for Tux Paint
+
+ You can install tools and libraries required for compiling Tux Paint
+ on MSYS2/MINGW using "pacman" except for SDL_Pango.
+
+ "ntldd" is a small tool which examine windows executable files to
+ list Dynamic Link Library (.dll) files they depends on. Tux Paint's
+ packaging process for binary distribution uses it to find required
+ .dll files.
+
+ FLTK is a cross-platform GUI toolkit used by "Tux Paint Config.".
+ You can skip installing it if you are only building "Tux Paint".
+
+ $ pacman -S mingw-w64-x86_64-SDL_{image,mixer,ttf}
+ $ pacman -S mingw-w64-x86_64-librsvg
+ $ pacman -S mingw-w64-x86_64-fribidi
+ $ pacman -S mingw-w64-x86_64-libimagequant
+ $ pacman -S mingw-w64-x86_64-fltk
+ $ pacman -S mingw64/mingw-w64-x86_64-ntldd-git
+
+ Note: Close the shell before proceeding to the remaining process.
+
+ Install SDL_Pango and re-install SDL on the 64bit environment
+
+ SDL_Pango should be installed manually. In addition, you have to
+ re-install SDL from the source code or you will see unnecessary
+ blank window opens when starting Tux Paint.
+
+ This time, use the MinGW "64bit" shell. Open the shell from the
+ "Start Menu" -> "MSYS2 64bit" -> "MSYS2 MinGW 64-bit"
+
+ SDL_Pango
+
+ At first, you have to prepare source tar-ball and a required patch
+ in the same directory.
+
+ * Download source tar-ball of SDL_Pango-0.1.2 from SDL_Pango's
+ page on Sourceforge.net.
+ * Download a patch file from John Popplewell's "Tux Paint -
+ MinGW/MSYS build instructions" webpage. (This adds some extra
+ (required) functionality to SDL_Pango.)
+
+ Build and install SDL_Pango as follows.
+
+ $ tar zxvf SDL_Pango-0.1.2.tar.gz
+ $ cd SDL_Pango-0.1.2/
+ $ patch -p0 < ../SDL_Pango-configure-extra-api.patch
+ $ ./configure --prefix=/mingw64 && make && make install
+
+ SDL
+
+ Download source tar-ball of SDL_1.2.15 from libsdl.org.
+
+ Re-install SDL as follows.
+
+ $ tar zxvf SDL-1.2.15.tar.gz
+ $ cd SDL-1.2.15
+ $ ./configure --prefix=/mingw64 && make && make install
+
+ Proceed to the next "MinGW 32bit (i686) toolchains" section, or skip
+ to the "ImageMagick" section if you need only a 64bit build
+ environment.
+
+ -------------------------------------------------------
+
+ MinGW 32bit (i686) toolchains
+
+ Within the MSYS2 shell, run the following command to install basic
+ 32bit development tools:
+
+ pacman -S mingw-w64-i686-toolchain
+
+ 32bit (i686) dependency libraries for Tux Paint
+
+ You can install tools and libraries required for compiling Tux Paint
+ on MSYS2/MINGW using "pacman" except for SDL_Pango.
+
+ "ntldd" is a small tool which examine windows executable files to
+ list Dynamic Link Library (.dll) files they depends on. Tux Paint's
+ packaging process for binary distribution uses it to find required
+ .dll files.
+
+ FLTK is a cross-platform GUI toolkit used by "Tux Paint Config.".
+ You can skip installing it if you are only building "Tux Paint".
+
+ $ pacman -S mingw-w64-i686-SDL_{image,mixer,ttf}
+ $ pacman -S mingw-w64-i686-librsvg
+ $ pacman -S mingw-w64-i686-fribidi
+ $ pacman -S mingw-w64-i686-libimagequant
+ $ pacman -S mingw-w64-i686-fltk
+ $ pacman -S mingw-w64-i686-ntldd-git
+
+ Note: Close the shell before proceeding to the remaining process.
+
+ Install SDL_Pango and re-install SDL on the 32bit environment
+
+ SDL_Pango should be installed manually. In addition, you have to
+ re-install SDL from the source code or you will see unnecessary
+ blank window opens when starting Tux Paint.
+
+ This time, use the MinGW "32bit" shell. Open the shell from the
+ "Start Menu" -> "MSYS2 64bit" -> "MSYS2 MinGW 32-bit"
+
+ SDL_Pango
+
+ At first, you have to prepare source tar-ball and a required patch
+ in the same directory.
+
+ * Download source tar-ball of SDL_Pango-0.1.2 from SDL_Pango's
+ page on Sourceforge.net.
+ * Download a patch file from John Popplewell's "Tux Paint -
+ MinGW/MSYS build instructions" webpage. (This adds some extra
+ (required) functionality to SDL_Pango.)
+
+ Build and install SDL_Pango as follows.
+
+ $ tar zxvf SDL_Pango-0.1.2.tar.gz
+ $ cd SDL_Pango-0.1.2/
+ $ patch -p0 < ../SDL_Pango-configure-extra-api.patch
+ $ ./configure --prefix=/mingw32 && make && make install
+
+ SDL
+
+ Download source tar-ball of SDL_1.2.15 from libsdl.org.
+
+ Re-install SDL as follows.
+
+ $ tar zxvf SDL-1.2.15.tar.gz
+ $ cd SDL-1.2.15
+ $ ./configure --prefix=/mingw32 && make && make install
+
+ -------------------------------------------------------
+
+ ImageMagick
+
+ ImageMagick is a compilation of command line tools to create, edit,
+ compose, or convert bitmap images supporting quite a large number of
+ image formats. Tux Paint uses two functions ("convert" and
+ "composite") in it to generate thumbnails for startar images and
+ templates during the build process.
+
+ Using official binary release available from "Windows Binary
+ Release" is recommended, due to the commands installed with "pacman"
+ on MinGW/MSYS not working as expected!
+
+ Do not forget to enable "Install legacy utilities (e.g. convert)"
+ while installing it, because Tux Paint's build process uses them.
+
+ Add the path to the directory in which ImageMagick is installed at
+ the top of your "PATH" environment variable. For example:
+
+ $ export PATH=/c/Program\ Files/ImageMagick-7.0.10-Q16-HDRI:$PATH
+
+ You can make this permanent by adding the above to your the BASH
+ shell configuration file, "~/.bash_profile".
+
+ -------------------------------------------------------
+
+ Tux Paint
+
+ You can compile 64bit binaries using MSYS2 64bit shell, and 32bit
+ binaries using MSYS2 32bit shell, respectively.
+
+ * Select "MSYS2 64bit" -> "MSYS2 MinGW 64-bit" from the "Start
+ Menu" to open the 64bit shell.
+ * Select "MSYS2 64bit" -> "MSYS2 MinGW 32-bit" from the "Start
+ Menu" to open the 32bit shell.
+
+ Compile Tux Paint with the following command:
$ make bdist-win32
- Or if building for Win9x/ME:
+ Note: At this point, you will want to build "Tux Paint Config." for
+ Windows, so it can be included along with "Tux Paint", if you're
+ making an official (or test) release. The build process will look
+ for it in a directory named "tuxpaint-config" (with no version
+ number, e.g., "tuxpaint-config-X.Y.Z"). See "Tux Paint Config."'s
+ INSTALL.txt documentation for details.
- $ BDIST_WIN9X=1 make bdist-win32
+ All the files needed for starting Tux Paint (and Tux Paint Config.)
+ are collected in the directory for binary distribution "bdist"
+ directory under "win32". You can start them by double-clicking their
+ executable (.exe) files in the "bdist" directory.
- Before any of the above will work, you need to configure the
- environment and build or install the libraries that Tux Paint
- depends upon. John Popplewell put together some instructions for
- doing that here:
+ -------------------------------------------------------
- http://www.johnnypops.co.uk/tuxpaint/
+ Building the Tux Paint Windows Installer:
- Read the relevant notes if building for Win9X/ME.
+ Inno Setup is used to build executable installer for Tux Paint.
+ Therefore you have to install it in the first place.
- Running the Installer:
+ Then, you can easily build an executable installer by right-clicking
+ on the "tuxpaint.iss" icon in the "win32" directory and selecting
+ "Compile" on the list. It will run for a while, and eventually you
+ will find a "tuxpaint-X.Y.Z-win32-installer.exe" file in the same
+ directory.
+
+ -------------------------------------------------------
+
+ Running the Tux Paint Windows Installer:
Double-click the Tux Paint installer executable (.EXE file) and
follow the instructions.
@@ -183,6 +412,8 @@ Compiling and Installation:
At this point, you can click 'Install' to install Tux Paint!
+ -------------------------------------------------------
+
Changing the Settings Using the Shortcut:
To change program settings, right-click on the TuxPaint shortcut and
@@ -211,6 +442,8 @@ Compiling and Installation:
When you have finished, click "OK."
+ -------------------------------------------------------
+
If Something Goes Wrong:
If, when you double-click on the shortcut to run Tux Paint, nothing
@@ -222,7 +455,9 @@ Compiling and Installation:
just be due to incorrect character-case (capital 'Z' instead of
lowercase 'z') or a missing (or extra) '-' (dash).
- Linux/Unix Users:
+ ----------------------------------------------------------------------
+
+ Linux/Unix Users
Compiling:
@@ -235,6 +470,8 @@ Compiling and Installation:
$ make
+ -------------------------------------------------------
+
Disabling SVG support (and hence Cairo, libSVG, and svg-cairo dependencies):
To disable SVG support (e.g., if your system is not currently
@@ -244,6 +481,8 @@ Compiling and Installation:
$ make SVG_LIB= SVG_CFLAGS=
+ -------------------------------------------------------
+
Disabling Pango support (and hence Pango, Cairo, etc. dependencies):
Prior to version 0.9.18, Tux Paint used the libSDL_ttf library for
@@ -254,6 +493,8 @@ Compiling and Installation:
$ make SDL_PANGO_LIB=
+ -------------------------------------------------------
+
Disabling Sound at Compile-time:
If you don't have a sound card, or would prefer to build the program
@@ -262,11 +503,15 @@ Compiling and Installation:
$ make SDL_MIXER_LIB=
+ -------------------------------------------------------
+
Other options:
Various other options (e.g., installation paths) may be overridden;
see them in "Makefile" for further details.
+ -------------------------------------------------------
+
If you get errors:
If you receive any errors during compile-time, make sure you have
@@ -276,6 +521,8 @@ Compiling and Installation:
packages as well, otherwise you won't be able to compile Tux Paint
(and other programs) from source!
+ -------------------------------------------------------
+
Installng:
Assuming no fatal errors occured, you can now install the program so
@@ -351,13 +598,150 @@ Compiling and Installation:
Note: This list is out of date. See "Makefile" and "Makefile-i18n"
for a complete list.
-Debugging:
+ ----------------------------------------------------------------------
- Debugging (to "STDOUT", e.g. to the terminal, or to a "stdout.txt" file,
- on Windows) can be enabled by setting "DEBUG" (and, if verbose logging
- is wanted, "VERBOSE") #defines in "src/debug.h".
+ macOS Users
-Uninstalling Tux Paint:
+ September 21, 2021 Mark K. Kim
+
+ Tux Paint 0.9.22 and earlier required building Tux Paint from the
+ Xcode IDE. Starting with 0.9.23, however, Tux Paint for macOS is built
+ as though it were a Linux application.
+
+ Prerequisites
+
+ Although Tux Paint is built without the Xcode IDE, Xcode itself is
+ still required to build Tux Paint. Download it from the App Store,
+ and launch it once to accept its license agreements. You may also
+ need to install the Xcode command line tools using the command:
+
+ xcode-select --install
+
+ Building Tux Paint also requires various libraries. We install them
+ from MacPorts where possible, source code otherwise. Install
+ MacPorts to the default /opt/local path according to the
+ instructions found on their website: https://www.macports.org/
+ * ImageMagick
+ * cairo
+ * fribidi
+ * lbzip2
+ * libimagequant^*
+ * libpaper
+ * libpng
+ * librsvg
+ * libsdl
+ * libsdl_image
+ * libsdl_mixer
+ * libsdl_pango
+ * libsdl_ttf
+ * pkgconfig
+ * zlib
+ ... but you should install any package that is required by the
+ latest version of Tux Paint.
+
+ ^* Not available from MacPorts as of this writing, see below.
+
+ libimagequant
+
+ libimagequant is not available from MacPorts as of this writing.
+ It can be installed from the source code as follows. It should be
+ installed to /opt/local (same as MacPorts) for the library to be
+ included in TuxPaint.dmg.
+
+ $ git clone https://github.com/ImageOptim/libimagequant.git
+ $ cd libimagequant
+ $ ./configure --prefix=/opt/local
+ $ make
+ $ sudo make install
+
+ WARNING: Having any UNIX-like toolset installed on your Mac besides
+ MacPorts and Xcode, such as Fink or Brew, will prevent your app
+ bundle from being portable. Be sure Fink and Brew are not accessible
+ from your build environment.
+
+ -------------------------------------------------------
+
+ How to Build
+
+ Simply, run:
+
+ % make
+ % make install
+
+ ... to create the TuxPaint.app application bundle that can be run
+ in-place or copied to /Applications. It also creates TuxPaint.dmg
+ for distribution.
+
+ -------------------------------------------------------
+
+ Known Issues
+
+ * A macOS binary built on a specific version of macOS only runs on
+ that version of macOS or later. To ensure Tux Paint can run on
+ the oldest version of macOS possible, build it on the oldest
+ version of macOS available. As of this writing we know Tux Paint
+ cannot be built to run on macOS 10.7 or earlier.
+
+ See "Old Versions of macOS" below for best-effort instructions
+ on how to obtain, install, and build Tux Paint on an old version
+ of macOS.
+
+ -------------------------------------------------------
+
+ Old Versions of macOS
+
+ Some old versions of macOS can be downloaded from Apple's support
+ page: https://support.apple.com/en-us/HT211683
+
+ macOS does allow dual booting of multiple versions of the OS, but
+ it's safer and easier to install the old macOS onto a flash drive.
+ Wherever you're installing it, the target drive's partitioniong
+ scheme and partition type must match what the old macOS expects, so
+ use the Disk Utility to partition and format the flash drive
+ accordingly.
+
+ As of this writing, the oldest version of macOS available on Apple's
+ support site is Yosemite 10.10, which expects "GPT (GUID Partition
+ Table)" partitioning scheme instead of the older MBR scheme, and
+ "Mac OS Extended (Journaled)" as the partition type instead of the
+ newer APFS partition type.
+
+ Upon launching the installer, if you get a popup about macOS being
+ too old or new to be installed, a bootable installer can be created
+ using the instructions found here:
+ https://support.apple.com/en-mide/HT201372
+
+ It has been found that macOS can be installed onto the bootable
+ media itself, so you can make the flash drive into a bootable
+ installer then install the old macOS onto the same flash drive.
+
+ Once the old macOS is installed, you may find the Xcode on the App
+ Store is too new to run on the version of the old macOS. Old
+ versions of Xcode can be downloaded from Apple's Developer site in
+ an area accessible with free registration:
+ https://developer.apple.com/download/more/
+
+ The list of macOS versions and the last version of Xcode compatible
+ with them are laid out nicely on the Wikipedia page on Xcode:
+ https://en.wikipedia.org/wiki/Xcode#Version_comparison_table
+
+ And because Xcode is being installed manually, you can skip the step
+ to install the Xcode command line tools (do not run "xcode-select
+ --install") but otherwise build Tux Paint using the same steps
+ described in the earlier part of this document.
+
+ ----------------------------------------------------------------------
+
+Debugging
+
+ Debugging output — to "STDOUT" on Linux and Unix, to a "stdout.txt" file
+ on Windows, and to the file "/tmp/tuxpaint.log" on macOS — can be
+ enabled by setting "DEBUG" (and, if verbose logging is wanted,
+ "VERBOSE") #defines in "src/debug.h" and (re)compiling Tux Paint.
+
+ ----------------------------------------------------------------------
+
+Uninstalling Tux Paint
Windows
@@ -376,6 +760,18 @@ Uninstalling Tux Paint:
It is also possible to use the entry "TuxPaint (remove only)" in the
Control Panel Add/Remove programs section.
+ ----------------------------------------------------------------------
+
+ macOS
+
+ Delete "TuxPaint.app" from the "Applications" folder. Data files,
+ including the configuration files, stamps, and saved pictures, may be
+ found in "Library/Application Support/TuxPaint" (all users) and
+ "/Users/USERNAME/Library/Application Support/TuxPaint" (individual
+ users).
+
+ ----------------------------------------------------------------------
+
Linux
Within the Tux Paint source directory (where you compiled Tux Paint),
diff --git a/docs/en/OPTIONS.txt b/docs/en/OPTIONS.txt
index 15e1eede2..bb2e46c1f 100644
--- a/docs/en/OPTIONS.txt
+++ b/docs/en/OPTIONS.txt
@@ -1,12 +1,38 @@
Tux Paint
- version 0.9.26
+ version 0.9.27
Options Documentation
Copyright © 2002-2021 by various contributors; see AUTHORS.
http://www.tuxpaint.org/
- June 28, 2021
+ August 29, 2021
+
+ ----------------------------------------------------------------------
+
+ +---------------------------------------------+
+ |Table of Contents |
+ |---------------------------------------------|
+ | * Tux Paint Config. |
+ | * Configuration File |
+ | * Available Options |
+ | * Video/Sound |
+ | * Mouse/Keyboard |
+ | * Simplification |
+ | * Languages |
+ | * Printing |
+ | * Saving |
+ | * Data |
+ | * Accessibility |
+ | * Joystick |
+ | * Overriding System Config. Options |
+ | * Command-Line Options |
+ | * Command-Line Informational Options |
+ | * Choosing a Different Language |
+ | * Available Languages |
+ | * Setting Your Environment's Locale |
+ | * Special Fonts |
+ +---------------------------------------------+
----------------------------------------------------------------------
@@ -79,964 +105,1261 @@ Windows Users
(Command-line settings will override these. See the "Command-Line
Options" section, below.)
- fullscreen=yes
+ ----------------------------------------------------------------------
- Run the program in full screen mode, rather than in a window.
+Video/Sound
- fullscreen=native
+ Video
- Run the program in full screen mode. Additionally, assume the
- screen's current resolution (set by the operating system).
+ fullscreen=yes
- windowsize=SIZE
+ Run the program in full screen mode, rather than in a
+ window.
- Run the program at a different size (in windowed mode) or at a
- different screen resolution (in fullscreen mode), rather than
- the default (usually 800x600).
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "fullscreen=no". In both cases, may be overridden by the
+ command-line option "--windowed".
- The SIZE value should be presented in pixels, in
- 'width-by-height' format, with an "x" (lowercase X) between the
- values. The size can be anything that's at least 640 wide, and
- at least 480 tall.
+ fullscreen=native
- Some examples:
+ Run the program in full screen mode. Additionally, assume
+ the screen's current resolution (set by the operating
+ system).
- * 640x480
- * 1024x768
- * 768x1024
- * 1600x1200
+ windowsize=SIZE
- orient=portrait
+ Run the program at a different size (in windowed mode) or at
+ a different screen resolution (in fullscreen mode), rather
+ than the default (usually 800x600).
- Swaps the width/height options given to Tux Paint, useful for
- rotating the window on portait displays, such as a tablet PC
- that's in tablet orientation.
+ The SIZE value should be presented in pixels, in
+ 'width-by-height' format, with an "x" (lowercase X) between
+ the values. The size can be anything that's at least 640
+ wide, and at least 480 tall.
- native=yes
+ Some examples:
- When running Tux Paint in fullscreen mode, this assumes the
- screen's current resolution (overriding any "windowsize"
- option), as set by the operating system.
+ * 640x480
+ * 1024x768
+ * 768x1024
+ * 1600x1200
- buttonsize=SIZE
+ orient=portrait
- Set the pixel size of buttons in Tux Paint's user interface
- (overriding the default of "48"). Useful when using very
- high-density displays or coarse input devices, such as eye gaze
- trackers.
+ Swaps the width/height options given to Tux Paint, useful
+ for rotating the window on portait displays, such as a
+ tablet PC that's in tablet orientation.
- The SIZE value should be presented in pixels, and can be
- anything between 24 and 192, inclusive. Most buttons are square,
- and this will affect their width and height.
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "orient=landscape". In both cases, may be overridden by the
+ command-line option "--orient=landscape".
- Note: If the chosen button size would cause the buttons to be
- too large for all required UI elements to appear under Tux
- Paint's chosen window size, the largest possible button size
- will be used. (A note will appear in stderr.)
+ native=yes
- allowscreensaver=yes
+ When running Tux Paint in fullscreen mode, this assumes the
+ screen's current resolution (overriding any "windowsize"
+ option), as set by the operating system.
- By default, Tux Paint prevents your system's screensaver from
- starting up. You can override this by using the
- "allowscreensaver" option. Note: This requires version 1.2.12 or
- higher of the SDL library. (You can also do this by setting the
- "SDL_VIDEO_ALLOW_SCREENSAVER" environment variable on your
- system to "1".)
+ allowscreensaver=yes
- nosound=yes
+ By default, Tux Paint prevents your system's screensaver
+ from starting up. You can override this by using the
+ "allowscreensaver" option. Note: This requires version
+ 1.2.12 or higher of the SDL library. (You can also do this
+ by setting the "SDL_VIDEO_ALLOW_SCREENSAVER" environment
+ variable on your system to "1".)
- Disable sound effects. (Note: Pressing [Alt] + [S] cannot be
- used to reenable sounds if they were disabled using this
- option.)
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "allowscreensaver=no" or "disablescreensaver=yes". In both
+ cases, may be overridden by the command-line option
+ "--disablescreensaver".
- nostereo=yes
+ Sound
- Disable stereo panning support. (Useful for users with hearing
- impairment in one ear, or places where a single speaker or
- headphone is being used.)
+ nosound=yes
- noquit=yes
+ Disable sound effects. (Note: Pressing [Alt] + [S] cannot be
+ used to reenable sounds if they were disabled using this
+ option.)
- Disable the on-screen "Quit" button and prevent the [Escape] key
- from quitting Tux Paint.
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nosound=no" or "sound=yes". In both cases, may be
+ overridden by the command-line option "--sound".
- Using the [Alt] + [F4] keyboard combination or clicking the
- window's close button (assuming you're not in fullscreen mode)
- still works to quit Tux Paint.
+ nostereo=yes
- You can also use the following keyboard combination to quit:
- [Shift] + [Control] + [Escape].
+ Disable stereo panning support. (Useful for users with
+ hearing impairment in one ear, or places where a single
+ speaker or headphone is being used.)
- noprint=yes
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nostereo=no" or "stereo=yes". In both cases, may be
+ overridden by the command-line option "--stereo".
- Disable the printing feature.
+ Interface Size
- printdelay=SECONDS
+ buttonsize=SIZE
- Restrict printing so that printing can occur only once every
- SECONDS seconds.
+ Set the pixel size of buttons in Tux Paint's user interface
+ (overriding the default of "48"). Useful when using very
+ high-density displays or coarse input devices, such as eye
+ gaze trackers.
- printcommand=COMMAND
+ The SIZE value should be presented in pixels, and can be
+ anything between 24 and 192, inclusive. Most buttons are
+ square, and this will affect their width and height.
- (Linux and Unix only)
+ Note: If the chosen button size would cause the buttons to
+ be too large for all required UI elements to appear under
+ Tux Paint's chosen window size, the largest possible button
+ size will be used. (A note will appear in stderr.)
- Use the command COMMAND to print a PostScript format file when
- the 'Print' button is clicked. If this option is not
- specifically not set, the default command is:
+ colorsrows=ROWS
- lpr
+ How many rows of color palette buttons to show; useful when
+ using a large color palette (see "colorfile", above), and/or
+ for use with coarse input devices (like eyegaze trackers).
+ "ROWS" may be between "1" (the default) and "3".
- Note: Versions of Tux Paint prior to 0.9.15 sent PNG format data
- to the print command (which defaulted to "pngtopnm | pnmtops |
- lpr").
+ ----------------------------------------------------------------------
- If you set an alternative printcommand in the configuration file
- prior to version 0.9.15, you will need to change it.
+Mouse/Keyboard
- altprintcommand=COMMAND
+ Cursor
- (Linux and Unix only)
+ nofancycursors=yes
- Use the command COMMAND to print a PostScript format file when
- the 'Print' button is clicked while the [Alt] modifier key is
- being held. (This is typically used for providing a print
- dialog, similar to when pressing [Alt]+'Print' in Windows and
- macOS.)
+ This disables the fancy mouse pointer shapes in Tux Paint,
+ and uses your environment's normal mouse pointer.
- If this option is not specifically not set, the default command
- is KDE's graphical print dialog:
+ In some enviornments, the fancy cursors cause problems. Use
+ this option to avoid them.
- kprinter
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nofancycursors=no" or "fancycursors=yes". In both cases,
+ may be overridden by the command-line option
+ "--fancycursors".
- printcfg=yes
+ hidecursor=yes
- (Windows and macOS only)
+ This completely hides the mouse pointer shapes in Tux Paint.
- Tux Paint will use a printer configuration file when printing.
- Push the [Alt] key while clicking the 'Print' button in Tux
- Paint to cause a Windows print dialog window to appear.
+ This is useful for touchscreen devices, such as tablet PCs.
- (Note: This only works when not running Tux Paint in fullscreen
- mode.) Any configuration changes made in this dialog will be
- saved to the file "userdata/print.cfg" , and used again, as long
- as the "printcfg" option is set.
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "hidecursor=no" or "showcursor=yes". In both cases, may be
+ overridden by the command-line option "--showcursor".
- altprint=always
+ Keyboard
- This causes Tux Paint to always show the printer dialog (or, on
- Linux/Unix, run the "altprintcommand") when the 'Print' button
- is clicked. In other words, it's like clicking 'Print' while
- holding [Alt], except you don't need to hold [Alt] every time.
+ noshortcuts=yes
- altprint=never
+ This disable keyboard shortcuts (e.g., [Ctrl]-[S] for save,
+ [Ctrl]-[N] for a new image, etc.)
- This prevents Tux Paint from ever showing the printer dialog
- (or, on Linux/Unix, run the "altprintcommand") when the 'Print'
- button is clicked. In other words, it makes the [Alt] key have
- no effect when clicking the 'Print' button.
+ This is useful to prevent unwanted commands from being
+ activated by children who aren't experienced with keyboards.
- altprint=mod
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "noshortcuts=no" or "shortcuts=yes". In both cases, may be
+ overridden by the command-line option "--shortcuts".
- This is the normal, default behavior. Tux Paint shows a printer
- dialog (or, on Linux/Unix, runs the "altprintcommand"), when the
- [Alt] key is pressed while the 'Print' button is clicked.
- Clicking 'Print' without holding [Alt] prints without showing a
- dialog.
+ Mouse
- papersize=PAPERSIZE
+ grab=yes
- (Platforms that use Tux Paint's internal PostScript generator —
- not Windows, macOS, BeOS, or Haiku.)
+ Tux Paint will attempt to 'grab' the mouse and keyboard, so
+ that the mouse is confined to Tux Paint's window, and nearly
+ all keyboard input is passed directly to it.
- Tell Tux Paint what size PostScript to generate. If none is
- specified, Tux Paint first checks your $PAPER environment
- variable, then the file /etc/papersize, then uses the the
- 'libpaper' library's default paper size.
+ This is useful to disable operating system actions that
+ could get the user out of Tux Paint [Alt]-[Tab] window
+ cycling, [Ctrl]-[Escape], etc. This is especially useful in
+ fullscreen mode.
- Valid paper sizes include: letter, legal, tabloid, executive,
- note, statement, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
- b0, b1, b2 b3, b4, 10x14, 11x17, halfletter, halfexecutive,
- halfnote, folio, quarto, ledger, archA, archB, archC, archD,
- archE, flsa, flse, csheet, dsheet, esheet.
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using "grab=no"
+ or "dontgrab=yes". In both cases, may be overridden by the
+ command-line option "--dontgrab".
- nolockfile=yes
+ nowheelmouse=yes
- By default, Tux Paint uses what's known as a 'lockfile' to
- prevent it from being launched more than once in 30 seconds.
- (This is to avoid accidentally running multiple copies; for
- example, by double-clicking a single-click launcher, or simply
- impatiently clicking the icon multiple times.)
+ This disables support for the wheel on mice that have it.
+ (Normally, the wheel will scroll the selector menu on the
+ right.)
- To make Tux Paint ignore the lockfile, allowing it to run again,
- even if it was just launched less than 30 seconds ago, enable
- this setting in the configuration file, or run Tux Paint with
- the --nolockfile option on the command-line.
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nowheelmouse=no" or "wheelmouse=yes". In both cases, may be
+ overridden by the command-line option "--wheelmouse".
- By default, the lockfile is stored in "~/.tuxpaint/" under Linux
- and Unix, and "userdata\" under Windows.
+ nobuttondistinction=yes
- simpleshapes=yes
+ Prior to Tux Paint 0.9.15, the middle and right buttons on a
+ mouse could also be used for clicking. In version 0.9.15, it
+ was changed so that only the left mouse button worked, so as
+ to not train children to use the wrong button.
- Disable the rotation step of the 'Shape' tool. Click, drag and
- release is all that will be needed to draw a shape.
+ However, for children who have trouble with the mouse, this
+ distinction between the two or three buttons on a mouse can
+ be disabled (returning Tux Paint to its old behavior) by
+ using this option.
- uppercase=yes
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nobuttondistinction=no" or "buttondistinction=yes". In both
+ cases, may be overridden by the command-line option
+ "--buttondistinction".
- All text will be rendered only in uppercase (e.g., "Brush" will
- be "BRUSH"). Useful for children who can read, but who have only
- learned uppercase letters so far.
+ ----------------------------------------------------------------------
- grab=yes
+Simplification
- Tux Paint will attempt to 'grab' the mouse and keyboard, so that
- the mouse is confined to Tux Paint's window, and nearly all
- keyboard input is passed directly to it.
+ Interface Simplification
- This is useful to disable operating system actions that could
- get the user out of Tux Paint [Alt]-[Tab] window cycling,
- [Ctrl]-[Escape], etc. This is especially useful in fullscreen
- mode.
+ simpleshapes=yes
- noshortcuts=yes
+ Disable the rotation step of the 'Shape' tool. Click, drag
+ and release is all that will be needed to draw a shape.
- This disable keyboard shortcuts (e.g., [Ctrl]-[S] for save,
- [Ctrl]-[N] for a new image, etc.)
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "simpleshapes=no" or "complexshapes=yes". In both cases, may
+ be overridden by the command-line option "--complexshapes".
- This is useful to prevent unwanted commands from being activated
- by children who aren't experienced with keyboards.
+ nooutlines=yes
- nowheelmouse=yes
+ In this mode, much simpler outlines and 'rubber-band' lines
+ are displayed when using the Lines, Shapes, Stamps and
+ Eraser tools.
- This disables support for the wheel on mice that have it.
- (Normally, the wheel will scroll the selector menu on the
- right.)
+ This can help when Tux Paint is run on very slow computers,
+ or displayed on a remote X-Window display.
- nobuttondistinction=yes
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nooutlines=no" or "outlines=yes". In both cases, may be
+ overridden by the command-line option "--outlines".
- Prior to Tux Paint 0.9.15, the middle and right buttons on a
- mouse could also be used for clicking. In version 0.9.15, it was
- changed so that only the left mouse button worked, so as to not
- train children to use the wrong button.
+ uppercase=yes
- However, for children who have trouble with the mouse, this
- distinction between the two or three buttons on a mouse can be
- disabled (returning Tux Paint to its old behavior) by using this
- option.
+ All text will be rendered only in uppercase (e.g., "Brush"
+ will be "BRUSH"). Useful for children who can read, but who
+ have only learned uppercase letters so far.
- nofancycursors=yes
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "uppercase=no" or "mixedcase=yes". In both cases, may be
+ overridden by the command-line option "--mixedcase".
- This disables the fancy mouse pointer shapes in Tux Paint, and
- uses your environment's normal mouse pointer.
+ Initial Stamp Size
- In some enviornments, the fancy cursors cause problems. Use this
- option to avoid them.
+ stampsize=SIZE
- hidecursor=yes
+ Use this option to force Tux Paint to set the starting size
+ of all stamps. The SIZE value should be between 0 (smallest)
+ and 10 (largest). The size is relative to the available
+ sizes of the stamp, which depends on the stamp itself, and
+ Tux Paint's current canvas size.
- This completely hides the mouse pointer shapes in Tux Paint.
+ Specify "default" to let Tux Paint decide (its standard
+ behavior).
- This is useful for touchscreen devices, such as tablet PCs.
+ Control Simplification
- nooutlines=yes
+ noquit=yes
- In this mode, much simpler outlines and 'rubber-band' lines are
- displayed when using the Lines, Shapes, Stamps and Eraser tools.
+ Disable the on-screen "Quit" button and prevent the [Escape]
+ key from quitting Tux Paint.
- This can help when Tux Paint is run on very slow computers, or
- displayed on a remote X-Window display.
+ Using the [Alt] + [F4] keyboard combination or clicking the
+ window's close button (assuming you're not in fullscreen
+ mode) still works to quit Tux Paint.
- sysfonts=yes
+ You can also use the following keyboard combination to quit:
+ [Shift] + [Control] + [Escape].
- This option causes Tux Paint to attempt to load fonts (for use
- in the Text tool) from your operating system. Normally, Tux
- Paint will only load the ones that came bundled with Tux Paint.
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "noquit=no" or "quit=yes". In both cases, may be overridden
+ by the command-line option "--quit".
- alllocalefonts=yes
+ nostamps=yes
- Prior to version 0.9.21, Tux Paint loaded all fonts in its own
- fonts directory, including locale-specific ones (e.g., the one
- for Tibetan, which had no latin characters). As of 0.9.21, the
- only font loaded from the locale-specific subdirectory, if any,
- is one matching the locale Tux Paint is running on.
+ This option tells Tux Paint to not load any rubber stamp
+ images, which in turn ends up disabling the Stamps tool.
+
+ This can speed up Tux Paint when it first loads up, and
+ reduce memory usage while it's running. Of course, no stamps
+ will be available at all.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nostamps=no" or "stamps=yes". In both cases, may be
+ overridden by the command-line option "--stamps".
+
+ nostampcontrols=yes
+
+ Some images in the Stamps tool can be mirrored, flipped,
+ and/or have their size changed. This option disables the
+ controls, and only provides the basic stamps.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nostampcontrols=no" or "stampcontrols=yes". In both cases,
+ may be overridden by the command-line option
+ "--stampcontrols".
+
+ nomagiccontrols=yes
+
+ Some Magic tools have the option of acting like a
+ paintbrush, or affecting the entire canvas at once. This
+ option disables the controls, and only provides the default
+ functionality (usually paint-mode).
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nomagiccontrols=no" or "magiccontrols=yes". In both cases,
+ may be overridden by the command-line option
+ "--magiccontrols".
+
+ noshapecontrols=yes
+
+ Disable the control buttons shown when using the Shapes tool
+ that allow changing how shapes are drawn — centered around
+ the initial mouse click, or with a corner at the initial
+ mouse click.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "noshapecontrols=no" or "shapecontrols=yes". In both cases,
+ may be overridden by the command-line option
+ "--shapecontrols".
+
+ nolabel=yes
+
+ Disables the Label tool: the tool that allows text entry
+ which can be edited later.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nolabel=no" or "label=yes". In both cases, may be
+ overridden by the command-line option "--label".
+
+ ----------------------------------------------------------------------
+
+Languages
+
+ Language
+
+ lang=LANGUAGE
+
+ Run Tux Paint in one of the supported languages. Possible
+ choice for LANGUAGE currently include:
+
+ +-----------------------------------------------------------+
+ |english |american-english | |
+ |---------------------+---------------------+---------------|
+ |acholi |acoli | |
+ |---------------------+---------------------+---------------|
+ |afrikaans | | |
+ |---------------------+---------------------+---------------|
+ |akan |twi-fante | |
+ |---------------------+---------------------+---------------|
+ |albanian | | |
+ |---------------------+---------------------+---------------|
+ |amharic | | |
+ |---------------------+---------------------+---------------|
+ |arabic | | |
+ |---------------------+---------------------+---------------|
+ |aragones | | |
+ |---------------------+---------------------+---------------|
+ |armenian |hayeren | |
+ |---------------------+---------------------+---------------|
+ |assamese | | |
+ |---------------------+---------------------+---------------|
+ |asturian | | |
+ |---------------------+---------------------+---------------|
+ |australian-english | | |
+ |---------------------+---------------------+---------------|
+ |azerbaijani | | |
+ |---------------------+---------------------+---------------|
+ |bambara | | |
+ |---------------------+---------------------+---------------|
+ |basque |euskara | |
+ |---------------------+---------------------+---------------|
+ |belarusian |bielaruskaja | |
+ |---------------------+---------------------+---------------|
+ |bengali | | |
+ |---------------------+---------------------+---------------|
+ |bodo | | |
+ |---------------------+---------------------+---------------|
+ |bokmal | | |
+ |---------------------+---------------------+---------------|
+ |bosnian | | |
+ |---------------------+---------------------+---------------|
+ |brazilian-portuguese |portugues-brazilian |brazilian |
+ |---------------------+---------------------+---------------|
+ |breton |brezhoneg | |
+ |---------------------+---------------------+---------------|
+ |british-english |british | |
+ |---------------------+---------------------+---------------|
+ |bulgarian | | |
+ |---------------------+---------------------+---------------|
+ |canadian-english | | |
+ |---------------------+---------------------+---------------|
+ |catalan |catala | |
+ |---------------------+---------------------+---------------|
+ |chinese |simplified-chinese | |
+ |---------------------+---------------------+---------------|
+ |croatian |hrvatski | |
+ |---------------------+---------------------+---------------|
+ |czech |cesky | |
+ |---------------------+---------------------+---------------|
+ |danish |dansk | |
+ |---------------------+---------------------+---------------|
+ | |dogri | |
+ |---------------------+---------------------+---------------|
+ |dutch |nederlands | |
+ |---------------------+---------------------+---------------|
+ |esperanto | | |
+ |---------------------+---------------------+---------------|
+ |estonian | | |
+ |---------------------+---------------------+---------------|
+ |faroese | | |
+ |---------------------+---------------------+---------------|
+ |finnish |suomi | |
+ |---------------------+---------------------+---------------|
+ |french |francais | |
+ |---------------------+---------------------+---------------|
+ |fula |fulah |pulaar-fulfulde|
+ |---------------------+---------------------+---------------|
+ |gaelic |gaidhlig |irish-gaelic |
+ |---------------------+---------------------+---------------|
+ |galician |galego | |
+ |---------------------+---------------------+---------------|
+ |georgian | | |
+ |---------------------+---------------------+---------------|
+ |german |deutsch | |
+ |---------------------+---------------------+---------------|
+ |greek | | |
+ |---------------------+---------------------+---------------|
+ |gronings |zudelk-veenkelonioals| |
+ |---------------------+---------------------+---------------|
+ |gujarati | | |
+ |---------------------+---------------------+---------------|
+ |hebrew | | |
+ |---------------------+---------------------+---------------|
+ |hindi | | |
+ |---------------------+---------------------+---------------|
+ |hungarian |magyar | |
+ |---------------------+---------------------+---------------|
+ |icelandic |islenska | |
+ |---------------------+---------------------+---------------|
+ |indonesian |bahasa-indonesia | |
+ |---------------------+---------------------+---------------|
+ |inuktitut | | |
+ |---------------------+---------------------+---------------|
+ |italian |italiano | |
+ |---------------------+---------------------+---------------|
+ |japanese | | |
+ |---------------------+---------------------+---------------|
+ |kabyle | |kabylian |
+ |---------------------+---------------------+---------------|
+ |kannada | | |
+ |---------------------+---------------------+---------------|
+ |kashmiri-devanagari | | |
+ |---------------------+---------------------+---------------|
+ |kashmiri-perso-arabic| | |
+ |---------------------+---------------------+---------------|
+ |khmer | | |
+ |---------------------+---------------------+---------------|
+ |kiga |chiga | |
+ |---------------------+---------------------+---------------|
+ |kinyarwanda | | |
+ |---------------------+---------------------+---------------|
+ |klingon |tlhIngan | |
+ |---------------------+---------------------+---------------|
+ |konkani-devanagari | | |
+ |---------------------+---------------------+---------------|
+ |konkani-roman | | |
+ |---------------------+---------------------+---------------|
+ |korean | | |
+ |---------------------+---------------------+---------------|
+ |kurdish | | |
+ |---------------------+---------------------+---------------|
+ |latvian | | |
+ |---------------------+---------------------+---------------|
+ |lithuanian |lietuviu | |
+ |---------------------+---------------------+---------------|
+ |luganda | | |
+ |---------------------+---------------------+---------------|
+ |luxembourgish |letzebuergesch | |
+ |---------------------+---------------------+---------------|
+ |macedonian | | |
+ |---------------------+---------------------+---------------|
+ |maithili | | |
+ |---------------------+---------------------+---------------|
+ |malay | | |
+ |---------------------+---------------------+---------------|
+ |malayalam | | |
+ |---------------------+---------------------+---------------|
+ |manipuri-bengali | | |
+ |---------------------+---------------------+---------------|
+ |manipuri-meitei-mayek| | |
+ |---------------------+---------------------+---------------|
+ |marathi | | |
+ |---------------------+---------------------+---------------|
+ |mexican-spanish |espanol-mejicano |mexican |
+ |---------------------+---------------------+---------------|
+ |mongolian | | |
+ |---------------------+---------------------+---------------|
+ |ndebele | | |
+ |---------------------+---------------------+---------------|
+ |nepali | | |
+ |---------------------+---------------------+---------------|
+ |northern-sotho |sesotho-sa-leboa | |
+ |---------------------+---------------------+---------------|
+ |norwegian |nynorsk |norsk |
+ |---------------------+---------------------+---------------|
+ |occitan | | |
+ |---------------------+---------------------+---------------|
+ |odia |oriya | |
+ |---------------------+---------------------+---------------|
+ |ojibwe |ojibway | |
+ |---------------------+---------------------+---------------|
+ |persian | | |
+ |---------------------+---------------------+---------------|
+ |polish |polski | |
+ |---------------------+---------------------+---------------|
+ |portuguese |portugues | |
+ |---------------------+---------------------+---------------|
+ |punjabi |panjabi | |
+ |---------------------+---------------------+---------------|
+ |romanian | | |
+ |---------------------+---------------------+---------------|
+ |russian |russkiy | |
+ |---------------------+---------------------+---------------|
+ |sanskrit | | |
+ |---------------------+---------------------+---------------|
+ |santali-devanagari | | |
+ |---------------------+---------------------+---------------|
+ |santali-ol-chiki | | |
+ |---------------------+---------------------+---------------|
+ |scottish |ghaidhlig |scottish-gaelic|
+ |---------------------+---------------------+---------------|
+ |serbian | | |
+ |---------------------+---------------------+---------------|
+ |serbian-latin | | |
+ |---------------------+---------------------+---------------|
+ |shuswap |secwepemctin | |
+ |---------------------+---------------------+---------------|
+ |sindhi-devanagari | | |
+ |---------------------+---------------------+---------------|
+ |sindhi-perso-arabic | | |
+ |---------------------+---------------------+---------------|
+ |slovak | | |
+ |---------------------+---------------------+---------------|
+ |slovenian |slovensko | |
+ |---------------------+---------------------+---------------|
+ |songhay | | |
+ |---------------------+---------------------+---------------|
+ |southafrican-english | | |
+ |---------------------+---------------------+---------------|
+ |spanish |espanol | |
+ |---------------------+---------------------+---------------|
+ |sundanese | | |
+ |---------------------+---------------------+---------------|
+ |swahili | | |
+ |---------------------+---------------------+---------------|
+ |swedish |svenska | |
+ |---------------------+---------------------+---------------|
+ |tagalog | | |
+ |---------------------+---------------------+---------------|
+ |tamil | | |
+ |---------------------+---------------------+---------------|
+ |telugu | | |
+ |---------------------+---------------------+---------------|
+ |thai | | |
+ |---------------------+---------------------+---------------|
+ |tibetan | | |
+ |---------------------+---------------------+---------------|
+ |traditional-chinese | | |
+ |---------------------+---------------------+---------------|
+ |turkish | | |
+ |---------------------+---------------------+---------------|
+ |twi | | |
+ |---------------------+---------------------+---------------|
+ |ukrainian | | |
+ |---------------------+---------------------+---------------|
+ |urdu | | |
+ |---------------------+---------------------+---------------|
+ |venda | | |
+ |---------------------+---------------------+---------------|
+ |venetian |veneto | |
+ |---------------------+---------------------+---------------|
+ |vietnamese | | |
+ |---------------------+---------------------+---------------|
+ |walloon |walon | |
+ |---------------------+---------------------+---------------|
+ |welsh |cymraeg | |
+ |---------------------+---------------------+---------------|
+ |wolof | | |
+ |---------------------+---------------------+---------------|
+ |xhosa | | |
+ |---------------------+---------------------+---------------|
+ |miahuatlan-zapotec | |zapotec |
+ |---------------------+---------------------+---------------|
+ |zulu | |zulu |
+ +-----------------------------------------------------------+
+
+ --locale LOCALE
+
+ Run Tux Paint in one of the support languages. See the
+ "Choosing a Different Language" section below for the locale
+ strings (e.g., "de_DE" for German) to use.
+
+ (If your locale is already set, e.g. with the "$LANG"
+ environment variable, this option is not necessary, since
+ Tux Paint honors your environment's setting, if possible.)
+
+ mirrorstamps=yes
+
+ For stamps that can be mirrored, this option sets them to
+ their mirrored shape by default.
+
+ This can be useful for people who prefer things
+ right-to-left, rather than left-to-right.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "mirrorstamps=no" or "dontmirrorstamps=yes". In both cases,
+ may be overridden by the command-line option
+ "--dontmirrorstamps".
+
+ Fonts
+
+ sysfonts=yes
+
+ This option causes Tux Paint to attempt to load fonts (for
+ use in the Text tool) from your operating system. Normally,
+ Tux Paint will only load the ones that came bundled with Tux
+ Paint.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "sysfonts=no" or "nosysfonts=yes". In both cases, may be
+ overridden by the command-line option "--nosysfonts".
+
+ alllocalefonts=yes
+
+ Prior to version 0.9.21, Tux Paint loaded all fonts in its
+ own fonts directory, including locale-specific ones (e.g.,
+ the one for Tibetan, which had no latin characters). As of
+ 0.9.21, the only font loaded from the locale-specific
+ subdirectory, if any, is one matching the locale Tux Paint
+ is running on.
+
+ To load all locale-specific fonts (the old behavior), set
+ this option.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "alllocalefonts=no" or "currentlocalefont=yes". In both
+ cases, may be overridden by the command-line option
+ "--currentlocalefont".
+
+ ----------------------------------------------------------------------
- To load all locale-specific fonts (the old behavior), set this
- option.
+Printing
- nostamps=yes
+ Print Permissions
- This option tells Tux Paint to not load any rubber stamp images,
- which in turn ends up disabling the Stamps tool.
+ noprint=yes
- This can speed up Tux Paint when it first loads up, and reduce
- memory usage while it's running. Of course, no stamps will be
- available at all.
+ Disable the printing feature.
- nostampcontrols=yes
+ printdelay=SECONDS
- Some images in the Stamps tool can be mirrored, flipped, and/or
- have their size changed. This option disables the controls, and
- only provides the basic stamps.
+ Restrict printing so that printing can occur only once every
+ SECONDS seconds.
- nomagiccontrols=yes
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "printdelay=0". In both cases, may be overridden by the
+ command-line option "--printdelay=0".
- Some Magic tools have the option of acting like a paintbrush, or
- affecting the entire canvas at once. This option disables the
- controls, and only provides the default functionality (usually
- paint-mode).
+ Show Printer Dialog
- noshapecontrols=yes
+ altprint=always
- Disable the control buttons shown when using the Shapes tool
- that allow changing how shapes are drawn — centered around the
- initial mouse click, or with a corner at the initial mouse
- click.
+ This causes Tux Paint to always show the printer dialog (or,
+ on Linux/Unix, run the "altprintcommand") when the 'Print'
+ button is clicked. In other words, it's like clicking
+ 'Print' while holding [Alt], except you don't need to hold
+ [Alt] every time.
- nolabel=yes
+ altprint=never
- Disables the Label tool: the tool that allows text entry which
- can be edited later.
+ This prevents Tux Paint from ever showing the printer dialog
+ (or, on Linux/Unix, run the "altprintcommand") when the
+ 'Print' button is clicked. In other words, it makes the
+ [Alt] key have no effect when clicking the 'Print' button.
- newcolorslast=yes
+ altprint=mod
- Places the blank color options in the New dialog at the end, so
- that any Starters and/or Templates are shown first.
+ This is the normal, default behavior. Tux Paint shows a
+ printer dialog (or, on Linux/Unix, runs the
+ "altprintcommand"), when the [Alt] key is pressed while the
+ 'Print' button is clicked. Clicking 'Print' without holding
+ [Alt] prints without showing a dialog.
- mirrorstamps=yes
+ Save Printer Configuration
- For stamps that can be mirrored, this option sets them to their
- mirrored shape by default.
+ printcfg=yes
- This can be useful for people who prefer things right-to-left,
- rather than left-to-right.
+ (Windows and macOS only)
- mouse-accessibility=yes
+ Tux Paint will use a printer configuration file when
+ printing. Push the [Alt] key while clicking the 'Print'
+ button in Tux Paint to cause a Windows print dialog window
+ to appear.
- In this mode, instead of clicking, dragging and releasing (e.g.,
- to draw), you click, move, and click again to end the motion.
+ (Note: This only works when not running Tux Paint in
+ fullscreen mode.) Any configuration changes made in this
+ dialog will be saved to the file "userdata/print.cfg" , and
+ used again, as long as the "printcfg" option is set.
- onscreen-keyboard=yes
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "printcfg=no" or "noprintcfg=yes". In both cases, may be
+ overridden by the command-line option "--noprintcfg".
- Presents a clickable on-screen keyboard when using the Text and
- Label tools.
+ Print Commands
- onscreen-keyboard-layout=LAYOUTNAME
+ printcommand=COMMAND
- Selects the initial layout for the on-screen keyboard when using
- the Text and Label tools.
- Note: Using this option implies automatically
- onscreen-keyboard=yes, so setting both is redundant.
+ (Linux and Unix only)
- onscreen-keyboard-disable-change=yes
+ Use the command COMMAND to print a PostScript format file
+ when the 'Print' button is clicked. If this option is not
+ specifically not set, the default command is:
- Disables the possibility for changing the layout of the
- on-screen keyboard when using the Text and Label tools, useful
- for simplifying things for the small children.
- Note: Using this option implies automatically
- onscreen-keyboard=yes, so setting both is redundant.
+ lpr
- joystick-dev=N
+ Note: Versions of Tux Paint prior to 0.9.15 sent PNG format
+ data to the print command (which defaulted to "pngtopnm |
+ pnmtops | lpr").
- Specify which joystick device should be used by Tux Paint.
- Default value is 0 (the first joystick).
+ If you set an alternative printcommand in the configuration
+ file prior to version 0.9.15, you will need to change it.
- joystick-slowness=SPEED
+ altprintcommand=COMMAND
- Sets a delay at each axis motion, allowing to slow the joystick.
- Allowed values are from 0 to 500. Default value is 15.
+ (Linux and Unix only)
- joystick-threshold=THRESHOLD
+ Use the command COMMAND to print a PostScript format file
+ when the 'Print' button is clicked while the [Alt] modifier
+ key is being held. (This is typically used for providing a
+ print dialog, similar to when pressing [Alt]+'Print' in
+ Windows and macOS.)
- Sets the minimum level of axis motion to start moving the
- pointer. Allowed values are from 0 to 32766. Default value is
- 3200.
+ If this option is not specifically not set, the default
+ command is KDE's graphical print dialog:
- joystick-maxsteps=STEPS
+ kprinter
- Sets the maximum pixels the pointer will move at once. Allowed
- values are from 1 to 7. Default value is 7.
+ Paper Size
- joystick-hat-timeout=MILLISECONDS
+ papersize=PAPERSIZE
- Sets the delay after wich the pointer will start moving
- automatically if the hat is keeped pushed. Allowed values are
- from 0 to 3000. Default value is 1000.
+ (Platforms that use Tux Paint's internal PostScript
+ generator — not Windows, macOS, BeOS, or Haiku.)
- joystick-hat-slowness=SPEED
+ Tell Tux Paint what size PostScript to generate. If none is
+ specified, Tux Paint first checks your $PAPER environment
+ variable, then the file /etc/papersize, then uses the the
+ 'libpaper' library's default paper size.
- Sets a delay at each automatic motion, allowing to slow the
- speed of the hat. Allowed values are from 0 to 500. Default
- value is 15.
+ Valid paper sizes include: letter, legal, tabloid,
+ executive, note, statement, a0, a1, a2, a3, a4, a5, a6, a7,
+ a8, a9, a10, b0, b1, b2 b3, b4, 10x14, 11x17, halfletter,
+ halfexecutive, halfnote, folio, quarto, ledger, archA,
+ archB, archC, archD, archE, flsa, flse, csheet, dsheet,
+ esheet.
- joystick-btn-escape=BUTTON NUMBER
+ ----------------------------------------------------------------------
- Selects the joystick button number, as seen by SDL, that will be
- used to generate a escape event. Useful to dismiss dialogs and
- quit.
+Saving
- joystick-btn-brush=BUTTON NUMBER
+ Save Over Earlier Work
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to select the brush tool.
+ saveover=yes
- joystick-btn-stamp=BUTTON NUMBER
+ This disables the "Save over the old version...?" prompt
+ when saving an existing file. With this option, the older
+ version will always be replaced by the new version,
+ automatically.
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to select the stamp tool.
+ saveover=new
- joystick-btn-lines=BUTTON NUMBER
+ This also disables the "Save over the old version...?"
+ prompt when saving an existing file. This option, however,
+ will always save a new file, rather than overwrite the older
+ version.
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to select the lines tool.
+ saveover=ask
- joystick-btn-shapes=BUTTON NUMBER
+ (This option is redundant, since this is the default.) When
+ saving an existing drawing, you will be first asked whether
+ to save over the older version or not.
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to select the shapes tool.
+ Starting Out
- joystick-btn-text=BUTTON NUMBER
+ startblank=yes
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to select the text tool.
+ This causes Tux Paint to display a blank canvas when it
+ first starts up, rather than loading the last image that was
+ being edited.
- joystick-btn-label=BUTTON NUMBER
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "startblank=no" or "startlast=yes". In both cases, may be
+ overridden by the command-line option "--startlast".
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to select the label tool.
+ newcolorslast=yes
- joystick-btn-magic=BUTTON NUMBER
+ Places the blank color options in the New dialog at the end,
+ so that any Starters and/or Templates are shown first.
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to select the magic tool.
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "newcolorslast=no" or "newcolorsfirst=yes". In both cases,
+ may be overridden by the command-line option
+ "--newcolorsfirst".
- joystick-btn-undo=BUTTON NUMBER
+ Save and Export Directories
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to invoke the undo tool.
+ savedir=DIRECTORY
- joystick-btn-redo=BUTTON NUMBER
+ Use this option to change where Tux Paint's "saved"
+ directory/folder is located, which is where Tux Paint saves
+ and opens pictures.
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to select redo tool.
+ If you do not override it, the default location is:
- joystick-btn-eraser=BUTTON NUMBER
+ * Linux & Unix — Under a hidden directory named
+ ".tuxpaint" in your home directory (aka "~" or "$HOME")
+ Example: /home/username/.tuxpaint/saved/
+ * Windows — Inside a folder named "TuxPaint" in your
+ "Application Data" folder.
+ Example: C:\Documents and Settings\Username\Application
+ Data\TuxPaint\saved\
+ * macOS — Inside a folder named "TuxPaint" in your
+ "Application Support" folder.
+ Example: /Users/Username/Library/Application
+ Support/TuxPaint/saved/
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to select eraser tool.
+ Note: When specifying a Windows drive (e.g., "H:\"), you
+ must also specify a subdirectory.
- joystick-btn-new=BUTTON NUMBER
+ Note: Prior to version 0.9.18, Tux Paint would also use the
+ setting or default for "savedir" as the place to search for
+ personal data files (brushes, stamps, starters and fonts).
+ As of version 0.9.18, they may be specified separately (see
+ the "datadir" option, below).
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to launch the dialog for creating a new drawing.
+ Example: savedir=Z:\tuxpaint\
- joystick-btn-open=BUTTON NUMBER
+ exportdir=DIRECTORY
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to launch the dialog for opening an existing drawing.
+ Use this option to change where Tux Paint exports files —
+ single images, or animated GIF slideshows — for external
+ use.
- joystick-btn-save=BUTTON NUMBER
+ If you do not override it, the default location is:
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to save the drawing.
+ * Linux & Unix — If available, wherever your desktop
+ environment is configured for pictures to be stored,
+ based on your XDG (X Desktop Group) configuration. (Try
+ running the command-line "xdg-user-dir PICTURES" to
+ find out.)
+ Typically (in an English locale), this will be a
+ "Pictures" subdirectory in your home directory (i.e.,
+ "$HOME/Pictures" aka "~/Pictures").
+ Tux Paint will fall back to using that typical
+ directory, of no XDG configuration can be read, or
+ nothing is set for "XDG_PICTURES_DIR".
+ * Windows - "My Pictures" directory for each user
+ (normaly "c:\Users\USERNAME\Pictures").
+ You can directly open the folder as follows:
+ * Press "[Windows]+[R]" key to open "Run ..."
+ dialogue.
+ * Enter "Shell:My Pictures" in the text box and push
+ [OK].
+ * macOS — TBD!
- joystick-btn-pgsetup=BUTTON NUMBER
+ Note: When the defaults are used, a new "TuxPaint"
+ subdirectory will be created and used. (e.g.,
+ "~/Pictures/TuxPaint") When the "--exportdir" option is
+ used, the exact path specified will be used (no "TuxPaint"
+ subdirectory is created).
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to launch the page setup dialog for printing.
+ The directory itself (e.g., "~/Pictures/TuxPaint") will be
+ created, if it doesn't exist.
- joystick-btn-print=BUTTON NUMBER
+ If the parent directory (e.g., "~/Pictures/TuxPaint") also
+ does not exist, Tux Paint will attempt to create it as well
+ (but not any directories higher than that).
- Selects the joystick button number, as seen by SDL, that will be
- a shortcut to print.
+ Example: exportdir=/home/penguin/TuxPaintExports
- joystick-buttons-ignore=BUTTON1,BUTTON2,...
+ More Saving Options
- A set of joystick button numbers, as seen by SDL, that should be
- ignored. Otherwise, unless they are used by one of the
- "joystick-btn-" options above, buttons will be seen as a mouse
- left-click.
+ nosave=yes
- stampsize=SIZE
+ This disables Tux Paint's ability to save files (and
+ therefore disables the on-screen "Save" button). It can be
+ used in situations where the program is only being used for
+ fun, or in a test environment.
- Use this option to force Tux Paint to set the starting size of
- all stamps. The SIZE value should be between 0 (smallest) and 10
- (largest). The size is relative to the available sizes of the
- stamp, which depends on the stamp itself, and Tux Paint's
- current canvas size.
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nosave=no" or "save=yes". In both cases, may be overridden
+ by the command-line option "--save".
- Specify "default" to let Tux Paint decide (its standard
- behavior).
+ autosave=yes
+
+ This prevents Tux Paint from asking whether you want to save
+ the current picture when quitting, and assumes you do.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "autosave=no" or "noautosave=yes". In both cases, may be
+ overridden by the command-line option "--noautosave".
- keyboard=yes
+ ----------------------------------------------------------------------
- This allows the keyboard arrow keys to be used to control the
- mouse pointer. (e.g., for mouseless environments, or
- handicapped/accessibility purposes)
+Data
- Features:
+ Lockfile
- * Fine movement within canvas, or coarse movement if Shift is
- held.
- * Coarse movement within tool button areas.
- * Key controls:
- * [Left]/[Right]/[Up]/[Down], numpad [1] thru [9]: Move
- mouse
- * [Space]/[5]: Click mouse (except when using "Text" or
- "Label" tools)
- * [Insert]/[F5]: Click mouse (always)
- * [F4] jump mouse between "Tools", "Colors" and canvas
- areas
- * If mouse is within "Tools" section on the left, or
- "Colors" section at the bottom:
- * [F7], [F8]: Move down/up between buttons,
- respectively (Tools section, only)
- * [F11], [F12]: Move to previous/next button,
- respectively
- * To click-and-drag, hold one of the 'click' keys (e.g.,
- [Insert]), and use the movement keys (e.g., [Left]).
- * Note: The "mouse accessibility" feature works with the
- keyboard mouse controls. With both options enabled,
- painting tools can be used to draw by pressing a
- 'click' key to start clicking, movement keys to move
- around (which will draw), and another 'click' key to
- end the click (stop drawing).
- * A regular mouse and/or joystick may still be used (so you
- can, e.g., move with the mouse, and click with the
- keyboard, or vice-versa)
-
- savedir=DIRECTORY
-
- Use this option to change where Tux Paint's "saved"
- directory/folder is located, which is where Tux Paint saves and
- opens pictures.
-
- If you do not override it, the default location is:
-
- * Linux & Unix — Under a hidden directory named ".tuxpaint"
- in your home directory (aka "~" or "$HOME")
- Example: /home/username/.tuxpaint/saved/
- * Windows — Inside a folder named "TuxPaint" in your
- "Application Data" folder.
- Example: C:\Documents and Settings\Username\Application
- Data\TuxPaint\saved\
- * macOS — Inside a folder named "TuxPaint" in your
- "Application Support" folder.
- Example: /Users/Username/Library/Application
- Support/TuxPaint/saved/
-
- Note: When specifying a Windows drive (e.g., "H:\"), you must
- also specify a subdirectory.
-
- Note: Prior to version 0.9.18, Tux Paint would also use the
- setting or default for "savedir" as the place to search for
- personal data files (brushes, stamps, starters and fonts). As of
- version 0.9.18, they may be specified separately (see the
- "datadir" option, below).
-
- Example: savedir=Z:\tuxpaint\
-
- exportdir=DIRECTORY
-
- Use this option to change where Tux Paint exports files — single
- images, or animated GIF slideshows — for external use.
-
- If you do not override it, the default location is:
-
- * Linux & Unix — If available, wherever your desktop
- environment is configured for pictures to be stored, based
- on your XDG (X Desktop Group) configuration. (Try running
- the command-line "xdg-user-dir PICTURES" to find out.)
- Typically (in an English locale), this will be a "Pictures"
- subdirectory in your home directory (i.e., "$HOME/Pictures"
- aka "~/Pictures").
- Tux Paint will fall back to using that typical directory,
- of no XDG configuration can be read, or nothing is set for
- "XDG_PICTURES_DIR".
- * Windows - "My Pictures" directory for each user (normaly
- "c:\Users\USERNAME\Pictures").
- You can directly open the folder as follows:
- * Press "[Windows]+[R]" key to open "Run ..." dialogue.
- * Enter "Shell:My Pictures" in the text box and push
- [OK].
- * macOS — TBD!
-
- Note: When the defaults are used, a new "TuxPaint" subdirectory
- will be created and used. (e.g., "~/Pictures/TuxPaint") When the
- "--exportdir" option is used, the exact path specified will be
- used (no "TuxPaint" subdirectory is created).
-
- The directory itself (e.g., "~/Pictures/TuxPaint") will be
- created, if it doesn't exist.
-
- If the parent directory (e.g., "~/Pictures/TuxPaint") also does
- not exist, Tux Paint will attempt to create it as well (but not
- any directories higher than that).
-
- Example: exportdir=/home/penguin/TuxPaintExports
-
- datadir=DIRECTORY
-
- Use this option to change where Tux Paint looks for personal
- data files (brushes, stamps, starters, templates, and fonts
- specific to the current user).
-
- Tux Paint will search for subdirectories/subfolders named
- "brushes", "stamps", "starters", "templates", and "fonts" under
- the specified data directory.
-
- If you do not override it, the default location is:
-
- * Linux & Unix — Under a hidden directory named ".tuxpaint"
- in your home directory (aka "~" or "$HOME")
- Example: /home/username/.tuxpaint/brushes/
- * Windows — Inside a folder named "TuxPaint" in your
- "Application Data" folder.
- Example: C:\Documents and Settings\Username\Application
- Data\TuxPaint\brushes\
- * macOS — Inside a folder named "TuxPaint" in your
- "Application Support" folder.
- Example: /Users/Username/Library/Application
- Support/TuxPaint/brushes/
-
- Note: Prior to version 0.9.18, Tux Paint would use the same
- setting or default as for "savedir" to search for data files. As
- of version 0.9.18, they may be specified separately.
-
- Note: When specifying a Windows drive (e.g., "H:\"), you must
- also specify a subdirectory.
-
- Example: datadir=/home/johnny/tuxpaint-data/
-
- saveover=yes
-
- This disables the "Save over the old version...?" prompt when
- saving an existing file. With this option, the older version
- will always be replaced by the new version, automatically.
-
- saveover=new
-
- This also disables the "Save over the old version...?" prompt
- when saving an existing file. This option, however, will always
- save a new file, rather than overwrite the older version.
-
- saveover=ask
-
- (This option is redundant, since this is the default.) When
- saving an existing drawing, you will be first asked whether to
- save over the older version or not.
-
- nosave=yes
-
- This disables Tux Paint's ability to save files (and therefore
- disables the on-screen "Save" button). It can be used in
- situations where the program is only being used for fun, or in a
- test environment.
-
- autosave=yes
-
- This prevents Tux Paint from asking whether you want to save the
- current picture when quitting, and assumes you do.
-
- startblank=yes
-
- This causes Tux Paint to display a blank canvas when it first
- starts up, rather than loading the last image that was being
- edited.
-
- colorfile=FILENAME
-
- You may override Tux Paint's default color palette by creating a
- plain ASCII text file that describes the colors you want, and
- pointing to that file using the "colorfile" option.
-
- The file should list one color per line. Colors are defined in
- terms of their Red, Green and Blue values, each from 0 (off) to
- 255 (brightest). (For more information, try Wikipedia's "RGB
- color model" article.)
-
- Colors may be listed using three decimal numbers (e.g., "255 68
- 136") or a 6- or 3-digit-long hexadecimal 'triplet' (e.g.,
- "#ff4488" or "#F48").
-
- After the color definition (on the same line) you may enter text
- to describe the color. Tux will display this text when the color
- is clicked. (For example, "#FFF White as snow.")
-
- As an example, you can see the default colors currently used in
- Tux Paint in: "default_colors.txt".
-
- NOTES: You must separate decimal values with spaces, and begin
- hexadecimal values with a pound/number-sign character ("#"). In
- 3-digit hexadecimal, each digit is used for both the high and
- low halves of the byte, so "#FFF" is the same as "#FFFFFF", not
- "#F0F0F0".
-
- colorsrows=ROWS
-
- How many rows of color palette buttons to show; useful when
- using a large color palette (see "colorfile", above), and/or for
- use with coarse input devices (like eyegaze trackers). "ROWS"
- may be between "1" (the default) and "3".
-
- lang=LANGUAGE
-
- Run Tux Paint in one of the supported languages. Possible choice
- for LANGUAGE currently include:
-
- +-----------------------------------------------------------+
- |english |american-english | |
- |---------------------+---------------------+---------------|
- |acholi |acoli | |
- |---------------------+---------------------+---------------|
- |afrikaans | | |
- |---------------------+---------------------+---------------|
- |akan |twi-fante | |
- |---------------------+---------------------+---------------|
- |albanian | | |
- |---------------------+---------------------+---------------|
- |amharic | | |
- |---------------------+---------------------+---------------|
- |arabic | | |
- |---------------------+---------------------+---------------|
- |aragones | | |
- |---------------------+---------------------+---------------|
- |armenian |hayeren | |
- |---------------------+---------------------+---------------|
- |assamese | | |
- |---------------------+---------------------+---------------|
- |asturian | | |
- |---------------------+---------------------+---------------|
- |australian-english | | |
- |---------------------+---------------------+---------------|
- |azerbaijani | | |
- |---------------------+---------------------+---------------|
- |bambara | | |
- |---------------------+---------------------+---------------|
- |basque |euskara | |
- |---------------------+---------------------+---------------|
- |belarusian |bielaruskaja | |
- |---------------------+---------------------+---------------|
- |bengali | | |
- |---------------------+---------------------+---------------|
- |bodo | | |
- |---------------------+---------------------+---------------|
- |bokmal | | |
- |---------------------+---------------------+---------------|
- |bosnian | | |
- |---------------------+---------------------+---------------|
- |brazilian-portuguese |portugues-brazilian |brazilian |
- |---------------------+---------------------+---------------|
- |breton |brezhoneg | |
- |---------------------+---------------------+---------------|
- |british-english |british | |
- |---------------------+---------------------+---------------|
- |bulgarian | | |
- |---------------------+---------------------+---------------|
- |canadian-english | | |
- |---------------------+---------------------+---------------|
- |catalan |catala | |
- |---------------------+---------------------+---------------|
- |chinese |simplified-chinese | |
- |---------------------+---------------------+---------------|
- |croatian |hrvatski | |
- |---------------------+---------------------+---------------|
- |czech |cesky | |
- |---------------------+---------------------+---------------|
- |danish |dansk | |
- |---------------------+---------------------+---------------|
- | |dogri | |
- |---------------------+---------------------+---------------|
- |dutch |nederlands | |
- |---------------------+---------------------+---------------|
- |esperanto | | |
- |---------------------+---------------------+---------------|
- |estonian | | |
- |---------------------+---------------------+---------------|
- |faroese | | |
- |---------------------+---------------------+---------------|
- |finnish |suomi | |
- |---------------------+---------------------+---------------|
- |french |francais | |
- |---------------------+---------------------+---------------|
- |fula |fulah |pulaar-fulfulde|
- |---------------------+---------------------+---------------|
- |gaelic |gaidhlig |irish-gaelic |
- |---------------------+---------------------+---------------|
- |galician |galego | |
- |---------------------+---------------------+---------------|
- |georgian | | |
- |---------------------+---------------------+---------------|
- |german |deutsch | |
- |---------------------+---------------------+---------------|
- |greek | | |
- |---------------------+---------------------+---------------|
- |gronings |zudelk-veenkelonioals| |
- |---------------------+---------------------+---------------|
- |gujarati | | |
- |---------------------+---------------------+---------------|
- |hebrew | | |
- |---------------------+---------------------+---------------|
- |hindi | | |
- |---------------------+---------------------+---------------|
- |hungarian |magyar | |
- |---------------------+---------------------+---------------|
- |icelandic |islenska | |
- |---------------------+---------------------+---------------|
- |indonesian |bahasa-indonesia | |
- |---------------------+---------------------+---------------|
- |inuktitut | | |
- |---------------------+---------------------+---------------|
- |italian |italiano | |
- |---------------------+---------------------+---------------|
- |japanese | | |
- |---------------------+---------------------+---------------|
- |kabyle | |kabylian |
- |---------------------+---------------------+---------------|
- |kannada | | |
- |---------------------+---------------------+---------------|
- |kashmiri-devanagari | | |
- |---------------------+---------------------+---------------|
- |kashmiri-perso-arabic| | |
- |---------------------+---------------------+---------------|
- |khmer | | |
- |---------------------+---------------------+---------------|
- |kiga |chiga | |
- |---------------------+---------------------+---------------|
- |kinyarwanda | | |
- |---------------------+---------------------+---------------|
- |klingon |tlhIngan | |
- |---------------------+---------------------+---------------|
- |konkani-devanagari | | |
- |---------------------+---------------------+---------------|
- |konkani-roman | | |
- |---------------------+---------------------+---------------|
- |korean | | |
- |---------------------+---------------------+---------------|
- |kurdish | | |
- |---------------------+---------------------+---------------|
- |latvian | | |
- |---------------------+---------------------+---------------|
- |lithuanian |lietuviu | |
- |---------------------+---------------------+---------------|
- |luganda | | |
- |---------------------+---------------------+---------------|
- |luxembourgish |letzebuergesch | |
- |---------------------+---------------------+---------------|
- |macedonian | | |
- |---------------------+---------------------+---------------|
- |maithili | | |
- |---------------------+---------------------+---------------|
- |malay | | |
- |---------------------+---------------------+---------------|
- |malayalam | | |
- |---------------------+---------------------+---------------|
- |manipuri-bengali | | |
- |---------------------+---------------------+---------------|
- |manipuri-meitei-mayek| | |
- |---------------------+---------------------+---------------|
- |marathi | | |
- |---------------------+---------------------+---------------|
- |mexican-spanish |espanol-mejicano |mexican |
- |---------------------+---------------------+---------------|
- |mongolian | | |
- |---------------------+---------------------+---------------|
- |ndebele | | |
- |---------------------+---------------------+---------------|
- |nepali | | |
- |---------------------+---------------------+---------------|
- |northern-sotho |sesotho-sa-leboa | |
- |---------------------+---------------------+---------------|
- |norwegian |nynorsk |norsk |
- |---------------------+---------------------+---------------|
- |occitan | | |
- |---------------------+---------------------+---------------|
- |odia |oriya | |
- |---------------------+---------------------+---------------|
- |ojibwe |ojibway | |
- |---------------------+---------------------+---------------|
- |persian | | |
- |---------------------+---------------------+---------------|
- |polish |polski | |
- |---------------------+---------------------+---------------|
- |portuguese |portugues | |
- |---------------------+---------------------+---------------|
- |punjabi |panjabi | |
- |---------------------+---------------------+---------------|
- |romanian | | |
- |---------------------+---------------------+---------------|
- |russian |russkiy | |
- |---------------------+---------------------+---------------|
- |sanskrit | | |
- |---------------------+---------------------+---------------|
- |santali-devanagari | | |
- |---------------------+---------------------+---------------|
- |santali-ol-chiki | | |
- |---------------------+---------------------+---------------|
- |scottish |ghaidhlig |scottish-gaelic|
- |---------------------+---------------------+---------------|
- |serbian | | |
- |---------------------+---------------------+---------------|
- |serbian-latin | | |
- |---------------------+---------------------+---------------|
- |shuswap |secwepemctin | |
- |---------------------+---------------------+---------------|
- |sindhi-devanagari | | |
- |---------------------+---------------------+---------------|
- |sindhi-perso-arabic | | |
- |---------------------+---------------------+---------------|
- |slovak | | |
- |---------------------+---------------------+---------------|
- |slovenian |slovensko | |
- |---------------------+---------------------+---------------|
- |songhay | | |
- |---------------------+---------------------+---------------|
- |southafrican-english | | |
- |---------------------+---------------------+---------------|
- |spanish |espanol | |
- |---------------------+---------------------+---------------|
- |sundanese | | |
- |---------------------+---------------------+---------------|
- |swahili | | |
- |---------------------+---------------------+---------------|
- |swedish |svenska | |
- |---------------------+---------------------+---------------|
- |tagalog | | |
- |---------------------+---------------------+---------------|
- |tamil | | |
- |---------------------+---------------------+---------------|
- |telugu | | |
- |---------------------+---------------------+---------------|
- |thai | | |
- |---------------------+---------------------+---------------|
- |tibetan | | |
- |---------------------+---------------------+---------------|
- |traditional-chinese | | |
- |---------------------+---------------------+---------------|
- |turkish | | |
- |---------------------+---------------------+---------------|
- |twi | | |
- |---------------------+---------------------+---------------|
- |ukrainian | | |
- |---------------------+---------------------+---------------|
- |urdu | | |
- |---------------------+---------------------+---------------|
- |venda | | |
- |---------------------+---------------------+---------------|
- |venetian |veneto | |
- |---------------------+---------------------+---------------|
- |vietnamese | | |
- |---------------------+---------------------+---------------|
- |walloon |walon | |
- |---------------------+---------------------+---------------|
- |welsh |cymraeg | |
- |---------------------+---------------------+---------------|
- |wolof | | |
- |---------------------+---------------------+---------------|
- |xhosa | | |
- |---------------------+---------------------+---------------|
- |miahuatlan-zapotec | |zapotec |
- |---------------------+---------------------+---------------|
- |zulu | |zulu |
- +-----------------------------------------------------------+
+ nolockfile=yes
+
+ By default, Tux Paint uses what's known as a 'lockfile' to
+ prevent it from being launched more than once in 30 seconds.
+ (This is to avoid accidentally running multiple copies; for
+ example, by double-clicking a single-click launcher, or
+ simply impatiently clicking the icon multiple times.)
+
+ To make Tux Paint ignore the lockfile, allowing it to run
+ again, even if it was just launched less than 30 seconds
+ ago, enable this setting in the configuration file, or run
+ Tux Paint with the --nolockfile option on the command-line.
+
+ By default, the lockfile is stored in "~/.tuxpaint/" under
+ Linux and Unix, and "userdata\" under Windows.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "nolockfile=no" or "lockfile=yes". In both cases, may be
+ overridden by the command-line option "--lockfile".
+
+ Data Directory
+
+ datadir=DIRECTORY
+
+ Use this option to change where Tux Paint looks for personal
+ data files (brushes, stamps, starters, templates, and fonts
+ specific to the current user).
+
+ Tux Paint will search for subdirectories/subfolders named
+ "brushes", "stamps", "starters", "templates", and "fonts"
+ under the specified data directory.
+
+ If you do not override it, the default location is:
+
+ * Linux & Unix — Under a hidden directory named
+ ".tuxpaint" in your home directory (aka "~" or "$HOME")
+ Example: /home/username/.tuxpaint/brushes/
+ * Windows — Inside a folder named "TuxPaint" in your
+ "Application Data" folder.
+ Example: C:\Documents and Settings\Username\Application
+ Data\TuxPaint\brushes\
+ * macOS — Inside a folder named "TuxPaint" in your
+ "Application Support" folder.
+ Example: /Users/Username/Library/Application
+ Support/TuxPaint/brushes/
+
+ Note: Prior to version 0.9.18, Tux Paint would use the same
+ setting or default as for "savedir" to search for data
+ files. As of version 0.9.18, they may be specified
+ separately.
+
+ Note: When specifying a Windows drive (e.g., "H:\"), you
+ must also specify a subdirectory.
+
+ Example: datadir=/home/johnny/tuxpaint-data/
+
+ Color Palette File
+
+ colorfile=FILENAME
+
+ You may override Tux Paint's default color palette by
+ creating a plain ASCII text file that describes the colors
+ you want, and pointing to that file using the "colorfile"
+ option.
+
+ The file should list one color per line. Colors are defined
+ in terms of their Red, Green and Blue values, each from 0
+ (off) to 255 (brightest). (For more information, try
+ Wikipedia's "RGB color model" article.)
+
+ Colors may be listed using three decimal numbers (e.g., "255
+ 68 136") or a 6- or 3-digit-long hexadecimal 'triplet'
+ (e.g., "#ff4488" or "#F48").
+
+ After the color definition (on the same line) you may enter
+ text to describe the color. Tux will display this text when
+ the color is clicked. (For example, "#FFF White as snow.")
+
+ As an example, you can see the default colors currently used
+ in Tux Paint in: "default_colors.txt".
+
+ NOTES: You must separate decimal values with spaces, and
+ begin hexadecimal values with a pound/number-sign character
+ ("#"). In 3-digit hexadecimal, each digit is used for both
+ the high and low halves of the byte, so "#FFF" is the same
+ as "#FFFFFF", not "#F0F0F0".
+
+ ----------------------------------------------------------------------
+
+Accessibility
+
+ Mouse
+
+ mouse-accessibility=yes
+
+ In this mode, instead of clicking, dragging and releasing
+ (e.g., to draw), you click, move, and click again to end the
+ motion.
+
+ Keyboard
+
+ keyboard=yes
+
+ This allows the keyboard arrow keys to be used to control
+ the mouse pointer. (e.g., for mouseless environments, or
+ handicapped/accessibility purposes)
+
+ Features:
+
+ * Fine movement within canvas, or coarse movement if
+ Shift is held.
+ * Coarse movement within tool button areas.
+ * Key controls:
+ * [Left]/[Right]/[Up]/[Down], numpad [1] thru [9]:
+ Move mouse
+ * [Space]/[5]: Click mouse (except when using "Text"
+ or "Label" tools)
+ * [Insert]/[F5]: Click mouse (always)
+ * [F4] jump mouse between "Tools", "Colors" and
+ canvas areas
+ * If mouse is within "Tools" section on the left, or
+ "Colors" section at the bottom:
+ * [F7], [F8]: Move down/up between buttons,
+ respectively (Tools section, only)
+ * [F11], [F12]: Move to previous/next button,
+ respectively
+ * To click-and-drag, hold one of the 'click' keys (e.g.,
+ [Insert]), and use the movement keys (e.g., [Left]).
+ * Note: The "mouse accessibility" feature works with
+ the keyboard mouse controls. With both options
+ enabled, painting tools can be used to draw by
+ pressing a 'click' key to start clicking, movement
+ keys to move around (which will draw), and another
+ 'click' key to end the click (stop drawing).
+ * A regular mouse and/or joystick may still be used (so
+ you can, e.g., move with the mouse, and click with the
+ keyboard, or vice-versa)
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "keyboard=no" or "mouse=yes". In both cases, may be
+ overridden by the command-line option "--mouse".
+
+ Onscreen Keyboard
+
+ onscreen-keyboard=yes
+
+ Presents a clickable on-screen keyboard when using the Text
+ and Label tools.
+
+ onscreen-keyboard-layout=LAYOUTNAME
+
+ Selects the initial layout for the on-screen keyboard when
+ using the Text and Label tools.
+ Note: Using this option implies automatically
+ onscreen-keyboard=yes, so setting both is redundant.
+
+ onscreen-keyboard-disable-change=yes
+
+ Disables the possibility for changing the layout of the
+ on-screen keyboard when using the Text and Label tools,
+ useful for simplifying things for the small children.
+ Note: Using this option implies automatically
+ onscreen-keyboard=yes, so setting both is redundant.
+
+ Note: If used in a system-wide configuration file, may be
+ overridden by the user's configuration file using
+ "onscreen-keyboard-disable-change=no". In both cases, may be
+ overridden by the command-line option
+ "--onscreen-keyboard-disable-change=no".
+
+ ----------------------------------------------------------------------
+
+Joystick
+
+ Main Device
+
+ joystick-dev=N
+
+ Specify which joystick device should be used by Tux Paint.
+ Default value is 0 (the first joystick).
+
+ joystick-slowness=SPEED
+
+ Sets a delay at each axis motion, allowing to slow the
+ joystick. Allowed values are from 0 to 500. Default value is
+ 15.
+
+ joystick-threshold=THRESHOLD
+
+ Sets the minimum level of axis motion to start moving the
+ pointer. Allowed values are from 0 to 32766. Default value
+ is 3200.
+
+ joystick-maxsteps=STEPS
+
+ Sets the maximum pixels the pointer will move at once.
+ Allowed values are from 1 to 7. Default value is 7.
+
+ Hat
+
+ joystick-hat-slowness=SPEED
+
+ Sets a delay at each automatic motion, allowing to slow the
+ speed of the hat. Allowed values are from 0 to 500. Default
+ value is 15.
+
+ joystick-hat-timeout=MILLISECONDS
+
+ Sets the delay after wich the pointer will start moving
+ automatically if the hat is keeped pushed. Allowed values
+ are from 0 to 3000. Default value is 1000.
+
+ Buttons to Disable
+
+ joystick-buttons-ignore=BUTTON1,BUTTON2,...
+
+ A set of joystick button numbers, as seen by SDL, that
+ should be ignored. Otherwise, unless they are used by one of
+ the "joystick-btn-" options above, buttons will be seen as a
+ mouse left-click.
+
+ Button Shortcuts
+
+ joystick-btn-escape=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be used to generate a escape event. Useful to dismiss
+ dialogs and quit.
+
+ joystick-btn-brush=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to select the brush tool.
+
+ joystick-btn-stamp=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to select the stamp tool.
+
+ joystick-btn-lines=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to select the lines tool.
+
+ joystick-btn-shapes=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to select the shapes tool.
+
+ joystick-btn-text=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to select the text tool.
+
+ joystick-btn-label=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to select the label tool.
+
+ joystick-btn-magic=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to select the magic tool.
+
+ joystick-btn-undo=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to invoke the undo tool.
+
+ joystick-btn-redo=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to select redo tool.
+
+ joystick-btn-eraser=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to select eraser tool.
+
+ joystick-btn-new=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to launch the dialog for creating a new
+ drawing.
+
+ joystick-btn-open=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to launch the dialog for opening an
+ existing drawing.
+
+ joystick-btn-save=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to save the drawing.
+
+ joystick-btn-pgsetup=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to launch the page setup dialog for
+ printing.
+
+ joystick-btn-print=BUTTON NUMBER
+
+ Selects the joystick button number, as seen by SDL, that
+ will be a shortcut to print.
----------------------------------------------------------------------
@@ -1067,6 +1390,8 @@ Windows Users
--fullscreen
--WIDTHxHEIGHT
+ --buttonsize=SIZE
+ --colorsrows=ROWS
--orient=portrait
--native
--allowscreensaver
@@ -1080,6 +1405,8 @@ Windows Users
--altprintnever
--altprintalways
--papersize=PAPERSIZE
+ --printcommand=COMMAND
+ --altprintcommand=COMMAND
--nolockfile
--simpleshapes
--uppercase
@@ -1186,16 +1513,6 @@ Windows Users
-------------------------------------
- --locale LOCALE
-
- Run Tux Paint in one of the support languages. See the
- "Choosing a Different Language" section below for the locale
- strings (e.g., "de_DE" for German) to use.
-
- (If your locale is already set, e.g. with the "$LANG"
- environment variable, this option is not necessary, since Tux
- Paint honors your environment's setting, if possible.)
-
--nosysconfig
Under Linux and Unix, this prevents the system-wide
@@ -1616,7 +1933,7 @@ Setting Your Environment's Locale
* Edit the value of the parameter "LANG" (create it, if it doesn't
exists).
- Special Fonts
+Special Fonts
Some languages require special fonts be installed. These font files
(which are in TrueType format (TTF)), are much too large to include
diff --git a/docs/en/PNG.txt b/docs/en/PNG.txt
index c8fdd0088..f68a54e21 100644
--- a/docs/en/PNG.txt
+++ b/docs/en/PNG.txt
@@ -1,5 +1,5 @@
Tux Paint
- version 0.9.26
+ version 0.9.27
PNG Documentation
Copyright © 2007-2021 by various contributors; see AUTHORS.
diff --git a/docs/en/README.txt b/docs/en/README.txt
index 21db8e279..e3189e675 100644
--- a/docs/en/README.txt
+++ b/docs/en/README.txt
@@ -1,12 +1,12 @@
Tux Paint
- version 0.9.26
+ version 0.9.27
A simple drawing program for children
Copyright © 2002-2021 by various contributors; see AUTHORS.
http://www.tuxpaint.org/
- June 28, 2021
+ September 5, 2021
----------------------------------------------------------------------
@@ -219,6 +219,22 @@ Available Tools
If you hold the mouse button down, and move the mouse, it
will draw as you move.
+ Some brushes are animated — they change their shape as you
+ draw them. A good example of this is the vines brush that
+ ships with Tux Paint. These brushes will have a small
+ "filmstrip" icon drawn on their Selector buttons.
+
+ Other brushes are directional — they will draw a different
+ shape depending on what direction you are painting with
+ them. An example of this is the arrow brush that ships with
+ Tux Paint. These brushes have a small 8-way arrow icon drawn
+ on their Selector buttons.
+
+ Finally, some brushes can be both direction and animated.
+ Examples of this are the cat and squirrel brushes that ship
+ with Tux Paint. These brushes will have both the "filmstrip"
+ and 8-way arrow icons.
+
As you draw, a sound is played. The bigger the brush, the
lower the pitch.
@@ -278,6 +294,12 @@ Available Tools
Let go of the mouse to complete the line. A "sproing!" sound
will play.
+ Some brushes are animated, and will show a pattern of shapes
+ along the line. Others are directional, and will show a
+ different shape depending on the angle of the brush. And
+ finally some are both animated and directional. See "Paint",
+ above, to learn more.
+
----------------------------------------------------------------------
"Shapes" Tool
diff --git a/docs/en/SIGNALS.txt b/docs/en/SIGNALS.txt
index 505981e88..15d96b4e0 100644
--- a/docs/en/SIGNALS.txt
+++ b/docs/en/SIGNALS.txt
@@ -1,5 +1,5 @@
Tux Paint
- version 0.9.26
+ version 0.9.27
Signals Documentation
Copyright © 2019-2021 by various contributors; see AUTHORS.
diff --git a/docs/en/SVG.txt b/docs/en/SVG.txt
index 1353f2d2f..0d95a983a 100644
--- a/docs/en/SVG.txt
+++ b/docs/en/SVG.txt
@@ -1,5 +1,5 @@
Tux Paint
- version 0.9.26
+ version 0.9.27
SVG Documentation
Copyright © 2007-2021 by various contributors; see AUTHORS.
diff --git a/docs/en/html/ADVANCED-STAMPS-HOWTO.html b/docs/en/html/ADVANCED-STAMPS-HOWTO.html
index 37a151b41..16cfce922 100644
--- a/docs/en/html/ADVANCED-STAMPS-HOWTO.html
+++ b/docs/en/html/ADVANCED-STAMPS-HOWTO.html
@@ -17,16 +17,62 @@
width="205"
height="210"
alt="Tux Paint">
- version 0.9.26 Advanced Stamps 'How-To'
+ version 0.9.27 Advanced Stamps 'How-To'
Copyright © 2006-2021 by Albert Cahalan and others; see AUTHORS.
http://www.tuxpaint.org/
+
+
+ August 29, 2021
+
+
+
+
+ |
+ Table of Contents |
+
+
+
+ |
+
+ |
+
+
+
+
+
+
+
- About this 'How-To'
+
+ About this 'How-To'
+
@@ -36,8 +82,13 @@
This 'How-To' assumes you are dealing with normal opaque objects. Dealing with semi-transparent objects (fire, moving fan blade, kid's balloon) or light-giving objects (fire, lightbulb, sun) is best done with custom software. Images with perfect solid-color backgrounds are also best done with custom software, but are not troublesome to do as follows.
+
+
- Image choice is crucial
+
+ Image choice is crucial
+
@@ -78,6 +129,9 @@
+
+
Prepare the image
@@ -116,8 +170,13 @@
Warning: once you have the mask, you may not rotate or scale the image normally. This would cause data loss. You will be given special scaling instructions later.
+
+
- Prepare the mask
+
+ Prepare the mask
+
@@ -151,8 +210,13 @@
View and edit the mask. Select by color, choosing either black or white. Most likely you will see unselected specks that are not quite the expected color. Invert the selection, then paint these away using the pencil tool. Do this operation for both white and black.
+
+
- Replace the fringe and junk pixels
+
+ Replace the fringe and junk pixels
+
@@ -188,8 +252,13 @@
Tux Paint can scale images down by a very large factor, so it is important to extend the edge of your object outward by a great deal. Right at the edge of your object, you should be very accurate about this. As you go outward away from the object, you can get a bit sloppy. It is reasonable to paint outward by a dozen pixels or more. The farther you go, the more Tux Paint can scale down without creating ugly color fringes. For areas that are more than a few pixels away from the object edge, you should use the pencil tool (or sloppy select with drag-and-drop color) to ensure that the result will compress well.
+
+
- Save the image for Tux Paint
+
+ Save the image for Tux Paint
+
diff --git a/docs/en/html/ENVVARS.html b/docs/en/html/ENVVARS.html
index e05babf49..1b0367678 100644
--- a/docs/en/html/ENVVARS.html
+++ b/docs/en/html/ENVVARS.html
@@ -17,7 +17,7 @@
width="205"
height="210"
alt="Tux Paint">
- version 0.9.26
+ version 0.9.27
Environment Variables Documentation
@@ -26,7 +26,7 @@
- May 11, 2021
+ August 8, 2021
diff --git a/docs/en/html/EXTENDING.html b/docs/en/html/EXTENDING.html
index 45fb3cbb7..05a8da31d 100644
--- a/docs/en/html/EXTENDING.html
+++ b/docs/en/html/EXTENDING.html
@@ -18,7 +18,7 @@
width="205"
height="210"
alt="Tux Paint">
- version 0.9.26
+ version 0.9.27
Copyright © 2002-2021 by various contributors; see AUTHORS.
@@ -26,7 +26,7 @@
- May 31, 2021
+ September 6, 2021
- Animated Directional Brushes
+ Rotating Brushes
- You may mix both animated and directional features into one brush. Use both options ("frames=N" and "directional"), in separate lines in the brush's ".dat" file.
+ As of Tux Paint version 0.9.27, you may now create rotating brushes. As the brush is used, it is rotated 360 degrees, depending on the direction the brush is going.
- Lay the brush out so that each 3x3 set of directional shapes are laid out across a wide PNG image. For example, if the brush is 30x30 and there are 5 frames, it would be 450x90. (The leftmost 150x90 pixels of the image represent the 9 direction shapes for the first frame, for example.)
+ Add a line containing the word "rotate" to the brush's data file.
+
+
+
+ Animated Directional or Rotating Brushes
+
+
+
+ You may mix both animated and either directional or rotating features into one brush. Use both options desired ("frames=N" and "directional" or "rotate"), in separate lines in the brush's ".dat" file.
+
+
+ For directional brushes, lay the brush out so that each 3x3 set of directional shapes are laid out across a wide PNG image. For example, if the brush is 30x30 and there are 5 frames, it would be 450x90. (The leftmost 150x90 pixels of the image represent the 9 direction shapes for the first frame, for example.)
diff --git a/docs/en/html/FAQ.html b/docs/en/html/FAQ.html
index 4d55914e6..4be824c14 100644
--- a/docs/en/html/FAQ.html
+++ b/docs/en/html/FAQ.html
@@ -17,7 +17,7 @@
width="205"
height="210"
alt="Tux Paint">
- version 0.9.26 Frequently Asked Questions
+ version 0.9.27 Frequently Asked Questions
Copyright © 2002-2021 by various contributors; see AUTHORS.
@@ -25,13 +25,60 @@
- June 2, 2021
+ August 29, 2021
-
+
+
+
+
+ |
+ Table of Contents |
+
+
+
+ |
+
+ |
+
+
+
+
- Drawing-related
+
+ Drawing-related
+
-
@@ -101,10 +148,13 @@
-
+
- Interface Problems
+
+ Interface Problems
+
-
@@ -212,10 +262,13 @@
-
+
- Printing
+
+ Printing
+
-
@@ -282,10 +335,13 @@
-
+
- Saving
+
+ Saving
+
-
@@ -382,10 +438,13 @@
-
+
- Audio Problems
+
+ Audio Problems
+
-
@@ -507,10 +566,13 @@
-
+
- Fullscreen Mode Problems
+
+ Fullscreen Mode Problems
+
-
@@ -569,10 +631,13 @@
-
+
- Other Probelms
+
+ Other Probelms
+
-
@@ -744,10 +809,13 @@
-
+
- Help / Contact
+
+ Help / Contact
+
Any questions you don't see answered? Please let us know! You can subscribe and post to our "tuxpaint-users" mailing list:
diff --git a/docs/en/html/INSTALL.html b/docs/en/html/INSTALL.html
index 5eccd28d2..a23df8649 100644
--- a/docs/en/html/INSTALL.html
+++ b/docs/en/html/INSTALL.html
@@ -17,7 +17,7 @@
width="205"
height="210"
alt="Tux Paint">
- version 0.9.26
+ version 0.9.27
Installation Documentation
@@ -26,21 +26,88 @@
- March 9, 2021
+ September 5, 2021
-
+
- Requirements:
+
+
+ |
+ Table of Contents |
+
+
+
+ |
+
+ |
+
+
+
+
+
+
- libSDL
+
Tux Paint requires the Simple DirectMedia Layer Library (libSDL), an Open Source multimedia programming library available under the GNU Lesser General Public License (LGPL).
- Along with libSDL, Tux Paint depends on a number of other SDL 'helper' libraries: SDL_Image (for graphics files), SDL_TTF and (optionally) SDL_Pango (for True Type Font support) and, optionally, SDL_Mixer (for sound effects).
+ Along with libSDL, Tux Paint depends on a number of other SDL 'helper' libraries: SDL_Image (for graphics files), SDL_gfx (for some graphical functions, like rotation), SDL_TTF and (optionally) SDL_Pango (for True Type Font support) and, optionally, SDL_Mixer (for sound effects).
Linux/Unix Users:
@@ -49,6 +116,7 @@
- Other Libraries
+
Tux Paint also takes advantage of a number of other free, LGPL'd libraries. Under Linux, just like SDL, they should either already be installed, or are readily available for installation as part of your Linux distribution.
@@ -110,7 +181,7 @@
SVG graphics support
- As of Tux Paint 0.9.17, Tux Paint can load SVG (Scalable Vector Graphics) images as stamps. Two sets of libraries are supported, and SVG support can be completely disabled (via "make SVG_LIB:=")
+ As of Tux Paint 0.9.17, Tux Paint can load SVG (Scalable Vector Graphics) images as stamps. Two sets of libraries are supported, and SVG support can be completely disabled (via "make SVG_LIB:=")
librsvg-2 & libCairo2 (newer libraries)
- Compiling and Installation:
+
+
+
Tux Paint is released under the GNU General Public License (GPL) (see "COPYING.txt" for details), and therefore the 'source code' to the program is available freely.
- Windows Users:
+
+
+
+ October 25, 2020 Shin-ichi TOYAMA shin1@wmail.plala.or.jp <shin1@wmail.plala.or.jp>
+
+
- Compiling:
+ Compiling Set-Up
- As of February 2005 (starting with Tux Paint 0.9.15), the "Makefile" includes support for building on a Windows system using MinGW/MSYS (http://www.mingw.org/).
+ As of February 2005 (starting with Tux Paint 0.9.15), the "Makefile" includes support for building on a Windows system using MinGW/MSYS (https://sourceforge.net/projects/msys2/).
- After configuring the environment and building and installing all the dependencies, use these commands, in MSYS, to build, install and run:
-
- Prior to version 0.9.20:
-
-
- $ make win32
- $ make install-win32
- $ tuxpaint
-
-
-
- Version 0.9.20 and beyond:
-
-
- $ make
- $ make install
- $ tuxpaint
-
-
+ Many tools and libraries are required to build Tux Paint. The package management system "pacman" helps you install them automatically solving complicated dependencies.
- Use the following command to build a version suitable for redistribution with the installer or in a zip-file:
-
-
- $ make bdist-win32
-
-
-
+ Download the latest MSYS2 environment from https://sourceforge.net/projects/msys2/files/Base/ and install it where you'd like (the default is "C:\msys64")
- Or if building for Win9x/ME:
-
-
- $ BDIST_WIN9X=1 make bdist-win32
-
-
-
-
- Before any of the above will work, you need to configure the environment and build or install the libraries that Tux Paint depends upon. John Popplewell put together some instructions for doing that here:
-
- http://www.johnnypops.co.uk/tuxpaint/
+ Open the MSYS2 shell from the "Start Menu" -> "MSYS2 64bit" -> "MSYS2 MSYS" and execute following command (press [Enter] or [Return] to accept the defaults for all questions):
+
+
+ pacman -Syu
+
+
- Read the relevant notes if building for Win9X/ME.
+ This will update core system and the window will close automatically. Repeat the steps above one more time to finish the remaining update process.
+
+
+ Within the MSYS2 shell, run the following command to install basic development tools:
+
+ pacman -S base-devel msys2-devel git
+
+
+
+
- Running the Installer:
+
+
+ Proceed to the next "MinGW 64bit (x86_64) toolchains" section, or skip to the "MinGW 32bit (i686) toolchains" section if you need only a 32bit build environment.
+
+
+
+
+
+
+
+ Within the MSYS2 shell, run the following command to install basic 64bit development tools:
+
+ pacman -S mingw-w64-x86_64-toolchain
+
+
+
+
+
+
+
+ 64bit (x86_64) dependency libraries for Tux Paint
+
+
+
+ You can install tools and libraries required for compiling Tux Paint on MSYS2/MINGW using "pacman" except for SDL_Pango.
+
+ "ntldd" is a small tool which examine windows executable files to list Dynamic Link Library (.dll) files they depends on. Tux Paint's packaging process for binary distribution uses it to find required .dll files.
+
+ FLTK is a cross-platform GUI toolkit used by "Tux Paint Config.". You can skip installing it if you are only building "Tux Paint".
+
+
+
+ $ pacman -S mingw-w64-x86_64-SDL_{image,mixer,ttf}
+ $ pacman -S mingw-w64-x86_64-librsvg
+ $ pacman -S mingw-w64-x86_64-fribidi
+ $ pacman -S mingw-w64-x86_64-libimagequant
+ $ pacman -S mingw-w64-x86_64-fltk
+ $ pacman -S mingw64/mingw-w64-x86_64-ntldd-git
+
+
+
+
+ Note: Close the shell before proceeding to the remaining process.
+
+
+
+
+ Install SDL_Pango and re-install SDL on the 64bit environment
+
+
+
+ SDL_Pango should be installed manually. In addition, you have to re-install SDL from the source code or you will see unnecessary blank window opens when starting Tux Paint.
+
+ This time, use the MinGW "64bit" shell. Open the shell from the "Start Menu" -> "MSYS2 64bit" -> "MSYS2 MinGW 64-bit"
+
+ SDL_Pango
+
+
+
+
+ At first, you have to prepare source tar-ball and a required patch in the same directory.
+
+
+ Build and install SDL_Pango as follows.
+
+ $ tar zxvf SDL_Pango-0.1.2.tar.gz
+ $ cd SDL_Pango-0.1.2/
+ $ patch -p0 < ../SDL_Pango-configure-extra-api.patch
+ $ ./configure --prefix=/mingw64 && make && make install
+
+
+
+
+
+ SDL
+
+
+ Download source tar-ball of SDL_1.2.15 from libsdl.org.
+
+ Re-install SDL as follows.
+
+ $ tar zxvf SDL-1.2.15.tar.gz
+ $ cd SDL-1.2.15
+ $ ./configure --prefix=/mingw64 && make && make install
+
+
+
+
+
+
+
+
+
+ Proceed to the next "MinGW 32bit (i686) toolchains" section, or skip to the "ImageMagick" section if you need only a 64bit build environment.
+
+
+
+
+
+
+ Within the MSYS2 shell, run the following command to install basic 32bit development tools:
+
+ pacman -S mingw-w64-i686-toolchain
+
+
+
+
+
+
+
+ 32bit (i686) dependency libraries for Tux Paint
+
+
+
+ You can install tools and libraries required for compiling Tux Paint on MSYS2/MINGW using "pacman" except for SDL_Pango.
+
+ "ntldd" is a small tool which examine windows executable files to list Dynamic Link Library (.dll) files they depends on. Tux Paint's packaging process for binary distribution uses it to find required .dll files.
+
+ FLTK is a cross-platform GUI toolkit used by "Tux Paint Config.". You can skip installing it if you are only building "Tux Paint".
+
+
+
+ $ pacman -S mingw-w64-i686-SDL_{image,mixer,ttf}
+ $ pacman -S mingw-w64-i686-librsvg
+ $ pacman -S mingw-w64-i686-fribidi
+ $ pacman -S mingw-w64-i686-libimagequant
+ $ pacman -S mingw-w64-i686-fltk
+ $ pacman -S mingw-w64-i686-ntldd-git
+
+
+
+
+ Note: Close the shell before proceeding to the remaining process.
+
+
+
+
+ Install SDL_Pango and re-install SDL on the 32bit environment
+
+
+
+ SDL_Pango should be installed manually. In addition, you have to re-install SDL from the source code or you will see unnecessary blank window opens when starting Tux Paint.
+
+ This time, use the MinGW "32bit" shell. Open the shell from the "Start Menu" -> "MSYS2 64bit" -> "MSYS2 MinGW 32-bit"
+
+ SDL_Pango
+
+
+
+
+ At first, you have to prepare source tar-ball and a required patch in the same directory.
+
+
+ Build and install SDL_Pango as follows.
+
+ $ tar zxvf SDL_Pango-0.1.2.tar.gz
+ $ cd SDL_Pango-0.1.2/
+ $ patch -p0 < ../SDL_Pango-configure-extra-api.patch
+ $ ./configure --prefix=/mingw32 && make && make install
+
+
+
+
+
+ SDL
+
+
+ Download source tar-ball of SDL_1.2.15 from libsdl.org.
+
+ Re-install SDL as follows.
+
+ $ tar zxvf SDL-1.2.15.tar.gz
+ $ cd SDL-1.2.15
+ $ ./configure --prefix=/mingw32 && make && make install
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ImageMagick is a compilation of command line tools to create, edit, compose, or convert bitmap images supporting quite a large number of image formats. Tux Paint uses two functions ("convert" and "composite") in it to generate thumbnails for startar images and templates during the build process.
+
+ Using official binary release available from "Windows Binary Release" is recommended, due to the commands installed with "pacman" on MinGW/MSYS not working as expected!
+
+ Do not forget to enable "Install legacy utilities (e.g. convert)" while installing it, because Tux Paint's build process uses them.
+
+ Add the path to the directory in which ImageMagick is installed at the top of your "PATH" environment variable. For example:
+
+ $ export PATH=/c/Program\ Files/ImageMagick-7.0.10-Q16-HDRI:$PATH
+
+
+
+
+ You can make this permanent by adding the above to your the BASH shell configuration file, "~/.bash_profile".
+
+
+
+
+ Tux Paint
+
+
+
+ You can compile 64bit binaries using MSYS2 64bit shell, and 32bit binaries using MSYS2 32bit shell, respectively.
+
+ -
+ Select "MSYS2 64bit" -> "MSYS2 MinGW 64-bit" from the "Start Menu" to open the 64bit shell.
+ -
+ Select "MSYS2 64bit" -> "MSYS2 MinGW 32-bit" from the "Start Menu" to open the 32bit shell.
+
+
+ Compile Tux Paint with the following command:
+
+ $ make bdist-win32
+
+
+
+
+ Note: At this point, you will want to build "Tux Paint Config." for Windows, so it can be included along with "Tux Paint", if you're making an official (or test) release. The build process will look for it in a directory named "tuxpaint-config" (with no version number, e.g., "tuxpaint-config-X.Y.Z"). See "Tux Paint Config."'s INSTALL.txt documentation for details.
+
+ All the files needed for starting Tux Paint (and Tux Paint Config.) are collected in the directory for binary distribution "bdist" directory under "win32". You can start them by double-clicking their executable (.exe) files in the "bdist" directory.
+
+
+
+
+ Building the Tux Paint Windows Installer:
+
+
+
+ Inno Setup is used to build executable installer for Tux Paint. Therefore you have to install it in the first place.
+
+
+
+ Then, you can easily build an executable installer by right-clicking on the "tuxpaint.iss" icon in the "win32" directory and selecting "Compile" on the list. It will run for a while, and eventually you will find a "tuxpaint-X.Y.Z-win32-installer.exe" file in the same directory.
+
+
+
+
+ Running the Tux Paint Windows Installer:
Double-click the Tux Paint installer executable (.EXE file) and follow the instructions.
@@ -231,6 +558,8 @@
At this point, you can click 'Install' to install Tux Paint!
+
+
Changing the Settings Using the Shortcut:
@@ -267,6 +596,8 @@
When you have finished, click "OK."
+
+
If Something Goes Wrong:
@@ -277,7 +608,12 @@
- Linux/Unix Users:
+
+
+
Compiling:
@@ -294,11 +630,13 @@
+
+
Disabling SVG support (and hence Cairo, libSVG, and svg-cairo dependencies):
- To disable SVG support (e.g., if your system is not currently supported by the Cairo library or other SVG-related dependencies), you can run "make" with "SVG_LIB= SVG_CFLAGS= NOSVGFLAG=NOSVG" added:
+ To disable SVG support (e.g., if your system is not currently supported by the Cairo library or other SVG-related dependencies), you can run "make" with "SVG_LIB= SVG_CFLAGS= NOSVGFLAG=NOSVG" added:
$ make SVG_LIB= SVG_CFLAGS=
@@ -306,6 +644,8 @@
+
+
Disabling Pango support (and hence Pango, Cairo, etc. dependencies):
@@ -318,6 +658,8 @@
+
+
Disabling Sound at Compile-time:
If you don't have a sound card, or would prefer to build the program with no sound support (and therefore without a the SDL_mixer dependency), you can run "make" with "SDL_MIXER_LIB=" added:
@@ -328,18 +670,24 @@
+
+
Other options:
Various other options (e.g., installation paths) may be overridden; see them in "Makefile" for further details.
+
+
If you get errors:
If you receive any errors during compile-time, make sure you have the appropriate libraries installed (see above). If using packaged versions of the libraries (e.g., RPMs under RedHat or DEBs under Debian), be sure to get the corresponding "-dev" or "-devel" packages as well, otherwise you won't be able to compile Tux Paint (and other programs) from source!
+
+
Installng:
@@ -422,15 +770,155 @@
+
+
+
+
+
+
+ September 21, 2021 Mark K. Kim <markuskimius@gmail.com>
+
+
+
+
+
+ Tux Paint 0.9.22 and earlier required building Tux Paint from the Xcode IDE. Starting with 0.9.23, however, Tux Paint for macOS is built as though it were a Linux application.
+
+ Prerequisites
+
+
+ Although Tux Paint is built without the Xcode IDE, Xcode itself is still required to build Tux Paint. Download it from the App Store, and launch it once to accept its license agreements. You may also need to install the Xcode command line tools using the command:
+
+ xcode-select --install
+
+
+
+
+
+ Building Tux Paint also requires various libraries. We install them from MacPorts where possible, source code otherwise. Install MacPorts to the default /opt/local path according to the instructions found on their website: https://www.macports.org/
+ ImageMagick
+ cairo
+ fribidi
+ lbzip2
+ libimagequant*
+ libpaper
+ libpng
+ librsvg
+ libsdl
+ libsdl_image
+ libsdl_mixer
+ libsdl_pango
+ libsdl_ttf
+ pkgconfig
+ zlib
+
+ ... but you should install any package that is required by the latest version of Tux Paint.
+
+ * Not available from MacPorts as of this writing, see below.
+
+ libimagequant
+
+
+ libimagequant is not available from MacPorts as of this writing. It can be installed from the source code as follows. It should be installed to /opt/local (same as MacPorts) for the library to be included in TuxPaint.dmg.
+
+ $ git clone https://github.com/ImageOptim/libimagequant.git
+ $ cd libimagequant
+ $ ./configure --prefix=/opt/local
+ $ make
+ $ sudo make install
+
+
+
+
+
+
+
+ WARNING: Having any UNIX-like toolset installed on your Mac besides MacPorts and Xcode, such as Fink or Brew, will prevent your app bundle from being portable. Be sure Fink and Brew are not accessible from your build environment.
+
+
+
+
+ How to Build
+
+
+ Simply, run:
+
+ % make
+ % make install
+
+
+ ... to create the TuxPaint.app application bundle that can be run in-place or copied to /Applications. It also creates TuxPaint.dmg for distribution.
+
+
+
+
+ Known Issues
+
+
+ -
+ A macOS binary built on a specific version of macOS only runs on that version of macOS or later. To ensure Tux Paint can run on the oldest version of macOS possible, build it on the oldest version of macOS available. As of this writing we know Tux Paint cannot be built to run on macOS 10.7 or earlier.
+
+ See "Old Versions of macOS" below for best-effort instructions on how to obtain, install, and build Tux Paint on an old version of macOS.
+
+
+
+
+
+ Old Versions of macOS
+
+
+ Some old versions of macOS can be downloaded from Apple's support page: https://support.apple.com/en-us/HT211683
+
+
+ macOS does allow dual booting of multiple versions of the OS, but it's safer and easier to install the old macOS onto a flash drive. Wherever you're installing it, the target drive's partitioniong scheme and partition type must match what the old macOS expects, so use the Disk Utility to partition and format the flash drive accordingly.
+
+
+ As of this writing, the oldest version of macOS available on Apple's support site is Yosemite 10.10, which expects "GPT (GUID Partition Table)" partitioning scheme instead of the older MBR scheme, and "Mac OS Extended (Journaled)" as the partition type instead of the newer APFS partition type.
+
+
+ Upon launching the installer, if you get a popup about macOS being too old or new to be installed, a bootable installer can be created using the instructions found here: https://support.apple.com/en-mide/HT201372
+
+
+ It has been found that macOS can be installed onto the bootable media itself, so you can make the flash drive into a bootable installer then install the old macOS onto the same flash drive.
+
+
+ Once the old macOS is installed, you may find the Xcode on the App Store is too new to run on the version of the old macOS. Old versions of Xcode can be downloaded from Apple's Developer site in an area accessible with free registration: https://developer.apple.com/download/more/
+
+
+ The list of macOS versions and the last version of Xcode compatible with them are laid out nicely on the Wikipedia page on Xcode: https://en.wikipedia.org/wiki/Xcode#Version_comparison_table
+
+
+ And because Xcode is being installed manually, you can skip the step to install the Xcode command line tools (do not run "xcode-select --install") but otherwise build Tux Paint using the same steps described in the earlier part of this document.
+
+
+
+
+
- Debugging:
-
- Debugging (to "STDOUT", e.g. to the terminal, or to a "stdout.txt" file, on Windows) can be enabled by setting "DEBUG" (and, if verbose logging is wanted, "VERBOSE") #defines in "src/debug.h".
+
- Uninstalling Tux Paint:
+
- Windows
+ Debugging output — to "STDOUT" on Linux and Unix, to a "stdout.txt" file on Windows, and to the file "/tmp/tuxpaint.log" on macOS — can be enabled by setting "DEBUG" (and, if verbose logging is wanted, "VERBOSE") #defines in "src/debug.h" and (re)compiling Tux Paint.
+
+
+
+
+
+
+
Using the Uninstaller
@@ -448,10 +936,27 @@
- Linux
+
+
+
+
- Within the Tux Paint source directory (where you compiled Tux Paint), you can use the "make uninstall" target to uninstall Tux Paint. By default, this must be done by the "root" user ('superuser'), but if you installed Tux Paint somewhere else (e.g., using a "PREFIX=..." setting to "make" and "make install"), you may not, and will want to provide those same settings here. (See the installation instructions above for further information.)
+ Delete "TuxPaint.app" from the "Applications" folder. Data files, including the configuration files, stamps, and saved pictures, may be found in "Library/Application Support/TuxPaint" (all users) and "/Users/USERNAME/Library/Application Support/TuxPaint" (individual users).
+
+
+
+
+
+
+
+ Within the Tux Paint source directory (where you compiled Tux Paint), you can use the "make uninstall" target to uninstall Tux Paint. By default, this must be done by the "root" user ('superuser'), but if you installed Tux Paint somewhere else (e.g., using a "PREFIX=..." setting to "make" and "make install"), you may not, and will want to provide those same settings here. (See the installation instructions above for further information.)