Sign in Join
Wiki copytemporary

LazPaint: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: LazPaint

OldNewLine
1+<div style="text-align: right; height: 1.5em">
2+
3+</div>
4+
5+<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;">
6+
7+<div>
8+
9+<span style="text-shadow:5px 5px 9px rgba(0,0,0,0.3); font-size: 25px">**LazPaint**</span>
10+
11+</div>
12+
13+\
14+<font size="+1">Free cross-platform image editor with raster and vector layers, written in Lazarus (Free Pascal).</font>\
15+\
16+<span style="padding: 8px; border-radius:5px; border: 1px solid silver; text-transform: uppercase">[<font color="silver">Blog</font>](https://lazpaint.blogspot.com/)</span> <span style="padding: 8px; border-radius:5px; border: 1px solid silver; text-transform: uppercase">[<font color="silver">Last changes</font>](https://lazpaint.github.io/last/)</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>](https://lazpaint.github.io/)</span> <span style="padding: 8px; border-radius:5px; border: 1px solid silver; text-transform: uppercase">[<font color="silver">Screenshots</font>](http://lazpaint.blogspot.com/p/screenshots.html)</span> <span style="padding: 8px; border-radius:5px; border: 1px solid silver; text-transform: uppercase">[<font color="silver">Forum</font>](https://forum.lazarus.freepascal.org/index.php/board,46.0.html)</span> <span style="background-color: #3b5e98; padding: 8px; border-radius:5px; border: 1px solid #3b5ea0; font-weight: bold">[<font color="white">f</font>](https://www.facebook.com/LazPaint)</span>
17+
18+</div>
19+
20+<table>
21+
22+<tr>
23+
24+<td width="50%">
25+
26+<div style="text-align: center">
27+
28+<span style="background:#60d000; color:white; padding: 8px; border-radius:8px">[<font color=white>Donate</font>](http://sourceforge.net/donate/index.php?group_id=404555)</span>
29+
30+</div>
31+
32+<big>**History**</big>
33+
34+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.
35+
36+</td>
37+
38+<td>
39+
40+ 
41+
42+</td>
43+
44+<td>
45+
46+<big>**Features**</big>
47+
48+[[LazPaint File|Files]]: read and write a variety of file formats, including layered bitmaps and 3D files.
49+
50+[[LazPaint Tools|Tools]]: many tools are available to draw on the layers.
51+
52+[[LazPaint Edit|Edit/Select]]: select parts of an image with antialiasing and modify the selection as a mask.
53+
54+[[LazPaint Windows|View]]: color window, layer stack window and toolbox window.
55+
56+[[LazPaint Command line|Command line]]: call LazPaint from a console.
57+
58+[[LazPaint scripts|Scripts]]: scripts are provided to do layer effects. You can as well write your own [Python](https://www.python.org/) scripts.
59+
60+</td>
61+
62+</tr>
63+
64+</table>
65+
66+### Quick start
67+
68+<table>
69+
70+<tr>
71+
72+<td width="50%">
73+
74+<big>**Useful keys**</big>
75+
76+- Maintaining Space key down switches temporarily in move mode
77+- F6 key hides/shows all tool windows
78+- Ctrl key aligns to image pixels and limits possible angles with rotation tool
79+- Backspace key erases last point in a polygon or last letter in a text
80+- Enter key releases the selection
81+
82+Right mouse button can be used to:
83+
84+- Swap drawing colors temporarily
85+- Subtract from selection (selection tool)
86+- Define reference position (light position for shaded text and shapes, rotation center, clone tool source)
87+- Finish a shape (polygon, curve)
88+- Rotate a shape (clicking corners)
89+
90+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.
91+
92+</td>
93+
94+<td>
95+
96+ 
97+
98+</td>
99+
100+<td>
101+
102+<big>**Video tutorials**</big>
103+
104+Video tutorials are available on Youtube :
105+
106+- [Getting started](http://www.youtube.com/watch?v=9G6XcQdBtDo)
107+- [Advanced drawing tools](http://www.youtube.com/watch?v=UEGQk1UhJ2w)
108+- [Using selection tools](http://www.youtube.com/watch?v=6zWohQYLW3g)
109+- [Text with projected shadow](http://www.youtube.com/watch?v=EmKzqKneJeI)
110+- [Drawing a vortex](http://www.youtube.com/watch?v=9z6WgIaUYwQ)
111+- [Export for Krita](http://www.youtube.com/watch?v=FFEZpl15Rb4)
112+- [Using layers, magic wand and perspective](http://www.youtube.com/watch?v=Hxinfs6ziFc)
113+- [Draw a fire](http://www.youtube.com/watch?v=yWgo0fcdOSg) (*overlay* blending mode)
114+- [Draw lightnings](http://www.youtube.com/watch?v=69cHd5W-Zyg) (*negation* blending mode)
115+- [Draw a neon with blur](http://www.youtube.com/watch?v=1rtHSPAUDnA) (*lighten* blending mode)
116+- [Spline selection and glow effect](http://www.youtube.com/watch?v=Lewg3iYkln8) (*glow* blending mode)
117+- [Drop shadow](https://www.youtube.com/watch?v=rsdPha36y50) (example of layer effect)
118+
119+</td>
120+
121+</tr>
122+
123+</table>
124+
125+### Download
126+
127+<table>
128+
129+<tr>
130+
131+<td bgcolor="#FFFFe0" style="border: 1px solid black; padding: 8px; text-align: center; border-radius:10px" width="30%">
132+
133+*Binaries can be downloaded on GitHub for Windows, Linux and macOS.*
134+
135+**[Download](https://lazpaint.github.io)** **[Portable](https://portableapps.com/apps/graphics_pictures/lazpaint-portable)**
136+
137+[Support this project](http://sourceforge.net/donate/index.php?group_id=404555)
138+
139+[[LazPaint Make it portable|How to make a portable version]]
140+
141+</td>
142+
143+<td>
144+
145+ 
146+
147+</td>
148+
149+<td>
150+
151+**Source code**
152+
153+The source code can be downloaded on GitHub:
154+
155+LazPaint: <https://github.com/bgrabitmap/lazpaint/>
156+
157+BGRAControls: <https://github.com/bgrabitmap/bgracontrols/>
158+
159+BGRABitmap: <https://github.com/bgrabitmap/bgrabitmap/>
160+
161+Dependencies:
162+
163+1. LazPaint depends on [[BGRAControls]] and [[BGRABitmap]].
164+2. [[BGRAControls]] depends on [[BGRABitmap]].
165+
166+You can download the source code and compile it for a specific platform. MacOS version is now fully functional.
167+
168+</td>
169+
170+</tr>
171+
172+</table>
173+
174+### Compilation of latest version
175+
176+1. Get **Lazarus** as a package in your distribution or download it at <https://sourceforge.net/projects/lazarus/files/>
177+2. Open **Lazarus** to check it works
178+3. Download latest version of *BGRABitmap* at <https://github.com/bgrabitmap/bgrabitmap/releases>
179+4. Open the package file *BGRABitmapPack.lpk* in **Lazarus**
180+5. Download latest version of *BGRAControls* at <https://github.com/bgrabitmap/bgracontrols/releases>
181+6. Open the package file *bgracontrols.lpk* in **Lazarus**
182+7. Download *LazPaint* at <https://github.com/bgrabitmap/lazpaint/releases>
183+8. Open the package file *lazpaintcontrols.lpk* in **Lazarus**
184+9. Open the project file *lazpaint.lpi* or *lazpaint.lpr* in **Lazarus** (choose to Open project if prompted)
185+10. Click the green triangle "Run" and check if the program is working
186+11. Close *LazPaint* and close **Lazarus** and go in the *release* folder of the project
187+
188+The essential files are: the executable file, the readme file, the *models*, *i18n* and *scripts* folders.
189+
190+Additional files and instructions are in *release* folder for each platform:
191+
192+- ***windows***: run the batch file *stage.bat* to generate a *lazpaint32* and *lazpaint64* folders that contains everything (it adds particular support for WebP and RAW images by adding *dcraw.exe* and *libwebp.dll*).
193+- ***macOS***: go in the folder with the terminal and call *./makedmg.sh* to generate the bundle.
194+- ***debian***: go in the folder with the terminal and call *./makedeb.sh* to generate the DEB package and the TAR.GZ file.
195+
196+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).
197+
198+### Screenshots
199+
200+#### LazPaint on Linux (and dark theme)
201+
202+<figure>
203+<img src="Lazpaint_version_7.png" title="Lazpaint_version_7.png" />
204+<figcaption>Lazpaint_version_7.png</figcaption>
205+</figure>
206+
207+#### LazPaint on Windows
208+
209+<figure>
210+<img src="Lazpaint_curve_redim.png" title="Lazpaint_curve_redim.png" />
211+<figcaption>Lazpaint_curve_redim.png</figcaption>
212+</figure>
213+
214+#### LazPaint on Puppy Linux
215+
216+<figure>
217+<img src="lazpaint6_puppy.png" title="lazpaint6_puppy.png" />
218+<figcaption>lazpaint6_puppy.png</figcaption>
219+</figure>
220+
221+### Interface
222+
223+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.
224+
225+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.
226+
227+### Image manipulation
228+
229+An image can be resampled, flipped horizontally and vertically.
230+
231+Smart zoom x3 : resize the image x3 and detects borders; this provides a useful zoom with ancient games sprites.
232+
233+### Color manipulation
234+
235+- Colorize : set the color of an image while preserving intensities
236+- Shift colors : cycle colors and change colorness (saturation)
237+- Intensity : make colors lighter or darker without making them white
238+- Lightness : make colors lighter or darker by making them whiter
239+- Normalize : use the whole range of each color channel and alpha channel
240+- Negative : invert colors (with gamma correction)
241+- Linear negative : invert colors (without gamma correction)
242+- Grayscale : converts colors to grayscale with gamma correction
243+
244+### Filters
245+
246+Filters can be applied to the whole image or to the active selection.
247+
248+- Radial blur : non directional blur
249+- Motion blur : directional blur
250+- Custom blur : blur according to a mask
251+
252+- Sharpen : makes contours more accute, complementary to Smooth
253+- Smooth : softens whole image, complementary to Sharpen
254+- Median : computes the median of colors around each pixel, which softens corners
255+
256+- Contour : draws contours on a white background (like a pencil drawing)
257+- Emboss : draws contours with shadow
258+
259+- Sphere : spherical projection
260+- Cylinder : cylinder projection
261+- Clouds : add clouds of the current pen color
262+
263+---
264+*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](/wiki-contact).*

Back to history