A C project to manipulate PNG images using the lodepng library
To run it, download the repo and run make
inside the directory. Afterwards, run ./Imageomatic
.
A
orB
followed by file name, loads an image into registerA
orB
respectively+ <filename>
writes the image in registerA
to a new file with name<filname>
C
copies the content of registerB
to registerA
Z
terminates the programQ
turn the image to grayscale. Only for registerA
N
turns the image in. regsiterA
to a negative image. Resulting image will be stored in registerA
.
H
scales the image in registerA
to half its original size. Resulting image will be stored in registerA
.
P <color> <width> <height>
creates a new image with just the color<color>
.<color>
can be hexadecimal or a name of a color insidecores.txt
. Resulting image will be stored in registerA
.
R
rotates the image in registerA
90 degrees. Resulting image will be stored in registerA
.
O
posterizes the image (reduced color pallete) in registerA
. Resulting image will be stored in registerA
.
G <width> <height>
creates a image simulating the waves created by a drop of water. Resulting image will be stored in registerA
.
D
blurs the image in registerA
. This is not gaussian blur. Resulting image will be stored in registerA
.
M
places a mask onto the image saved in registerA
. The mask is saved in registerB
. The mask and the image must have the same size. Resulting image will be stored in registerA
.
F <width> <height> <scale>
creates an image with a graph representation of a function. Resulting image will be stored in registerA
.
T
converts the image in registerA
using a dithering algorithm. Resulting image will be stored in registerA
.
E
conceals a message into the image in registerA
, also known as steganography. It uses 6-bit ASCII tables to store the text in the two least-significant bits of the R, G and B components of the image. Resulting image will be stored in registerA
.