Skip to content

nikkNizz/Drawish

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Icons freely modified from "Breeze Icons copyright KDE and licenced under the GNU LGPL version 3 or later".

Drawish 2.6

Is a program for basic drawing, open pdf as images, draw using the keyboard, use rich text, save portions framed by a "camera", create custom shapes and much more.
See features

Image

Content

PRECOMPILED PACKAGES

The compiled program for Linux and Windows can be downloaded from the releases page of this project.
Once the program is open you can create a quick link: from the [File -> Desktop shortcut] menu, a menu item is created in Linux or a desktop shortcut in Windows.

COMPILE FROM SOURCE

Download and unzip the project.
Give the following commands from the terminal (instructions for Debian derivatives):

sudo apt update
sudo apt install g++
sudo apt install cmake
sudo apt install qt6-base-dev
cd /path/to/Drawish_project
cmake .
make
optional
sudo make install

When there are changes, replace only the modified files with the newer ones and simply run the make command. The process will be very fast.

Or install and compile directly from Qt Creator on Windows, Mac, or Linux, without changing a single line of code!

On some Linux systems, you may need to download the following libraries in order to compile:
apt install
libfontconfig1-dev \
libfreetype-dev \
libx11-dev \
libx11-xcb-dev \
libxcb-cursor-dev \
libxcb-glx0-dev \
libxcb-icccm4-dev \
libxcb-image0-dev \
libxcb-keysyms1-dev \
libxcb-randr0-dev \
libxcb-render-util0-dev \
libxcb-shape0-dev \
libxcb-shm0-dev \
libxcb-sync-dev \
libxcb-util-dev \
libxcb-xfixes0-dev \
libxcb-xinerama0-dev \
libxcb-xkb-dev \
libxcb1-dev \
libxext-dev \
libxfixes-dev \
libxi-dev \
libxkbcommon-dev \
libxkbcommon-x11-dev \
libxrender-dev

Command line

If you launch the program from the command line, you can also add the path of an image.
/path/Drawish_xxxx.Appimage or
/path/Drawish_xxxx.Appimage /path/to/image

For Italian users: you can run Drawish in English by adding the "en" parameter.
/path/Drawish_xxxx.Appimage en or
/path/Drawish_xxxx.Appimage /path/to/image en

USAGE

You can start drawing or you can open an image.
Open images from the" File->Open" menu. You can also drag a file on the drawing area, paste an image from the clipboard ("Edit->Paste from clipboard") or from a file ("Options->Paste from file").
Some settings, such as pen size or text options, are automatically restored from the previous session.

The drawing options are visible on the left of the drawing area. The color palette is also visible here. The first color on the top left is the active color (default black). Change the active color:
-by clicking on a quick color or on the + button
-from the "Image->Colors" menu and entering the rgb values ​​manually
-using the pick color on the image.
-From saved colors.

When you select an option it will be active for the drawing area, when you deselect it, it will no longer be active and any pending operations will be deleted.

Saving

To save in jpg, ico, bmp, ppm, xbm or xpm format, choose the extension from the "format" box that appears. You can set a default folder for the file picker: "File ->Default path for file picker".

Save to Pdf

You can directly save the image to PDF from the "File->To PDF" menu. PDFs are saved in "/Drawish_Data" or in home folder.

Base64

For base64 format, see "Camera" chapter.

Serialize

From the "Options->Serialize" menu a window opens from which you can choose operations to perform on all the images contained in a folder.
Choose the folder, check the operations of interest and enter any parameters.
The original images will not be overwritten as a new folder will be created for the modified files.
The operations will be performed in the order in which they are listed.

Open Pdf

It is possible to open pdf as images, dragging them onto the drawing area, or from the menu, or from the command line.
In windows the quality is reduced.
In Linux the image is real, thanks to the poppler-utils generally preinstalled. If they are not present, install them with your package manager.
video

Undo/Redo

In the top left selection box you can navigate through the history of the last 25 changes. You can also use the ctrl-Z key combination to go back.
To return to the left image, press the top left button or ctrl-R [Redo].
image
If a change is made from a previous image, the left image will no longer be available.

Restore point

You can save a restore point from the [image->Set as restore point] menu (or F1 key). Any previous points will be deleted.
Go back to the saved point at any time from the [Image->Restore] menu (F12).
Cancel the operation with ctrl-Z or undo.

Selection

Click the [selection] button to select a portion of the image. The selection will be detached from the image, it can be dragged with the mouse and scaled by dragging the edges with the mouse. Hold the mouse near the inside of the edges to resize the selection.
To make the white area of ​​the selection transparent, check the box from the "Options->Transparent selection" Menu.
To select everything, use the "Options->Select all" menu.
To save the image to a file select: "Options->Selection to file".
To finish and pasting the selection, click on a point on the image.

Stamp selection

To copy the portion without detaching it (stamp), select it and, before moving it, go to the "Options->copy selection (no clipboard) " menu, or press + on your keyboard or ctrl + .video.

Selection and keyboard

You can create a selection by entering the coordinates from the keyboard from the "Sizes->Sizes->[Create selection]" menu.
To move the selection finely with the keyboard use the A (left), Q or W (up), S (right), Z or X (down) keys.

Keep selection aspect ratio

Check "Options -> Keep selection aspect ratio" to preserve the aspect ratio of the selection when dragging edges. video

Freehand selection

Click the [Freehand selection] to start making a freehand selection with the mouse.
See also Fill inside black

Elliptical selection and other shapes

You can transform a shape into a selection. Draw a shape as usual, then press the button to the right of the fill selection box to convert the shape into a selection.
video

Merge selection

From the "Edit->Merge selection to image" menu you can merge the portion of the image below into the selection. A prompt allows you to choose between 3 blending ratios. video

Selection to image (Crop) (and Reattach)

From the "Options->Set selection as image (crop)" you can crop the image. On very large images, you can crop them for faster processing and then paste them again using the "Options->Reattach" function. Drawish reattaches the image to the coordinates of the last crop.

Automatically merge images

From the "Options->Paste from file" menu you can merge two images with three options. The second image can be put into a selection that can be moved to the desired point, or the second image can be automatically added to the right or below the first.

Freehand drawing

Click the [pen] button and move the mouse over the drawing area, holding down the left mouse button.
From the "edit" menu you can enable "Mouse correction" to avoid drawing every little mouse movement.
You can draw with the keyboard by selecting in the top menu how many pixels (1 or 5) to draw when you press the keys.
Keys: (Q = top-left) (W = top) (E = top-right) (A = left) (S = right) (< = bottom-left) (Z = down) (X = bottom-right). video
In the panel that appears above the drawing area you can choose attributes. Do not use transparent color to draw (only fill).
You can use a semi-transparent pen by selecting the switch in the pen toolbar.
Use white color to erase.
You can draw with a round, square, digital marker, or stylus tip.
You can draw with a random color pen.
You can use the "fusion" pen to draw with a color obtained by merging the pixels crossed by the pen.
You can draw automatically numbered labels by selecting 'labels' in the pen selection box. Select this option again to reset the numbering. video

Color eraser

Click the [pen] button. In the panel that appears above the drawing area select "Erase by color similaraty defined in fill".
When the cursor moves over the active color, it will be replaced by the preferred color.
To replace it with white, reset the preferred color with the appropriate button.
To perform the similarity replacement, enter the "Fill" function, move the "similarity" bar and then return to the "Pen" function.
video

Text

Click the [text] button, and click a point in the drawing area. The text area will be displayed and can be moved as desired. The multiline text box and options are displayed at the top.
Click the [DRAW] button to actually print the text, then move the text area to continue printing text. Or disable the function by clicking the left button again.
It is possible to paste text from the clipboard, as an image.

The last text remains stored in the box allowing both changes in case of undo and the creation of copies

RTF editor

You can open an RTF editor to write formatted text. This text can be saved to a file and can be directly transposed onto the image via a screenshot. After clicking the [text] button, click the [RTF] button to open the editor. Click [Screenshot and close] button to transpose the text into a selection in the image. In the editor you can save texts and open them.
video

Tracer

Click [tracer] to activate it.
The tracer allows you to draw a highlight line that automatically disappears (useful in demonstrations).

Fill / Fill inside black

Click the [fill] button and click on the point in the image where you want to replace a color with the active color. The replacement occurs on the exact color that you clicked.
To perform the replacement by color affinity, move the slider that appears at the top.
Increasing the value decreases the affinity.
It is possible to fill with semi transparency of the active color with the switch at the top right.video
If the check box [Fill inside black] is selected, the entire area around the click, included within a black line, is filled in black. video

Spray

Click the [spray] button and move the mouse over the drawing area, holding down the left mouse button.
The size of the spray is defined by the size of the pen.

Pick color

Click the [pick] button and then on a point in the image that you want to get the color of. This will become the active color.
If the [color balance] check box is checked, you can balance the colors of the image based on the clicked color and the active color. For example, if you want to balance the white, you will have to set white as the active color and click on a color in the image that should be white, but is not. video
Click on the pick button again to proceed with other operations.

Line / Simple arrow / Connected lines / dotted lines

Click the [Line] button. In the selection box next to it, select a line or a simple arrow or connected lines.
In the top menu choose the attributes of the line.
To draw lines and arrows use the mouse on the image with the left button pressed.
To get connected lines click on the points to connect.
To make the lines dashed, check the "Options->Dot lines" menu.
video

Line angle indicator

To display the angle of the line check the "Options->Show line angle indicator" Menu.

Line from keyboard

From the "Image->Create line" menu (or ALT + L) you can create a line by entering the coordinates from the keyboard.
The coordinates can be expressed as the start and end points of the line, or as the start point, angle and length! The angles are in the order shown in the image:
image

Shapes

Click the [shapes] button, or select a shape from the selection box.
You can draw predefined shapes or custom shapes.
The shape can be moved by dragging the area with the mouse or from keyboard (A W S Z keys).
Border width is defined by line width box.
Many filling options are available from the choice box at the top right.

Shapes to selection

See Elliptical selection and other shapes

Default shapes

SQUARE, RECTANGLE, CIRCLE, ELLIPSE, TRIANGLE, ROUNDED RECT, ROUNDED SQUARE, STAR, ARROWS, SOLID, CROSSES (for simple arrow see "Line / Simple arrow / Connected lines" chapter).

Custom shapes

Drawish's custom shapes are polygons or vector curves defined in a text file.
This user-created file must be named "shapes.txt" and placed in the Drawish_Data folder.
Drawish will read it and add the objects defined in it to the shapes selection box.
The file must define the names of the shapes and the coordinates (in percentage values) of the points through which the lines or Bezier curves should pass. Lines beginning with // are considered comments and skipped, as blank lines. Lines beginning with @ identify the object's name; all other lines describe the coordinates. Each line represents a single point expressed by two numbers between 0 and 100 ( percentage values) and separated by commas. The two numbers represent the x and y positions of the point (where x is the distance from the left edge and y is the distance from the top edge).
If a line does not comply with this notation, the entire file will be discarded and the debug information will be included in the file itself.

Warning: The endpoint of the polygons will automatically be joined to the starting point to allow the shape to be filled with the selected style.

Drawish then allows you to choose whether the coordinates are treated as part of a polygon or as points on a Bezier curve, thus obtaining curved shapes or polygons with a single notation: check or uncheck "Options->Custom shape to curve" menu.
All shapes can be transformed into a selection and all can be filled with the selected style.

Custom shapes example

Here is an example of a file that defines three shapes: a home icon, a diamond and a heart. All three shapes can be treated as polygons or curves, but the desired result will be achieved by deselecting the curve option for home and diamond, while to obtain the heart, this option must be selected.

Drawish interprets the Bezier curve only for a maximum of seven points.

// Drawish custom shapes file
// Define names with @
// Define x, y points in % for each line
// Write comments using double slashes 😉

@home
10, 90
10,25
50, 5
90,25
90, 90
60, 90
60, 75
40, 75
40, 90

@diamond
50, 10
90, 60
50, 90
10, 60

@hart
50,90
0, 0
40, 0
50, 33
60, 0
100,0
50, 90

Save as shapes.txt in the Drawish_Data folder and restart Drawish. The objects will load into the shape box as shown in this video

Shapes by keyboard

You can create rectangles, squares, circles and ellipses by entering data from the keyboard from the "Image-->Create Shapes" menu (or ALT + H).
Enter the center as the shape coordinate.
You can draw the center of these shapes or not.

Curved line

Click the [curved line] button. You will be able to click on 6 points of the image through which the bezier curve will pass.
By moving the handles, you can create any complex curved shape.
Supports dotted line: "Options -> Dot lines".
To confirm the drawing, click a point on the image.
video

Connected curves

Click the [connected curves] button.
Click four points of the image to draw the first curve, then click on two points to create more curves.
Supports dotted line: "Options -> Dot lines".
video

Color management

From the [Image->Colors] menu you can perform additional operations on colors.
If transparent selection is active, the transparent color is treated as black.
You can create a color by entering rgb values ​​from the keyboard, create gradients and replace pixels based on complex options.
You can also get the hexadecimal value of the color and the average color of the image.
video
video

Favorite colors

From the menu [Image-> Set as favorite color] the active color is saved in an image and made available in the color palette as an additional color.
The favorite color is also used for the "color eraser" function. The little button next to the favorite color resets it.
The colors are saved in the file "/Drawish_Data/drawish_saved_colors.png".
From this file is very simple to pick a color. From the [Image -> Pick from favorites] menu click on a color. This will become the active color.
video

Color balance

See Pick color.
video

Charts

Select the [Charts] menu and choose a chart type. Enter positive values ​​(one per line) in the box that opens.

Zoom

From the "Zoom" menu choose a predefined zoom level or a custom level.
For quick zoom levels you can press the 1 to 6 keys on your keyboard!

Pixel matrix

Right click on the image->Show Grid: the pixel matrix will appear enlarged for the area in the vicinity of the cursor.
Clicking on a zoomed pixel with the right mouse button, it will be replaced with the active color (or draw with the active color by holding down the right mouse button).
Clicking with the left mouse button, to get information about the position and the rgb color of the pixel and possibly set it as the active color.
Remove the enlarged area with another right-click on the image.

Double the pixels

If there is an active selection these functions applies to the selection, otherwise they applie to the entire image. From the "Sizes->Quadruple the pixel" menu (or ALT + Q) you can increase the image with the pixels doubled in width and height. The image can be enlarged several times without loss of quality, but it is not a zoom, but an image modification. In the same way, to divide the pixels, use the "Sizes->Divide by 4" menu (ALT + D).

Rotation

Enter the degrees of rotation in the small box on the left and then click the right or left buttons to rotate.
If you don't know how many degrees to rotate the image, start the automatic rotation by clicking the small button with the stopwatch and then click again to stop it in the desired position. To mirror the image (or selection) go to the "Image->Mirror horizontally "or "Image->Mirror vertically" menu.
video

Effects

From the "Image->Effects" menu a window opens that allows you to apply effects to the image in the selection.
If transparent selection is active, the transparent color is treated as black.
If there is no selection, the effects are applied to the entire image.
After each change, click the [Update] button to make the changes effective, or select the "update automatically" checkbox if the function allows it. Click [OK] to apply the new image or [Cancel] to abort the changes. video

When an image is particularly faded, and is represented by very close intensity values, instead of increasing the contrast, try to perform "histogram equalization".
I implemented the function following the instructions on Wikipedia.

Stretch Area

From the "Image->Stretch area", you can open a window to distort the edges of the selected image.
You can perform a curved distortion by selecting the appropriate box.
video

Other effects

From the Image menu you can apply the listed effects to the selection.
If there is no selection, the changes are applied to the entire image.
The effects allow you to reduce the image to grayscale, invert the colors, reduce to rgb (eliminates the minority channels and keeps only the prevalent one), mirror the image, give sepia effect, find the outlines of objects.

Sizes

From the" Sizes->Sizes" (Alt-S) menu you can scale or resize the image based on manually entered values.
It is also possible to adapt the image to a new form factor. video
You can also create a selection manually.

Camera

A camera is a delimited area of ​​the image, whose dimensions are defined by the user, and which can be saved in a file.
This area can be moved freely with the mouse or with the A Q S Z (or A W S X) keys.
Save the portion of the image delimited by the camera from the "Camera->Save image" menu.
Delete the camera from the" Camera->Delete camera " menu. You can save the framed image in base64 format to the clipboard from the "Camera->To base64" menu. Video

Window

From the "Sizes->Window size" menu you can set the size of the Drawish window.
From the "About->Capture me (to clipboard)" menu or with the Alt+K combination you can save the screenshot of the window to the clipboard.

KEY COMBINATION

button button Function
CTRL Z UNDO
CTRL R REDO
+ COPY SELECTION (NO CLIPBOARD)
CTRL + COPY SELECTION (NO CLIPBOARD)
ALT A SELECT ALL
ALT C OPEN COLORS WINDOW
ALT D DIVIDE BY 4
ALT E OPEN EFFECTS WINDOW
ALT G GITHUB / GUIDE
ALT H CREATE SHAPE
ALT K SCREENSHOT (CLIPBOARD)
ALT L CREATE LINE
ALT Q QUADRUPLE PIXELS
ALT R REATTACH CROPPED IMAGE
ALT T OPEN STRETCH AREA
ALT S OPEN SIZE WINDOW
F1 SET RESTORE POINT
F12 RESTORE
1 ZOOM 100 %
2 ZOOM 200 %
3 ZOOM 300 %
4 ZOOM 400 %
5 ZOOM 50 %
6 ZOOM 30 %

MOVE SELECTION OR CAMERA
A, S, W, Z = LEFT,RIGHT,TOP, BOTTOM

WRITE WITH PEN
Q = TOP-LEFT
W = TOP
E = TOP-RIGHT
A = LEFT
S = RIGHT
< = BOTTOM-LEFT
Z = BOTTOM
X = BOTTOM-RIGHT

FEATURES

Here are some of Drawish's unique features (The most common functions are omitted):

🟢️ color replacement with conditions
🟢️ large number of shapes with many types of filling
🟢️ custom shapes (polygons or curves)
🟢️ shapes to selection
🟢️ manual selection creation
🟢️ keyboard line for point A and B
🟢️ keyboard line for point A - angle - length
🟢️ keyboard drawing: Right left up down and diagonals
🟢️ rich text editor
🟢️ fill inside black (useful for eliminating an area or background quickly)
🟢️ paste from file with automatic union at the bottom or right or leave in the selection
🟢️ file saving camera
🟢️ get code base64 (from Camera)
🟢️ complex curves
🔵️ merging selection and image with 3 levels of strength
🔵️ dotted lines
🔵️ angle line indicator
🔵️ paste over file
🔵️ manual or continuous selection rotation
🔵️ curve-like stretching
🔵️ gradients
🔵️ keyboard color definition
🔵️ tracer
🔵️ semi-transparent pen
🔵️ keyboard shapes with center displayed
🔵️ fill with semi transparency
🔵️ reduce to rgb
🔵️ create charts
🔵️ open pdf as images and save images as pdf
🔵️ Interface for Batch functions
🔵️ quick restore point
🔵️ quick web links
🔵️ object outline
🟣️ mouse correction
🟣️ effects
🟣️ average color
🟣️ fill for similarity
🟣️ eraser for color by similarity
🟣️ grid and pixel color replacement with right clicks
🟣️ multicolor pen
🟣️ set the window size
🟣️ screenshot of the window
🟣️ fusion pen
🟣️ favorite colors
🟣️ copy selection to the program, not only to clipboard
🟣️ increase image or selection size without loss (in addition to scaling by pulling edges)