Font format app license
María Ramos
Posts: 100
Hi,
I was just doing some research on what font formats are provided with each type of licence today (desktop, web, app). It would be great to simplify things for users and send just the font format that is needed. It seems quite clear that otf and woff2 make the work for desktop and web (with some exceptions) but I still have doubts about the app license. App developers I’ve worked with asked me for ttf files some time ago but, if I am not wrong, otf files make the work as well. What font format do you provide users that buy app licences? Only ttf? Only otf? Both?
Looking forward to hearing your thoughts and comments on this. Thanks!
I was just doing some research on what font formats are provided with each type of licence today (desktop, web, app). It would be great to simplify things for users and send just the font format that is needed. It seems quite clear that otf and woff2 make the work for desktop and web (with some exceptions) but I still have doubts about the app license. App developers I’ve worked with asked me for ttf files some time ago but, if I am not wrong, otf files make the work as well. What font format do you provide users that buy app licences? Only ttf? Only otf? Both?
Looking forward to hearing your thoughts and comments on this. Thanks!
Tagged:
0
Comments
-
I only ever deliver otf for app. It's rare that some needs tff for a specific weird app use case.1
-
I’ve heard anecdotally (because I am not usually the one talking to customers) that TTF is required (or at least often preferred) for app embedding. As a result, that’s the format we typically provide.
A year ago I would have thought OTF did fine, but apparently our customers say otherwise. Having said that, I’d be happy to know more about what the real-world requirements are for app developers these days.0 -
@Christopher Slye. That's fascinating. I am almost never asked for ttf and, unlike with web, it wouldn't be easy for me to find out on my own. I look at website code all the time and would notice if the format changed but for app I have to rely on what customers request. We have a clause in our embedding licensing giving customers permission to subset and reformat the fonts, as long as they don't change the name or make other alterations. So, perhaps most customers just do it themselves. We do get the occasional request for ttf and when we do I always ask why, because I'm curious. It's usually compatibility with outdated technology.0
-
It depends on which applications and for which operating system. Although even for android applications, ttf is more often used. For win32 applications, ttf is always used. Windows is very dependent on hinting. I worked with game developers and they always choose ttf too. otf still doesn't work well with windows, And for mobile and macos applications, it doesn’t matter ttf or otf, because of the large ppi everything looks equally good.
0 -
There are various types of apps. These days, there are mobile and desktop apps that use the system font handling, and for those an OTF or TTF is fine.
There are apps that actually use the web framework for user interfaces (e.g. the so-called Electron apps where they bundle a full copy of a Chrome-derived browser, and all user interface is done with HTML). For them, actually, WOFF2 would be the best option because it just makes the fonts smaller, and there is no difference for the app.
And finally, there are apps that for some part use a custom font engine. For example, an app may have a PDF creation module that generates some sort of reports (for example an invoice management app), or perhaps a PDF previewing module. Or these apps do something like displaying type in a 3D game or with video.
Then it’s crucial to now what the custom font engine likes. There are quite a few custom font engines that strongly prefer a particular format, often it is TTF. OTF is often avoided in these cases because the custom font engines from 10+ years ago had troubles with properly implementing all of OTF, for various technical reasons.
There are more independently-made TTF renderers in the world than there are independently-made OTF renderers. One of the reasons in the past was that the hinting behavior of TTF used to be fully specified in the format specification, while parts of the hinting behavior in OTF was only known to Adobe.
This has changed in two ways — on one hand Adobe has contributed their coffee to FreeType, on the other hand Microsoft has made proprietary changes to TTF hinting in their ClearType. So it’s largely even now, but many apps use font engines made many years ago when this wasn’t true.5 -
When I speak about custom font engines — it’s not necessarily a font engine that’s developed by the company that makes the app. It’s all down to programming languages. Writing a simple renderer for TTF that “just works” at a basic level (when you disregard variability, hinting and complex-script processing) is much easier than doing the same for OTF. And there are many programming languages out there. So if a given app (or some of its componentes) is written in JS, Java, Go, Ruby, Rust, Haskell, Lua or who-knows-what, chances are that the app develop has at their disposal some opensource library that can deal with TTFs, but not with OTFs.
It’s true that there are now more solutions, like FreeType+HarfBuzz, which are opensource and gracefully deal with both TTF and OTF (and also variability and complex-script layout) — but these solutions are tied to a particular programming language (primarily C/C++). There are ways to “bridge” them to other languages, but some app developers may prefer to use the simpler, native solutions, which, as I said, often are TTF-only.2 -
Thank you all for your insights! It seems we are talking about 3 different things: desktop apps, mobile apps and web apps (I consider these last ones as webs). I also got a reply from an app developer I collaborate with. I share his input here:
There’s no clear answer, in Unity, what we use and the most common tool for video games, both ttf and otf are compatible. If we go to Swift native programming language for iOS the same thing happens, both formats are compatible and the same for Android. In other words, in the most common tools and languages, those used by practically everyone, there is no difference.In the end, what most of these tools do is convert the otf or ttf format to their own and it is in that format and depending on each tool that it lets you do one thing or another.
2 -
María Ramos said:There’s no clear answer, in Unity, what we use and the most common tool for video games, both ttf and otf are compatible.
2 -
> none of the font software remains in the project nor is embedded in the game
This may be true if the game really bundles static assets with pre-rendered text.
However, if the game generates some text dynamically, be it from user input (like entering the gamer’s nickname, in-game chat) or even character dialogue or some descriptions if they’re generated live, then it is bundling a font.
Even if the game creates some sort of “sprite collection” (bitmap or otherwise), and composes the text dynamically from it, that thing would be considered a font derived from the original font, and this should also be considered bundling the font.
0 -
The easiest way to define what a font is is by its purpose. A digital font is a software program or digital file that serves as a tool / an apparatus to generate typographic renditions of different texts.
The typographic rendition of a given text is the output of the software program, or the result of using the tool / the apparatus. As such, it’s typically not subject to the original font’s license.
But a different tool / apparatus that mimics the function and the result of the digital font, that is can be used to generate typographic renditions of different texts, and those renditions have the same appearance as what the original font produces — that would be considered derivative work of the font, even if it’s expressed in a format different from the original. The process of creating this derivate work should be considered “conversion”, and that thing should be subject to the original font’s license.
(I’m not a lawyer, and all of my above remarks are not to be considered legal advice.)0 -
Maria,
The distinction between web apps and mobile / desktop apps is blurry.- The so-called web font formats such as WOFF2 are these days also used in desktop and mobile apps. Developers use frameworks such as Electron to build desktop or mobile apps using web technology (HTML, CSS, web fonts).
- On OSes such as modern Linux distributions, a user or an app can install a WOFF2 file in the system just as easily as a TTF or OTF, and the apps can use it.
- Many “desktop” or “mobile” apps heavily rely on server-side technology delivered “over the web”. This includes games and all sorts of document creation apps.
The distinction between mobile apps and desktop apps is also blurry:- macOS 12 on M1 Macs allows users to install any of their iOS apps also on their Macs, so any app that runs on their iPad (and I think also iPhone) can also run on their Mac.
- Many “mobile” devices like tablets can be turned into a “desktop” machine akin to a notebook or a laptop, with an extra keyboard or a mouse.
2 -
OK, @Adam Twardoch, Yes. But when I read "app embedding" that's mobile. Desktop apps don't embed fonts. They install fonts in the system. And for these cases I think they also need otf.0
-
@JoyceKetterer I don't know about Mac but if a developer needs to install a font on the system to display it in a Windows app, they probably don't know what they're doing.2
-
@Ray Larabie I admit it's been a while since I got an inquiry for desktop apps. But don't have to tell you a lot of professionals who know their core job don't know what they are doing when it comes to fonts.0
-
@JoyceKetterer I'm a non-coder so I'd appreciate if someone in-the-know could correct the following.
If you're contacted by a software developer and they think they need to install the fonts explain that they can call the font from a library without installing it. I sent an indie developer this link and they found it helpful. Does anyone know if its the same kind of deal on a Mac?0 -
Yes, pretty much every app development framework has a way to use app-bundled fonts
- https://developer.apple.com/documentation/uikit/text_display_and_fonts/adding_a_custom_font_to_your_app
- https://developer.apple.com/documentation/swiftui/applying-custom-fonts-to-text
- https://doc.qt.io/qt-5/qfontdatabase.html2 -
Adam Twardoch said:.
I'm not aware of any Linux system that allows direct installing of a WOFF2 font, let alone Windows or macOS. Do you have any more info on this?- On OSes such as modern Linux distributions, a user or an app can install a WOFF2 file in the system just as easily as a TTF or OTF, and the apps can use it.
0 -
I was wondering about this too. I don’t know anything about Linux, but the whole point of WOFF was to create a format that doesn’t work as an OS installed font. Obviously there’s no law against it, but any OS that accommodates installation and use of a WOFF font is undermining the spirit and purpose of the format.
I could say the same about using WOFF as an embedded app font, although I don’t really remember contemplating that specifically when WOFF was getting created. The real point is that the format was (among other purposes) meant to lessen the risk of posting a commercial font file on the open web — i.e. people who download it can’t use it for other things.0
Categories
- All Categories
- 43 Introductions
- 3.7K Typeface Design
- 799 Font Technology
- 1K Technique and Theory
- 617 Type Business
- 444 Type Design Critiques
- 541 Type Design Software
- 30 Punchcutting
- 136 Lettering and Calligraphy
- 83 Technique and Theory
- 53 Lettering Critiques
- 483 Typography
- 301 History of Typography
- 114 Education
- 68 Resources
- 498 Announcements
- 79 Events
- 105 Job Postings
- 148 Type Releases
- 165 Miscellaneous News
- 269 About TypeDrawers
- 53 TypeDrawers Announcements
- 116 Suggestions and Bug Reports