{"id":26214860,"url":"https://github.com/charlierobin/xojo-atsapplicationfontspath","last_synced_at":"2026-05-26T20:03:05.209Z","repository":{"id":109754918,"uuid":"305743437","full_name":"charlierobin/xojo-ATSApplicationFontsPath","owner":"charlierobin","description":"Use fonts in your app that are not installed on the user’s system.","archived":false,"fork":false,"pushed_at":"2020-10-20T15:46:35.000Z","size":58,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-13T01:34:03.854Z","etag":null,"topics":["application-fonts","macos","osx","plistbuddy","realbasic","xojo"],"latest_commit_sha":null,"homepage":"","language":"Xojo","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/charlierobin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-10-20T14:57:12.000Z","updated_at":"2020-10-21T10:41:21.000Z","dependencies_parsed_at":"2023-04-27T16:47:50.915Z","dependency_job_id":null,"html_url":"https://github.com/charlierobin/xojo-ATSApplicationFontsPath","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/charlierobin/xojo-ATSApplicationFontsPath","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/charlierobin%2Fxojo-ATSApplicationFontsPath","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/charlierobin%2Fxojo-ATSApplicationFontsPath/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/charlierobin%2Fxojo-ATSApplicationFontsPath/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/charlierobin%2Fxojo-ATSApplicationFontsPath/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/charlierobin","download_url":"https://codeload.github.com/charlierobin/xojo-ATSApplicationFontsPath/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/charlierobin%2Fxojo-ATSApplicationFontsPath/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33536662,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"ssl_error","status_checked_at":"2026-05-26T15:22:15.568Z","response_time":63,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["application-fonts","macos","osx","plistbuddy","realbasic","xojo"],"created_at":"2025-03-12T10:18:43.539Z","updated_at":"2026-05-26T20:03:05.194Z","avatar_url":"https://github.com/charlierobin.png","language":"Xojo","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Use ATSApplicationFontsPath in your Xojo app\n\nYou can use fonts in your app that are not installed on the user’s system, with no need to require the user to install them manually (or for them to be installed at all).\n\n[Information Property List Key Reference](https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/GeneralPurposeKeys.html#//apple_ref/doc/uid/TP40009253-SW8)\n\n[Property List Key - ATSApplicationFontsPath](https://developer.apple.com/documentation/bundleresources/information_property_list/atsapplicationfontspath)\n\nFirst, add a **copy step** to your build process (to run **AFTER** the build step) and copy the font files into your app’s `Resources` directory. (I like to have a \"Fonts\" subdirectory within the `Resources` directory, but it’s not essental.)\n\nThen you add a script step to run after the copy step.\n\nThis step uses **PlistBuddy** (provided with Apple’s Xcode install) to add an `ATSApplicationFontsPath` option to the newly built app’s `Info.plist` file.\n\n    var path as String = CurrentBuildLocation + \"/\" + CurrentBuildAppName.ReplaceAll( \" \", \"\\ \" )\n    \n    var result as String = DoShellCommand( \"/usr/libexec/PlistBuddy -c \"\"Add ::ATSApplicationFontsPath string Fonts/\"\" \" + path + \".app/Contents/Info.plist\" )\n    \n    if result \u003c\u003e \"\" then print( result )\n\nAs you can see, error checking is pretty minimal.\n\n`CurrentBuildLocation` is already escaped for command line use, `CurrentBuildAppName` is NOT escaped, so you need to create a final fully escaped version of the whole path.\n\nYou pass this in to **PlistBuddy**, specifying the Fonts subdirectory.\n\nNow when you run your app, it has access to any fonts that are in that folder.\n\nThe simple project file uses the demo font in the `Paint` event of the main app window to draw some text. Nothing terribly elaborate or clever. But this technique comes in to its own when including dingbats or other symbol or special fonts and then referencing them from within your app.\n\n    Sub Paint(g As Graphics, areas() As REALbasic.Rect) Handles Paint\n\n        g.FontName = \"ChicagoFLF\"\n  \n        g.FontSize = 72\n  \n        g.DrawText( \"Hello!\", ( g.Width - g.TextWidth( \"Hello!\" ) ) / 2, g.Height / 2 )\n  \n    End Sub\n    \n(The only slight wrinkle is that sometimes you have to experiment to find the correct name of the font. Or just install on it your system, use **FontBook**, and test it out in Xojo directly. And then uninstall it once more.)\n\nThe demo font included with the project is \"ChicagoFLF\", which is a public domain font, created and made available by Robin Casady, based on the original Apple Chicago system typeface designed by Susan Kare.\n\nhttps://fontlibrary.org/en/font/chicagoflf\n\nhttps://en.wikipedia.org/wiki/Chicago_(typeface)\n\nNote that **PlistBuddy** must be installed on your computer. The easiest way to achieve this is to simply install Xcode.\n\nBut at the end of the day, the `Info.plist` file is just text, so there would be plenty of other ways of doing the same thing ...\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcharlierobin%2Fxojo-atsapplicationfontspath","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcharlierobin%2Fxojo-atsapplicationfontspath","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcharlierobin%2Fxojo-atsapplicationfontspath/lists"}