Grid Sage Forums

Grid Sage Forums

  • July 12, 2024, 04:00:21 PM
  • Welcome, Guest
Please login or register.

Login with username, password and session length
Advanced search  


LINKS: Website | Steam | Wiki

Author Topic: REXPaint 1.70 released!  (Read 1681 times)


  • Administrator
  • True Cogmind
  • *****
  • Posts: 4334
    • View Profile
    • Cogmind
REXPaint 1.70 released!
« on: January 09, 2024, 08:51:02 PM »

Progress on Cogmind has recently led to numerous engine improvements (and a few bug fixes), so combined with feature request patches from the past few years we're getting an official release for the new and improved REXPaint!

Big items this time around include autoscaling of font bitmaps, .gpl (GIMP) palette support, and even better .ans (ANSI art) support--for the first time REXPaint can automatically import a format other than its own!

First, the full changelog...

REXPaint 1.70 (240110) changelog:
  • NEW: Support for automated upscaling of font bitmaps (see manual under Custom and Extended Fonts)
  • NEW: .ans file automated importing and conversion (ANSI art)
  • NEW: .gpl (GIMP) palette support
  • NEW: Ctrl-v during active file naming dialog or Text tool pastes text from system clipboard (single line only)
  • NEW: Reopening REXPaint recalls the last glyph index and brush foreground/background color in use
  • NEW: Remap all layer colors to closest from current palette (Shift-Alt-p, or Ctrl-Shift-Alt-p for all unlocked layers)
  • NEW: Added full list of valid color names to skins.xt file for reference
  • NEW: Command line support for creating new image files (see manual Appendix H)
  • NEW: Command line support for opening REXPaint with specific image selected (see manual Appendix H)
  • NEW: Command line support for exporting specific image as PNG (see manual Appendix H)
  • MOD: .ans export format optimized for reduced file size
  • MOD: C:DDA image exports now also reference custom Unicode glyph assignments in cases where users may want a custom font layout besides CP437
  • MOD: Updated installation instructions with new MSVC DLL download location
  • MOD: Manual Appendix H rewritten to encompass multiple types of command line options
  • MOD: Manual Appendix I changes official C:DDA font reference to reflect switch from Unifont to Terminus, provided on website Resources page
  • FIX: Reloading all images via Browse window blocked further mouse interaction with some popups like Resize window
  • FIX: Potential rare crash due to multithreaded logging
You can download REXPaint here, and note that as of 1.04 it's also available on

.ANS Importing!

While REXPaint has had .ans exporting for many years and could therefore be used to create traditional ANSI art, only art created from scratch using REXPaint's native format could be used to do this. Now .ans files can be imported as well!

Simply drop any .ans files into the /images/ directory structure, and on startup if REXPaint does not see any corresponding .xp files by the same name, it will automatically convert them for editing access. Although REXPaint only edits .xp files directly, you can re-export to .ans at any time. Original .ans files remain unchanged unless you choose to overwrite one with an export.

REXPaint will import and view .ans files even when ANSI mode is not active, though properly exporting to .ans again would require that mode to be active as usual. (Note: REXPaint strips SAUCE metadata when it converts .ans to .xp, and therefore does not contain any on export, either.)

Animated .ans files are beyond the scope of REXPaint and ignored--only static ANSI art is compatible.

Here is a demo of .ans conversion:

We've had text and image file importing for a while, but those are more fiddly, while this automated feature was a much bigger production. I spent a while researching the format in order to enable imports, and as a result was also able to optimize REXPaint's .ans exports to reduce the resulting file size.

(Note that one of these optimizations involves giving "cursor" instructions to skip over empty space, but if you're intending to use REXPaint's .ans exports with Discord's ```ansi feature, know that Discord's implementation of ANSI is pretty terrible and incomplete so you'll probably have to set the new ansOutputNoCursorShift cfg option to make images containing that sort of empty space compatible over there.)

Some other new features in action

Import .gpl (GIMP) palettes, for example from here, by dropping them into the data/palettes directory:

Have a tiny font that you want to increase by a whole number scaling factor? No longer do you have to manually create a separate set of bitmaps for it! Just add a new line in the font configuration file and let REXPaint do the rest:

The system clipboard can now be used to copy-paste text from another program into REXPaint's text entry tool (although this currently only supports a single line of text):

The UI will recall the glyph and colors in use when last closed, if possible:

Over a decade since the first release and REXPaint is still going :)

I've still got lots more planned, including huge features, but, you know, when I get to it :P
« Last Edit: January 09, 2024, 09:29:26 PM by Kyzrati »
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon