public void ShouldGetKerning() { var font = TrueTypeFont.FromFile(@"C:\Windows\Fonts\arial.ttf"); var horizontalKerning = KerningHelper.GetHorizontalKerning('A', 'W', font); Assert.True(horizontalKerning < 0); horizontalKerning = KerningHelper.GetHorizontalKerning('T', 'T', font); Assert.Equal(0, horizontalKerning); }
private static List <KerningPair> ReadKerningInformation(string path, IReadOnlyList <char> characters) { var pairs = new List <KerningPair>(); var font = RoyT.TrueType.TrueTypeFont.FromFile(path); foreach (var left in characters) { foreach (var right in characters) { var kerning = KerningHelper.GetHorizontalKerning(left, right, font); if (kerning > 0 || kerning < 0) { // Scale the kerning by the same factor MSDFGEN scales it pairs.Add(new KerningPair(left, right, kerning / 64.0f)); } } } return(pairs); }