Supporting Valentina in other "free" software; Hershy fonts (side issue)

In order that this be discussed as a distinct area, I’m splitting out some comments from the Python implementation announcement thread [PyValentina a Python implementation of the core engine of Valentina Python implementation announcement thread]

There I said:

Does Inkscape support Python?

I’d left a query in their bug tracker for an import filter (Bug #1714761 “Enhancement: Import filter/translator for Valentin...” : Bugs : Inkscape)

Certainly the existence of a python implementation of the engine (and also an interface to the file format) will make it easier for other developers of other “free” software to implement support for the relevant file.

Both Inkscape (2D) and Blender (3D) support Python for writing extensions. Being able to pull artwork from Valentia into a tool like Inkscape so it can be combined with details that it wouldn’t be appropriate for a pattern tool to generate would be useful…

(Aside: There is an extension for Inkscape that generates so-termed “Hershey Text” (Hershey Text: An Inkscape extension for engraving fonts | Evil Mad Scientist Laboratories) which maybe of interest for adding textual information on patterns in the Layout portion of Valentina… Hershy fonts were a vector based (and thus scalable) set of fonts developed in the US. To me they look very like the plotter font’s I’ve seen on propriatery printed patterns, and support for something like them in the pattern file format might be useful as well)

Of course if someone really clever worked out how to do run a python back-end to serve up an SVG or PNG thumbnail on the fly… :rofl: (See also: Proposal for parametric pattern support at Wikimedia Commons

This was because sewing patterns, including re-drafts of historical ones can be an education resource. To display them directly, Mediawiki (which runs Wikipedia, Wikimedia commons) etc would need an appropriate viewer, and a way to generate thumbnail overviews…

I’ve got no idea how that could be fully implemented, but some kind of back end (based on the python implementation) that provides an appropriate SVG to whatever Mediawiki uses to display SVG files at present would seem to be one solution. Naturally such an extension to Mediawiki could also potentially be used on “as yet to be renamed pattern making software” 's wiki (it being Mediawiki based AIUI) in order to allow for direct display of patterns in the familiar wiki environment.

This may of course sound an overly ambitious prospect right now and you are welcome to tell me I am too early in opening a discussion like this.

1 Like

LOVE the idea of using Hershey fonts for output. Created issue.

Also, a pyVal plugin for Blender would make ‘sewing’ clothing in Blender [NSFW: nudity] sooo much easier. (The tutorial uses a partially nude MakeHuman model. I’ve set the video time for the (SFW) result, which looks awesome.) This alone would give indie devs a free alternative to Marvelous Designer and would increase Val’s exposure dramatically.

1 Like

Okay, add an issue to create a pyVal plugin in Blender.

The font issue can be handled within Valentina so that the labels look like we want them to look. There has been a long-standing discussion regarding labels. The intention is to allow patternmakers to brand their patterns with their logo, font, etc. The current bare-bones one-font capability is the minimal-viable-product.

1 Like

I find the default 1x1 size of the labels more an issue. .

1 Like

Yes the definition of minimally viable product varies, depending on who does the implementation. Roman was not interested in having labels, and kept saying that it wasn’t posdible. I hired Bojan Kver, PhD with graphics experience, to investigate and implement this implementation. I gave the specs to Bojan and to which he initially agreed to. But Roman took control of Bojan’s development progress, and reduced the functionality because he stated these functions weren’t needed. So please realize that we are lucky that the labels work as well as they do. Some of the specs are still in the issue comments for review by the next programmer who works on this.

More information here - Hershey fonts - Wikipedia

BTW Any set used for “as yet unnamed pattern design tool” may need to work out how to draw some additional symbols.

Namely the Scissors symbol’s from the Unicode Dingbats block which don’t seem to be in the original Hershey fonts as such… (Not sure how you would reserve a code point for them though.).

Here is a library for using Hershey fonts: hershey-fonts : libhersheyfont Here is a spec for ‘.jhf’ files: JHF file - The easiest way to open .jhf files in 2023 | (Basically, you define vertexes and the lines between them, like plotters used to use. Making up a custom font would be trivial.)

It also occurred to me that we can use the tools already in Val to make our own single-line symbols, or even whole fonts if need be. Going further, each symbol can be a separate SVG, with a lookup table, kerning, etc.

1 Like

We want to be able to echo our business brand on the pattern pieces, so we’ll need:

  • Select font from a picklist of font families
  • Select/enter font size
  • Select bold and italic
    (These 3 items will make our software operate like most software available in the 21st century)

We also want to able to upload our business logo in the global preferences, and place it on pattern pieces.

I like Hershey Fonts, it’s just that we don’t need to limit ourselves to using ONLY hersheyfonts. BTW, Kamal (the developer of libhersheyfont) is a personal friend and he really likes this project.

Of course not, but it needs to be an option for those who need it, like those using a plotter.

(Boldface just means a thicker line, and italic just means skewing the X positions of the vertices.)

Of course hersheyfonts can be in the list of fonts available!

Make that 4… want to be able justify it left, center, or right. :slight_smile:

Interesting, seeing as how his most recent development is with the labels.

Explains the only other significant commits. :slight_smile:

Yes we want a typical text formatting toolbar.

I would have fonts listed as ‘vector fonts’ and ‘raster fonts’ and let the user pick which one(s) they use. That way, someone who only wanted to use Hershey fonts could choose to only pick from Hershey fonts.

there is a pretty good chance that two groups of people:

the group containing people who know a lot (or wish to know a lot) about making patterns for sewing clothing and

the group containing people who have any idea (or care) about the definition of “vector font” and “raster font”

intersects almost not at all

Yeah but when they do, these are super fantastic enthusiastic creative people. They “get” this project and see all the things it can be.


and they are fun to banter with as well. Though I still think we want to tweak the wording a bit because many in the target audience would find vector font and raster font confusing. Or maybe find a functional label for them - one which evokes the difference. I don’t recall exactly where, but Keith showed somewhere the issues with different classes of printers and why the fonts were the appropriate choice for printers. For those who do not care to understand the difference in mechanics in a laser printer and an ink jet it might be easier to have a UI that has checkboxes of printer classes or actual printer names and use those to preselect font types. And for those who like to experiment with everything, include an override so that they can prove to themself the usefulness (or not) of a type of font on a printer or plotter.

1 Like

…or even call them ‘standard fonts’ and ‘plotter fonts’. If users don’t understand the latter, they will default to what they know: ‘standard’. It just struck me that an awesome way to get some publicity would be if someone put together a drawbot/vertical plotter/polargraph/etc. and printed patterns on large sheets of paper. One of those could probably churn out a full pattern in less than ten minutes.


I was thinking the same re standard(filled vector) fronts vs plotter(stroke) fonts.

1 Like

I was thinking conventional flat-bed plotters, but in general driving BIG plotters to make a pattern layout would be something. That’s partly why I mentioned Hershy fonts, so that “pattern/construction” directions could be put on a plotted pattern as well… (even though you could do most modern “filled” fonts can be drawn as outline vector if needed… Hmm…)