Sign in Join
Wiki copytemporary

Revision 1 of 2, by Circular on 1-30-2024. The page as it is now.

LazPaint

<div style="text-align: right; height: 1.5em">

</div>

<div style="background: rgb(15,11,80); background: linear-gradient(90deg, rgba(15,11,80,1) 0%, rgba(55,55,157,1) 35%, rgba(34,171,103,1) 100%); border: 1px solid black; padding: 8px; border-radius:20px; text-align: center; padding-top: 1em; padding-bottom: 1em; color: white;">

<div>

<span style="text-shadow:5px 5px 9px rgba(0,0,0,0.3); font-size: 25px">LazPaint</span>

</div>


<font size="+1">Free cross-platform image editor with raster and vector layers, written in Lazarus (Free Pascal).</font>

<span style="padding: 8px; border-radius:5px; border: 1px solid silver; text-transform: uppercase"><font color="silver">Blog</font></span> <span style="padding: 8px; border-radius:5px; border: 1px solid silver; text-transform: uppercase"><font color="silver">Last changes</font></span> <span style="padding: 8px; border-radius:5px; border: 1px solid white; border-bottom: 4px solid white; text-transform: uppercase">Documentation</span> <span style="padding: 8px; border-radius:5px; border: 1px solid silver; text-transform: uppercase"><font color="silver">Download</font></span> <span style="padding: 8px; border-radius:5px; border: 1px solid silver; text-transform: uppercase"><font color="silver">Screenshots</font></span> <span style="padding: 8px; border-radius:5px; border: 1px solid silver; text-transform: uppercase"><font color="silver">Forum</font></span> <span style="background-color: #3b5e98; padding: 8px; border-radius:5px; border: 1px solid #3b5ea0; font-weight: bold"><font color="white">f</font></span>

</div>

<table>

<tr>

<td width="50%">

<div style="text-align: center">

<span style="background:#60d000; color:white; padding: 8px; border-radius:8px"><font color=white>Donate</font></span>

</div>

<big>History</big>

LazPaint was started to demonstrate the capabilities of the graphic library BGRABitmap. It provides advanced drawing functions in Lazarus development environment. Both provided a source of inspiration for the other and finally LazPaint became real image editor. Thanks to the help of Lazarus community, the program has been compiled on Windows, Linux and macOS.

</td>

<td>

 

</td>

<td>

<big>Features</big>

Files: read and write a variety of file formats, including layered bitmaps and 3D files.

Tools: many tools are available to draw on the layers.

Edit/Select: select parts of an image with antialiasing and modify the selection as a mask.

View: color window, layer stack window and toolbox window.

Command line: call LazPaint from a console.

Scripts: scripts are provided to do layer effects. You can as well write your own Python scripts.

</td>

</tr>

</table>

Quick start

<table>

<tr>

<td width="50%">

<big>Useful keys</big>

Right mouse button can be used to:

Left clicking in the small color preview will select the pen / background / outline color or if it is a gradient, the start / end color, to be edited with the color chooser.

</td>

<td>

 

</td>

<td>

<big>Video tutorials</big>

Video tutorials are available on Youtube :

</td>

</tr>

</table>

Download

<table>

<tr>

<td bgcolor="#FFFFe0" style="border: 1px solid black; padding: 8px; text-align: center; border-radius:10px" width="30%">

Binaries can be downloaded on GitHub for Windows, Linux and macOS.

Download Portable

Support this project

How to make a portable version

</td>

<td>

 

</td>

<td>

Source code

The source code can be downloaded on GitHub:

LazPaint: https://github.com/bgrabitmap/lazpaint/

BGRAControls: https://github.com/bgrabitmap/bgracontrols/

BGRABitmap: https://github.com/bgrabitmap/bgrabitmap/

Dependencies:

  1. LazPaint depends on BGRAControls and BGRABitmap.
  2. BGRAControls depends on BGRABitmap.

You can download the source code and compile it for a specific platform. MacOS version is now fully functional.

</td>

</tr>

</table>

Compilation of latest version

  1. Get Lazarus as a package in your distribution or download it at https://sourceforge.net/projects/lazarus/files/
  2. Open Lazarus to check it works
  3. Download latest version of BGRABitmap at https://github.com/bgrabitmap/bgrabitmap/releases
  4. Open the package file BGRABitmapPack.lpk in Lazarus
  5. Download latest version of BGRAControls at https://github.com/bgrabitmap/bgracontrols/releases
  6. Open the package file bgracontrols.lpk in Lazarus
  7. Download LazPaint at https://github.com/bgrabitmap/lazpaint/releases
  8. Open the package file lazpaintcontrols.lpk in Lazarus
  9. Open the project file lazpaint.lpi or lazpaint.lpr in Lazarus (choose to Open project if prompted)
  10. Click the green triangle "Run" and check if the program is working
  11. Close LazPaint and close Lazarus and go in the release folder of the project

The essential files are: the executable file, the readme file, the models, i18n and scripts folders.

Additional files and instructions are in release folder for each platform:

Note: when debugging on Windows, you may want to have support for WebP and RAW images. You can do that by copying the dcraw.exe and libwebp.dll files next to the compiled files (for example debug\i386-win32 for 32-bit version).

Screenshots

LazPaint on Linux (and dark theme)

<figure> <img src="Lazpaint_version_7.png" title="Lazpaint_version_7.png" /> <figcaption>Lazpaint_version_7.png</figcaption> </figure>

LazPaint on Windows

<figure> <img src="Lazpaint_curve_redim.png" title="Lazpaint_curve_redim.png" /> <figcaption>Lazpaint_curve_redim.png</figcaption> </figure>

LazPaint on Puppy Linux

<figure> <img src="lazpaint6_puppy.png" title="lazpaint6_puppy.png" /> <figcaption>lazpaint6_puppy.png</figcaption> </figure>

Interface

Many common actions can be done with the toolbar. Zoom can be changed with the magnifying glass (+ or -), or by clicking on the 1:1 button to show the image at its original size in pixels, or with the zoom fit button to set the zoom so that the whole image be within the window.

It is possible to undo/redo the 200 last operations. If you have a doubt on what you are drawing, undo back to the beginning, save a copy, and redo the modifications before going further.

Image manipulation

An image can be resampled, flipped horizontally and vertically.

Smart zoom x3 : resize the image x3 and detects borders; this provides a useful zoom with ancient games sprites.

Color manipulation

Filters

Filters can be applied to the whole image or to the active selection.


From the Free Pascal wiki, page "LazPaint", as it stood on 2024-01-30 after a change by Circular, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.