Create cross-stitch templates with KXStitch


Article from Issue 252/2021

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.

Figure 1: KXStitch settings: Cloth Count indicates the number of stitches per centimeter of fabric.

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.

Figure 2: Before you can get started, you need to add colors to palettes. Later on, KXStitch will use the symbols in the printout to identify the different threads.

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.

Figure 3: The opened Text Tool with the Palette pane (left) and the transferred text shown on the canvas (right) in the background. The Palette pane displays the icons for the threads.

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.

Figure 4: The pattern library makes it easier to work with repeating patterns. Use the keyboard shortcut specified below the pattern to insert the element on 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.

Figure 5: KXStitch either automatically converts imported images into a pattern or places the image on the background of the canvas for tracing.

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).

Figure 6: The Print Setup dialog distributes the project across several pages. It creates an overview of the threads used and calculates the required thread length for each color.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Free Software Projects

    This month we look at photo stitching, photo gallery software, and the Atunes music player.

  • Tau Meta Tau Physica: Bringing Open Source to Fashion

    In this exclusive interview, Susan Spencer Conklin tells Linux Pro Magazine how she re-entered the open source world with a project that combines her programming skills with her interest in fashion. Susan explains how her vision for an open source fashion tool has expanded since she first introduced the Tau Meta Tau Physica application at the Libre Graphics Meeting in Brussels last fall.

  • Free Software Projects

    We take a closer look at photo stitching, a photo gallery application, an audio player, and video-recording software. for a more complete summary of the article.

  • Panoramas

    You can create a pleasing image by aligning multiple landscapes to form a panorama. But the alignment can be tricky, especially if the individual photos do not match.Tools like Hugin,Enblend,and Autopano-SIFT help you create that perfect seamless panorama.

  • Hugin

    Hugin is a tool for creating panoramic images, with many additional functions that make it a powerful supplement to your image editing toolbox.

comments powered by Disqus
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.

Learn More