Create cross-stitch templates with KXStitch
Cross-Stitched
KXStitch lets you design cross-stitch patterns with the option to automatically convert imported images.
Cross-stitch is a very old needlework technique. Formerly a pastime of the nobility or higher-ranking ladies, cross-stitch is now considered a popular and easy-to-learn hobby among children and adults alike.
In cross-stitching, you embroider a small X-shape on a coarsely woven fabric with a good countable structure. This is done by first applying a forward angled ground stitch followed by a backward angled cover stitch over the ground stitch, resulting in an X. However, there are also quarter, half, and three-quarter stitches – in cross-stitch jargon, they are known as broken stitches. In addition, there is the backstitch and the knot stitch, also known as a French knot.
There are numerous templates and motifs for cross-stitch available in stores and on the Internet but not always free of charge. Alternatively, you can design your own patterns with the help of your computer. KXStitch [1] offers an open source solution for creating your own cross-stitch patterns for Linux and the Raspberry Pi OS.
Start Creating
KXStitch converts images or texts using the fonts installed on your computer into stitch patterns. Patterns can be saved in a library and reused. Once a pattern is created, KXStitch prints the pattern or exports it as a PDF file. In addition, the patterns only print in black and white, not in color, so the colors must be displayed in encoded form.
Most popular distributions include KXStitch in their package sources, so the installation is easy. If you don't find what you are looking for in the repos, KDE provides an AppStream package on the KDE Apps pages. There are also installable packages for various distributions in the openSUSE Build Service. You can find the KXStitch source code on GitHub [2].
After starting KXStitch, you need to first adjust the settings in File | File Properties (Figure 1), where you control the palette, the pattern size, and the cloth density (Cloth Count), in addition to meta information, such as author, title, and copyright, as well as any instructions.
For units of measurement, KXStitch only supports stitches, inches, and centimeters, which makes it difficult to share files with some graphics programs. You may want to change the default setting from Stitches to Centimeters. For the color palettes in the Floss Scheme section, the program supports three different floss schemes: DMC, Madeira, and Anchor.
Next, you must adjust the palette. Otherwise, many of the functions are disabled, making things a bit confusing. To do this, call Palette | Palette Manager. In the Palette Manager dialog, transfer the desired colors from the previously selected color scheme to the project's palette (Figure 2) by selecting the desired color in the right-hand section and clicking the middle button with the two arrows pointing to the left. In the dialog that pops up when you're done, press OK to confirm your selection. Otherwise, KXStitch will not create the palette.
After that, KXStitch is ready for use. By default, the program is in a drawing mode. Similar to a paint program, you work with the drawing area, creating stitches instead of pixels. This becomes clear as soon as you zoom in to the drawing with Ctrl++ or via View | Magnify. Similarly, you can zoom out by pressing Ctrl+-. However, KXStitch does not show the current scale. There is also a limit to the magnification.
The Tools menu offers some of the options already mentioned, such as displaying text (Figure 3). KXStitch opens a dialog for inserting text where you can enter the text, the font, and the size. Click OK to transfer the text to the canvas. The red frame around the text indicates that you can currently move the text freely to the canvas. But be careful: This will work once only. After that, KXStitch anchors the text object firmly on the canvas. Drawing rectangles, ellipses, or polygons with and without fill works in a similar way.
Managing the Library
The Library Manager menu plays an important role, especially if you are more interested in traditional pattern-oriented designs. To do this, however, you must first create and populate the library, which means drawing and saving many smaller patterns. In the library, these patterns can then be broken down into categories and subcategories.
To populate the library, first create a new category in the Libraries pane by right-clicking in the pane and selecting the New Category option. Then draw the desired object on the canvas, select it using the Tools | Select option, and copy it to the clipboard using Ctrl+C. Then use Paste in the context menu to transfer the object to the library after right-clicking in the left pane. Ctrl+V does not work here.
You can simply drag and drop the patterns from the library back onto the canvas. Alternatively, you can use the Alphabet function to search the existing libraries for the corresponding pattern that has been assigned to the keyboard shortcut, such as Shift+L for the Linux pattern shown in Figure 4. This lets you quickly insert your own letters or even patterns onto the canvas.
If you want to design a pattern using images, you need to import graphics. KXStitch offers two options. If you import directly via File | Import Image, KXStitch automatically converts the image into a cross-stitch pattern (Figure 5). In our lab, this worked reliably with pixel graphics in JPG or PNG format, but vector graphics in SVG format reproducibly crashed the program. You may need to convert your image to a PNG graphic with an image editing program beforehand.
If you are importing an image as a background using the File | Add Background Image… option, KXStitch only displays the image in the background and does not calculate a cross-stitch pattern. You can trace the imported graphic yourself as a pattern by hand, much like tracing an image with tracing paper. In View | Display Background Image, you can turn the display of the background image on and off at any time.
Converting Images
One of the central problems with cross-stitch is printing out the pattern images. Very few hobby stitchers have a printer capable of producing hard copy the size of a tablecloth. Even if they did, such a huge printout would be difficult to handle. It's a matter of breaking the image down into manageable pieces. Since the whole thing is usually printed in black and white rather than in color, you will also need a glossary of the characters used for the colors and stitches.
KXStitch impresses here. The program handles this task at the push of a button. To view the breakdown and for an overview, you can click on the button with the three dots in the upper left corner in the Print Setup dialog, which you access by selecting File | Print …. KXStitch then automatically breaks down the contents of the canvas into pieces that fit the set paper size and adds a glossary of the colors used. At the same time, the application calculates the required length for each thread, which makes purchasing the material easier (Figure 6).
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Linux Sees Massive Performance Increase from a Single Line of Code
With one line of code, Intel was able to increase the performance of the Linux kernel by 4,000 percent.
-
Fedora KDE Approved as an Official Spin
If you prefer the Plasma desktop environment and the Fedora distribution, you're in luck because there's now an official spin that is listed on the same level as the Fedora Workstation edition.
-
New Steam Client Ups the Ante for Linux
The latest release from Steam has some pretty cool tricks up its sleeve.
-
Gnome OS Transitioning Toward a General-Purpose Distro
If you're looking for the perfectly vanilla take on the Gnome desktop, Gnome OS might be for you.
-
Fedora 41 Released with New Features
If you're a Fedora fan or just looking for a Linux distribution to help you migrate from Windows, Fedora 41 might be just the ticket.
-
AlmaLinux OS Kitten 10 Gives Power Users a Sneak Preview
If you're looking to kick the tires of AlmaLinux's upstream version, the developers have a purrfect solution.
-
Gnome 47.1 Released with a Few Fixes
The latest release of the Gnome desktop is all about fixing a few nagging issues and not about bringing new features into the mix.
-
System76 Unveils an Ampere-Powered Thelio Desktop
If you're looking for a new desktop system for developing autonomous driving and software-defined vehicle solutions. System76 has you covered.
-
VirtualBox 7.1.4 Includes Initial Support for Linux kernel 6.12
The latest version of VirtualBox has arrived and it not only adds initial support for kernel 6.12 but another feature that will make using the virtual machine tool much easier.
-
New Slimbook EVO with Raw AMD Ryzen Power
If you're looking for serious power in a 14" ultrabook that is powered by Linux, Slimbook has just the thing for you.