{
    "content": [
        {
            "type": "text",
            "text": "# Font::TTF::Utils (perldoc)\n\n## NAME\n\nFont::TTF::Utils - Utility functions to save fingers\n\n## DESCRIPTION\n\nLots of useful functions to save my fingers, especially for trivial tables\n\n## Sections\n\n- **NAME**\n- **DESCRIPTION**\n- **FUNCTIONS** (1 subsections)\n- **BUGS**\n- **AUTHOR**\n- **LICENSING**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "Font::TTF::Utils",
        "section": "",
        "mode": "perldoc",
        "summary": "Font::TTF::Utils - Utility functions to save fingers",
        "synopsis": null,
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "FUNCTIONS",
                "lines": 82,
                "subsections": [
                    {
                        "name": "-dRadius",
                        "lines": 2
                    }
                ]
            },
            {
                "name": "BUGS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "LICENSING",
                "lines": 5,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "Font::TTF::Utils - Utility functions to save fingers\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "Lots of useful functions to save my fingers, especially for trivial tables\n",
                "subsections": []
            },
            "FUNCTIONS": {
                "content": "The following functions are exported\n\n($val, $pos) = TTFInitFields ($str, $pos)\nGiven a field description from the \"DATA\" section, creates an absolute entry in the fields\nassociative array for the class\n\nTTFReadFields($obj, $dat, $fields)\nGiven a block of data large enough to account for all the fields in a table, processes the data\nblock to convert to the values in the objects instance variables by name based on the list in\nthe \"DATA\" block which has been run through \"TTFInitFields\"\n\nTTFUnpack($fmt, $dat)\nA TrueType types equivalent of Perls \"unpack\" function. Thus $fmt consists of type followed by\nan optional number of elements to read including *. The type may be one of:\n\nc       BYTE\nC       CHAR\nf       FIXED\nF       F2DOT14\nl       LONG\nL       ULONG\ns       SHORT\nS       USHORT\nv       Version number (FIXED)\n\nNote that \"FUNIT\", \"FWORD\" and \"UFWORD\" are not data types but units.\n\nReturns array of scalar (first element) depending on context\n\n$dat = TTFOutFields($obj, $fields, $len)\nGiven the fields table from \"TTFInitFields\" writes out the instance variables from the object\nto the filehandle in TTF binary form.\n\n$dat = TTFPack($fmt, @data)\nThe TrueType equivalent to Perl's \"pack\" function. See details of \"TTFUnpack\" for how to work\nthe $fmt string.\n\n($num, $range, $select, $shift) = TTFbininfo($num)\nCalculates binary search information from a number of elements\n\nTTFwordutf8($str)\nReturns the UTF8 form of the 16 bit string, assumed to be in big endian order, including\nsurrogate handling\n\nTTFutf8word($str)\nReturns the 16-bit form in big endian order of the UTF 8 string, including surrogate handling to\nUnicode.\n\nXMLhexdump($context, $dat)\nDumps out the given data as a sequence of <data> blocks each 16 bytes wide\n\nXMLouthints\nConverts a binary string of hinting code into a textual representation\n\nmakecircle($f, $cmap, [$dia, $sb, $opts])\nAdds a dotted circle to a font. This function is very configurable. The parameters passed in\nare:\n\n$f  Font to work with. This is required.\n\n$cmap\nA cmap table (not the 'val' sub-element of a cmap) to add the glyph too. Optional.\n\n$dia\nOptional diameter for the main circle. Defaults to 80% em\n\n$sb Side bearing. The left and right side-bearings are always the same. This value defaults to\n10% em.\n\nThere are various options to control all sorts of interesting aspects of the circle\n\nnumDots\nNumber of dots in the circle\n\nnumPoints\nNumber of curve points to use to create each dot\n\nuid Unicode reference to store this glyph under in the cmap. Defaults to 0x25CC\n\npname\nPostscript name to give the glyph. Defaults to uni25CC.\n",
                "subsections": [
                    {
                        "name": "-dRadius",
                        "content": "Radius of each dot.\n"
                    }
                ]
            },
            "BUGS": {
                "content": "No known bugs\n",
                "subsections": []
            },
            "AUTHOR": {
                "content": "Martin Hosken <http://scripts.sil.org/FontUtils>.\n",
                "subsections": []
            },
            "LICENSING": {
                "content": "Copyright (c) 1998-2016, SIL International (http://www.sil.org)\n\nThis module is released under the terms of the Artistic License 2.0. For details, see the full\ntext of the license in the file LICENSE.\n",
                "subsections": []
            }
        }
    }
}