https://github.com/mananapr/pxlart
A terminal pixel art creator
https://github.com/mananapr/pxlart
c console ncurses pixel-art pixel-art-maker terminal
Last synced: 4 months ago
JSON representation
A terminal pixel art creator
- Host: GitHub
- URL: https://github.com/mananapr/pxlart
- Owner: mananapr
- License: mit
- Created: 2019-02-17T08:54:29.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-04-05T06:10:49.000Z (over 6 years ago)
- Last Synced: 2025-04-13T05:53:33.537Z (6 months ago)
- Topics: c, console, ncurses, pixel-art, pixel-art-maker, terminal
- Language: C
- Size: 108 KB
- Stars: 58
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

A pixel art editor for the terminal written in C

`pxlart` is a pixel art editor written in C using the ncurses library that has vim like keybindings.
I got the idea from a bash script called [pxltrm](https://github.com/dylanaraps/pxltrm).
## Dependencies
- `ncursesw`
## Installation
- Clone the repo
`git clone --depth 1 https://github.com/mananapr/pxlart`
- Compile using `make`
`cd pxlart && make`
- Install
`sudo make install`
Arch Linux users can use the [AUR](https://aur.archlinux.org/packages/pxlart) package.
## Keybindings
| Key | Function |
|:---:| --- |
| h j k l | Navigation keys |
| d/Space | Draw |
| e | Erase |
| b | Change Brush |
| c | Set FG Color |
| B | Set BG Color |
| s | Save |
| o | Load |
| q | Quit |
## A note about colors
`pxlart` uses shell color numbers (0-255) for color input. You can use a script like [this](https://gist.github.com/MicahElliott/719710) to see what number corresponds to what color.
## Image Export
Saved projects can be exported to image formats using the mkppm utility
included with pxlart.
A saved project called "foo" will generate a file called "foo.data", which
can be passed into the mkppm utility to create "foo.ppm".
`mkppm foo.data foo.ppm`
The PPM file can then be converted to a PNG file using imagemagick:
`convert foo.ppm foo.png`
## TODO
- [x] Add ability to save and load
- [x] Add ability to export to image formats
- [x] Make PKGBUILD for AUR
- [x] Write a manpage