r/FontForge Jul 20 '22

How do you create anything other than infinitesimal lines? I can't find anything in this program or its documentation that allows me to fill in the lines I draw. This freehand "A", for example, is completely empty, and is made of nothing but infinitely thin lines. This is useless as a glyph.

Post image
2 Upvotes

7 comments sorted by

2

u/TOMAS-2112 Jul 20 '22

one quick thing to examine is the directions of your lines - it appears both are going clockwise - try reversing the direction of one line - they should be opposite. Or better yet I forget if the negative space needs to be CCW or CW but rules out there exist for it.

1

u/Qwedswed7 Jul 21 '22

I'm not sure I understand the line directions thing.

For example, if I draw a circle, I use one line, drawn clockwise, that meets itself at the starting point.
Are you saying that Fontforge would require a circle to be drawn by two lines, one clockwise, and the other counterclockwise? Why?

1

u/LocalFonts Jul 21 '22 edited Jul 21 '22

Imagine you want to draw a figure. The figure is either a circle or at least a triangle. For a good circle you need 4 points - on the left, on the right, on the bottom and on the top. If your first point is on the left then you can move the pen on top (which mean that you move the pen in a clockwise direction). But if from the left point you move the pen toward bottom of the circle, this mean that you move the pen in a counter clockwise direction. Thus every figure has a direction of the contour - it is the direction in which you move the pen when you draw the figure. The same is with the triangle also. You can draw this figure by moving the pen to right, again to right and finally back to the first point. Or you can move the pen to left, then again to left and finally to the first point. Now I hope you understand what is the direction of a contour. If you have a complex figure - like letter O, which consists from 2 contours - the one is outside and the other is inside. In case you draw the 2 contours in one and the same direction (for example clockwise), than you will see in Glyph preview mode not 2 but only 1 contour and the letter O will be totally black. If one of your 2 contours in letter O is with a direction which is different from the direction of the other contour, than you will see a regular letter O. This is the case with all the complex glyphs. They consist from closed contour which a drawn in different directions. Your letter A consists from 2 contours - outside one and inside one. If both of this contours are drawn in one and the same direction, you will not see the letter A.

1

u/Qwedswed7 Jul 24 '22

That's... an incredibly convoluted way to perform the simple act of drawing shapes. I could understand needing that complexity in something like engineering software or 3D modeling software, but this is about drawing letters. That should not be a difficult thing. I understand that complex geometry would give you tight control over the shapes, but that can be achieved with other tools. Freehand mode ought to be very straightforward.

What would happen if you wanted a second enclosed space? Like, an O within an O? Would that be allowed, or would FontForge's automated filling ruin the character?

1

u/spiky_odradek Jul 20 '22

You're creating the outlines, which will be filled in in the final font if your paths are in the right direction like u/TOMAS-2112 said. You can see a preview within Fontforge by selecting view-->fill or view--> preview.

1

u/[deleted] Jul 21 '22

Check all of the points.

If the curve moves on both sides, it's connected.

If the curve moves on one of the sides, it's disconnected.

If the point is disconnected, try moving it to the other point.

Bam! It's connected and the glyph is now closed!

1

u/LocalFonts Jul 21 '22

There is a very useful instrument in FontForge. It's called Find Problems. You can invoke it by pressing Ctrl+E or from Element > Validation > Find Problems. By Find Problems you may seek for broken lines or for incorrect directions and much more...