From da875fcb62c801b8d19b3d4d984ad963574fb356 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 2 Mar 2023 21:01:10 +0100 Subject: Adding upstream version 1.6.0. Signed-off-by: Daniel Baumann --- examples/fontforge-old/FFlistAPNum.py | 38 +++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100755 examples/fontforge-old/FFlistAPNum.py (limited to 'examples/fontforge-old/FFlistAPNum.py') diff --git a/examples/fontforge-old/FFlistAPNum.py b/examples/fontforge-old/FFlistAPNum.py new file mode 100755 index 0000000..ebba84b --- /dev/null +++ b/examples/fontforge-old/FFlistAPNum.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python +'FontForge: Report Glyph name, number of anchors - sorted by number of anchors' +__url__ = 'http://github.com/silnrsi/pysilfont' +__copyright__ = 'Copyright (c) 2015 SIL International (http://www.sil.org)' +__license__ = 'Released under the MIT License (http://opensource.org/licenses/MIT)' +__author__ = 'David Raymond' + +from silfont.core import execute + +argspec = [ + ('ifont',{'help': 'Input font file'}, {'type': 'infont'}), + ('-o','--output',{'help': 'Output text file'}, {'type': 'outfile', 'def': 'APnum.txt'})] + +def doit(args) : + font = args.ifont + outf = args.output + + # Make a list of glyphs and number of anchor points + AP_lst = [] + for glyph in font: + AP_lst.append( [glyph, len(font[glyph].anchorPoints)] ) + # Sort by numb of APs then glyphname + AP_lst.sort(AP_cmp) + for AP in AP_lst: + outf.write("%s,%s\n" % (AP[0], AP[1])) + + outf.close() + print "done" + +def AP_cmp(a, b): # Comparison to sort first by number of attachment points) then by Glyph name + c = cmp(a[1], b[1]) + if c != 0: + return c + else: + return cmp(a[0], b[0]) + +def cmd() : execute("FF",doit,argspec) +if __name__ == "__main__": cmd() -- cgit v1.2.3