The designer of this FontStruction has chosen not to make it available for download from this website by choosing an “All Rights Reserved" license.
Please respect their decision and desist from requesting license changes in the comments.
If you would like to use the FontStruction for a specific project, you may be able to contact the designer directly about obtaining a license.
This is an unofficial forum I have made for FontStruct tutorials and educational materials. Want to know how to do something, or how to make a certain style or effect? This is the place to ask. I am not part of staff, and am far from being the most advanced user on here, but will pass on whatever I can.
I have been writing an FS video series for some time, but it has proven very time-consuming to make the series as comprehensive (and as high-quality) as I would like. It has also occurred to me that I can teach a lot through simple text and graphics. This is my attempt to create a knowledge hub for FS where all the good stuff is in one place. If you make a tutorial or expand on mine in some way, you're welcome to post those here as well.
Please keep the discussion topical. This page is about tutorials, requests and discussions for them, etc. Idea Soup is more of a free-for-all and anything FS-related is accepted there. Idea Soup is also a good place to discuss tutorial ideas, since we can work out exactly what needs to be taught there without clogging the comment section here. (There is a limit on the number of comments this page can have, right?)
This page is open to users of all languages, but we may have to use Google Translate to answer you. Sorry in advance for any bad translations :D
Related Forum: FontStruct Idea Soup
The font used for these forums is Tangereen 2.
Other subjects to make tutorials on: Brickswaps, Filters, Nudging, Pixel Optimization
Lemme know if you have any suggestions, folks!
no brickswap is evil.
That about covers the basics - or, the basics of FS techniques, at least. Teaching how to do typography or art is far beyond the scope of this...
Now, I will start delving into more advanced subjects. Since these subjects are often tied to a style, or to an individual way of constructing glyphs, the information will be more complicated to present. That presentation might take me a while to figure out. It will probably be a graphical one like those I've already posted, since this carries several advantages over video and PDF.
FS Expert Tips: Nine hints for saving time and work
Absolutely wonderful tutorials. You have summed up the very essence of fontstructing. Thank You.
I felt that something like this needed to be done. Lots of information is out there, but it's scattered among years of blog posts and projects by different users. If only one person manages to learn something they can use from this page, I'll be satisfied. :D
Even Frodo is resurrected from the depths of Offline to thank you! (So am I. Thank you)
I didn't realise you could erase in lines and areas, or that you could duplicate all glyphs to Latin accents; that should come in invariably useful in navigating the Fontstruct suite. I could really use a tutorial on spacing, kerning and eliding ligatures; how do I prevent glyphs from overlapping while maintaining consistent spacing, and modify glyphs depending on their collocation with certain other glyphs?
@Dantemwalt: Sure, I can make a tutorial about spacing. It's something that can be used to create not only good text spacing, but lots of novel effects and patterns. I'm working on a script for it now. :D
Here is the tutorial:
A sed4-Type guide to ligatures
Because Spacing is part of the artistic quality a font has, I'm not going to teach a "right" or "wrong" way to do it. I think it is best to start teaching about spacing by example. Here's an image with 5 examples of ways I have used spacing. The keys here are the vertical baseline, the letter width, and the value in the Spacing Dialog (shown in the Preview panel). The baseline is fixed, the width is adjustable, and the Spacing Dialog values are applied to all glyphs. The lowest spacing you can set in the Dialog is -1, so if you need more negative spacing than that, it must be applied to each individual glyph you want it on (or, you must move the glyphs to the left, as the case may be).
Kerning, another useful way to control spacing, is a more involved art... I'm still working on a way to condense that knowledge into a tutorial...
Links to the referenced designs (feel free to clone them and pick them apart):
Domino Farm, Esperhand, Gremlin Skins, Cybernetic Lawnmower, Eglantine
Eglantine isn't worth picking apart; its graphic explains everything there is to know about that technique. Finally, there are a few other ways to correct spacing and leading (such as with Filters), but the results they achieve can usually be reached through simpler means. These aspects of spacing, along with the artistic considerations of spacing itself, are highly abstract in nature so it is probably best to work them out through experience.
Most of the above techniques can also be expanded on or altered. For example, you can make a font like Gremlin Skins using patterns of varying width. In that case you would use a Global Spacing of 0 (not monospaced) and then drag the letter width for each pattern to its right edge.
There are a LOT of minor technique variations that will go unmentioned. This is so that I write tutorials instead of books. Besides, I gotta leave some room for users to experiment on their own. :D
In addition to what zephram wrote above, I also propose two other solution for this that doesn't require to replace actual glyphs within the grid, in case u absolutely don;'t want to or simply can't due to whatever given reason. A good example would be in the case of vintage game font revivals, and u want to remain faithful to the
original source font.
And would also prevent the comma from touching any glyphs located in the following line of text (as most likely is the case in Zephram's technique I think?).
But this is to navigate to the Menu>Advanced>"Unicode Letter Sets" and turning this on. Then go the the Unicode block named "High private use and surogates" in the bottom left menu within the editor, this set is located near the bottom of that list. And make a glyph in here with just a single brick that occupies the same grid row as is done in Zephram's approach.
Another Technique for getting additional vertical space is to navigate to the Menu>View>"Filters" and change the values for Horizontal & Vertical grid scale to 1,01 for both. This adds the exact amount of a square grid unit of vertical space to the font as well, Just keep in mind that this values should always be equal in order to maintain the aspect ratio for your font!
But I cant tell how this last technique would translate to the pixel optimization of the font in fact, since I have very little knowledge about pixel optimized fonts in general. Since this last techique is changing the initial font size as well.
@Sed4tives: Interestingly, with Eglantine I found a way to trick Notepad into calculating a different original size for the font. Notepad ordinarily does not support decimal values for font sizes, and Eglantine's original size is 4.5, but it looks pixel-perfect anyway. I didn't have to edit the metrics in software - it works like that right after being downloaded from FS. Sometime soon, I'm gonna give this a technique a go with other text editors. :D
This is all very useful, not to mention bewildering lol. Thanks.
Unfortunately, my current issue still persists. A font of mine is completely irregular. I need only certain glyphs to be indented and others to be inset, but I need to know which letters should I preliminarily adjust before kerning to optimise efficiency? Thanks again.
Well, there is no one true rule set for this. It's based on too many abstract things and things which are specific to the user. Try not to overthink it. The main rule is that whatever method you use (kerning, spacing adjustment, or modifying the design) is consistent.
As seen above, kerning efficiency is very much a matter of being able to apply a consistent value to the pairs. This is especially true in the case of negative kerning values (since you cannot type a - into that dialog and must copy-and-paste your -5 to duplicate it elsewhere). This is as efficient as it gets.
(link to example struction removed - check out Dantemwalt's Anglican textualis instead)
Because the project used for the above example lets NOTHING project to the left, the relationships between letters are more constant, allowing the -5 value to be used on practically all of the f* and *j pairs.
The rest is specific to your design. The ratios and proportions you set, the lengths of lines, the sizes of serifs and brush strokes, all factor in to how a font is spaced and kerned.
Continuing on this subject:
This Combination Generator is very good for creating kerning tables. Feed it all the glyphs that you want to kern and it will generate the pairs. Then, use your text editor to turn this into a table where each "master letter" has its own line. Then, you can paste that into the Preview panel and scroll to see how the rows look.
Some letters tend to be more problematic than others (f, j, r, v) and you'll likely want to work on those rows first. Look for the rows with the most drastic problems and the greatest number of problems and work on them first. By eliminating the common problem pairs, you will make your font more useable right now. You can then split up the rest of the kerning work so it's less taxing to perform, and work on it over a larger span of time, while still having a very useable font since you already kerned the common pairs.
In addition to the comment by Zephram's above I like to provide another similar tool, but more aiming at creating repetitive strings of type. Very helpful for making type samples that are meant to showcase the kerning. But also very helpful to easily spot troublesome spots that need adjustment.
And here is a multi-language dummy text generator that also features a number of typographic features, such as the option for repeating custom kerning pairs.
Just Another Test Text Generator
(the post this is responding to got deleted, along with a few others in this thread)
Cheers. I have managed to type the - fast before, but it doesn't always work for me. A browser issue, maybe? Regardless, copy/pasting is always gonna be faster and more reliable. Remember that this is something the user may need to do thousands of times in a row, or more. They might also be copying exact decimal values such as -4.32109, and it's just better to paste values like that.
Same goes for adding - to a number. Doesn't work for me. So when I need to set a negative number, I either drag the slider to the negatives and edit that, or just type -1 in the search box and then copy/paste that.
Welp, FS ate my comment. Here it is again...
* BLOCK JUMPING *
This tutorial is about a work-saving technique which I call "block jumping".
To put it simply: FontStruct has two different ways of organizing the glyphs into blocks. There are several glyphs that exist within two different blocks, and by having the right glyph selected when you enable or disable Unicode Letter Sets, you can have the editor instantly transport you to another block. This saves you the time and effort of navigating the drop-down list to select a block, and since a given glyph always transports you to the same spot within the destination block, you hunt less for the spot where you want to be. It sounds minor, but it can save you a LOT of grief.
Jumps I commonly use:
Basic Latin <-> General Punctuation
‘ ’ “ ”
More Latin <-> General Punctuation
† • … „ ‚ ‹ ›
More Latin <-> Currency Symbols
Google Fonts Basic -> Latin Extended A
These jumps work with the Google Fonts Basic band as well - you can jump from there. But, you cannot move back to Google Fonts Basic this way. If you try, you'll probably end up in Basic Latin or More Latin.
Finally, any glyph which is present in the Unicode set, but NOT in the standard FS set, will transport you back to Basic Latin when you select it and disable Unicode Letter Sets. This is probably the only jump you'll be able to use while editing the non-Latin languages.
I will be gone for a few days, but am glad to answer any questions I see when I get back. I hope this page is informative for people. This seemed like the best way for me to teach without using video. Video is a lot harder to make, and my teaching style causes me to ramble a lot in video. I don't want to overwhelm people with too many options or too many things to consider at once, which is why I've made these tutorials the way I have. Feedback on the tutorials is appreciated as well!
The Game Recreations set curated by redux and Goatmeal has plenty of Nintendo-related fonts.
Thanks so much for the TP! Thank you also for clearing up the comment section.
I haven't forgotten this page, it just takes longer to do advanced tutorials. I am still trying to come up with just the right kind of design, the one that yields the most opportunities to illustrate different methods of solving problems.
I am still taking tutorial-related requests too, of course!
Did you know that you can stack composites.
He does, I'm sure, also do we know (re)composite a composite brick is impossible! ;)
Cv tu fais quoi Kisendo
Thank you for this forum. I just started reading it (now that I found time lol), so I'm not sure if you've covered it yet, but how do you give a letter a slight curve?
He did not, and this actually can be one of the most tricky things in all of Fontstruct when you want to make truely custom curvatures and for example stroke width modulations or transitions.
There are two main techniques to do this, one is based on letter designs with large grid dimensions, and is sometimes called a Faux Bezier approach. Since it is faking Bezier curvatures. This technique is done brick by brick with numerous slightly changing custom composited sloped bricks that together making a curving transition.
The other technique is meant to be applied in small grid dimensions, and is far from fail prove. Also this one is the hardest of the two and requires a very high skilled fontstrctor to pull off well! But done right this gets closest to a true Bezier curve.
This technique is done by way of combining various different types of bricks, which can range from the standard brick taken from the Core brick pallet FS provides to custom resized composites of these to make different degrees of sloped bricks. But mostly this requires a combination 2 types of bricks. The first is a rounded circle segment bricks (meant to make the starting/ending point for a curve, or for the transition of a curve's extreme, making it progress further. The Second usually is a sloped brick that is used to connect a curve's extremes.
My next post will be a set of images for both techniques, to make you actually able to understand what I just explained and providing you with a visual refference for it all.
Yeah, I'm beginning to experiment with Composite bricks, which is an awesome feature I didn't know was a thing. I suspect that there's a way to get the slope I'm looking for, it's just a matter of combining the right combination of bricks to get the the slope I'm looking for.
Ugh... Well, that was poorly written and wordy.
@ postle92627 Here is another additional demonstration of that "small grid curves" technique I use.
PS: This same techinique is required in order to make "small grid" slanted slopes & thin hairline stokes, etc. as can be seen in the gif image I attached.
apostle: Check out Tutorial 3, Technique 3. You can see how I changed a brick's slope with composites by putting some square bricks next to it. More bricks = more angle change.
Good stuff, STF :D
Here is another random bunch of faux-Bezier (linear) shapes and fake curves taken from various letterparts I build. One could achieve when using the first technique I explained above combined with the other filters I havent explained previously. But which is grid scale Filter. In this particular sample I changed the value of only the Horizontal scale in order to achieve a stressed distortion to the overal shapes and behaviour of the curves. This specific value of 1,5:1 streches the width of my grid up to 150%. Resulting in a morphed like effect. When you grew a little more familiar with the editors Filters you can really push your boundaries on building custom shapes!
The one thing you got to keep in mind, this faux-Bezier technique will never truely be perfectly smooth at large size end-use of your font. But I can asure you when using this technique your abilities for making customized shapes & forms will becone nearly limitless.
So when close to a truely perfect smooth curve is enough for you, this is the way to go!
PS: To answer your question about ways to get the result you had in mind.
This faux-Bezier technique is far more predictable than the other technique I explained. So to get the shape you wish often follows a specific but very logical sequence of bricks and path for approach to reach a certain form.
The S that is provided the image above or the other thin stoke in the right most letter segment are good benchmark examples that show about the smoothest result you can achieve when using this specific technique without using the brick size filters. So there you have somewhat of a visual perspective on how useful the end result for fonts made this way would be.
Im not going to dive into using this technique with a 2:2 brick size filter setting, because this simply turns the required skill level up to hardcore mode.
But this way you essentially could create even smoother edges than at 1:1 brick size.
The basic technique remains the same though!
Good stuff, thanks guys!
I created a tool dedicated to making small grid designs, especially rounded and curved forms plus some of its related things.
The tool comes as a clonable fontstruction containing a number of assorted collections with various bits and pieces all aimed towards making custom round shapes.
They range from:
• Entire letterform examples
• Isolated parts such as curved letter segments & terminals
• Multiple other related contents
You can find it by following this URL: STF_CURVE TOOL (small grid)
The image provided is a slideshow with various included contents.
FS Advanced Tutorial: Pixel Optimization
Attempting to explain Pixel Optimization comprehensively would require an amount of information which could suffice to fill a book. So, the above tutorial is neither comprehensive nor proscriptive. It merely serves to identify the important factors in play and to demonstrate the principles of optimization as they relate to FontStructing and using FS-made fonts in graphic design.
- I should note that it is possible to use Filters to make a brick MORE optimized than before, but this tends to come at the expense of other bricks' optimization. Further, this technique often requires manually measuring and calculating angles, so it is best suited for a tutorial of its own.
- In some cases it is possible to use non-optimized bricks together in a way that yields an optimized result (see: Letsago viewed at Pixel size). I'm sure countless examples of this situation exist among the works of users more advanced than I. I've heard that another user is cooking up a tutorial about this very subject!
I don't have time to make a full tutorial graphic of this right now, so instead I will just write about it. This short tutorial is about how to manually kern fonts outside of FS.
What you want to do is open Inkscape (it is free) and use the Text tool to write your text. Then, move the cursor/caret between two glyphs. The value in the RED arrow box controls the kerning of that glyph pair, and the BLUE arrow controls the vertical spacing.
I will do a more advanced guide at some point on how to make vector previews in Inkscape. Vector art offers significant advantages, as you can size your art/sample up/down by any amount without losing quality. So, you make it once, and then it can be used on any website or layout. You don't have to manually make and prepare more imagery.
This technique lets you typeset even unkerned fonts, without having to manually copy/paste or move the glyphs.
I've made every effort to make this forum as inviting as possible, and to make the information as clear as possible. If you're mad at what you see here or want to see something else, but you don't comment about it, how are we supposed to know? One comment says more than a dozen downvotes.
Hello. The problem I'm running into is as follows: If I Nudge a brick then try to stack another brick into the same tile, the nudged brick is reset to its original position. Is there a way to prevent this? Or is there a way to select 1 of the now stacked bricks to move? Or is there a different method to creating curves as opposed to stacks and nudges?
Yes, stacking a brick will always revert the target brick to its original position and orientation. The stacked result is always treated as one brick. There is presently no way around this.
There are a few custom curves that can be created with stacking, but most applications of curves will require you to use compositing to create custom angles (see Tutorial 3, Technique 3 or check out this resource) and build your round shapes in a massive scale.
Starting from about 15 comments up there you'll find some indepth info on how to construct some custom curves in small grid size designs. Usually u first place the desired brick within the exact location of your composition grid before rotating it in position. Thus this remains limited. But some clever thinking can get u a long way. I hope this gets u any further
Been a while since I used this site, and I haven't developed any good tutorial ideas since. I might compile all the knowledge on this page (as well as Idea Soup and some other things) into a PDF, though. Any interest, people?
A brilliant collection of tutorials. I hope every fontstructor will come accross this at some stage.
How can I make a sh or th letter?
I just realized a stupid limitation. You can't use stacked bricks in a composite brick.
If you composite the desired shape in two parts, and then stack those, it's still possible to construct the brick you want.
i'm having a bit of trouble making a specific composite brick and i was wondering if anyone could help. i'm trying to make a semicircle glyph that takes up half of a pixel. i've gotten quite close without, but have not been able to do so without a small triangle remaining. any help would be greatly appreciated i've included a sample of what i have been able to make so far below
I need a better description or specific idea of what kind of brick you need (a sketch can help). This little triangle can be deleted selecting the new grouped brick you've made in the My Bricks panel and pressing (with the erase tool selected) the mayuscule key in your keyboard, you know. I add a sample. It helps you?
You can also found more exact info about composite and brick stacking here.
thank you for your help, i will be sure to check that out!
heres a mock-up of the composite i am trying to make
if i erase the small triangle the composite warps, i've included a sample of the warped composite as well
wait, i figured it out
i was informed of the eraser trick for removing glyphs
thank you for all of the help!
How do I hack the browser to edit characters outside of the existing sets?
@erictom333 no hacc for u
reaching out once again
i was wondering if anyone would know what combination of glyphs could be create the rest of the "macaroni quarter half" set
i've included a mock-up of the glyphs i am thinking of (original glyph included on fontstruct is in blue)
forgot to add "what combination of glyphs could be create (a composite glyph) for the rest of the 'macaroni quarter half' set"
@swash.buckler: not sure if I understand. Are you looking for those rotations of the blue brick (the three dark grey bricks) you have included in the mock-up?
@william leverette, somewhat~
i realize the blue brick is the only one available in the "bricks: core" set which is perfectly fine, i was wondering if there was a way to make composite bricks for the remaining three dark grey bricks as those specific orientations do not exist as of yet
Ahhh, yes I see your point. As we know, the official stacking (as well as composite) features do not allow rotated bricks. The workaround that currently enables this, then, is glitched stacking which allows both rotations and nudging (aka brick patching).
You would have to make several carefully constructed composites, rotate them into the desired orientations, then stack them manually. But it's a little cruel for me to suggest this as I haven't publically shared the sequence that enables brick patching!
@william leverette, ah okay
thank you for the input
@will.i.ૐ: Dear Maestro: I would like you to seriously consider making possible to share with us the sequence that enables your wonderful brick patching. If you do so, many of us would be infinitely and eternally grateful for once again expanding our capabilities in FontStruct with this groundbreaking achievement. Thanks in advance for considering it.
Is there a limit to how many bricks I can make a composite of? I was able to make a composite with 12 bricks, but I tried to make one out of 9 bricks, & another pattern with 21 bricks & in both cases the composite button was greyed out. 4 of the one with 9 bricks were themselves composite. Does that make a difference?
@tsafontstruct: We cannot presently use composites within composites. Also, without some rather advanced trickery, the hard limit for composites is 16 bricks. Hope this helps!
@tsafontstruct: To expand upon what @will.i.ૐ mentioned above, for those 16 bricks + empty spaces, you are also limited to the following shape/sizes for composites:
• 1 brick tall × 16 max. bricks wide *or* 16 max. bricks tall × 1 brick wide
• 2 max. bricks tall × 8 max. bricks wide *or* 8 max. bricks tall × 2 max. bricks wide
• 3 max. bricks tall × 5 max. bricks wide *or* 5 max. bricks tall × 3 max. bricks wide
• 4 max. bricks tall × 4 max. bricks wide
Now, you can have LESS than the total number of bricks + empty spaces listed above (for example, a composite that is 3 wide × 2 tall), but no more than 16 total bricks + empty spaces for any given shape (rectangle or square) from which you wish to make a composite.
sorry, I made a font and the space in it does not allow a little space, but simply does nothing. help me please
made a font but space doesn't work
Hello! I don't understand how to do this? I can only do this.
Sorry, i already understand
How do you apply a filter only to certain bricks? That sounds like a major lifehack.
No one has told me this before?! Thank you so much!!! This is so helpful!
@japanyoshi: To my knowledge, there's no way to do anything like this. The closest one can get is to make an irregular composite so that it gets shrunk in one dimension.
@Shiba_Blopotter: Glad it's helping out!
Doing, with your help, my font cover.
yes, the lyrics of dreams pt II
How would i do the middle of the s to match the c and e, while also being curved? Also, how can i make the v be the same witdth as the u with the same line thickness?
1. change the top left corner and bottom right corner's pieces' vertical size to 75
2 the u and the v can have the same width and thiccnes but i think u need to alter the v's shape
Might be able to figure this out? (2x2)
nvm, got it.
How do I do brick patching?
Difficult to explain quicklym but in a nutshell brick patching is a method of fontstructing aimed at contour smoothing, and (near) true Bezier like curves, and as the name allready reveals, it is based on patching/filling gaps, irregularities or transitions with many many overlapping modified bricks and composites. But its something that is best explained by self-exploration and trial/error process.
Please sign in to comment.