Skip to content
Back to Blog
format-comparisons

TTF vs. OTF vs. WOFF2: Comparativo de Formatos de Fonte

2026-05-17 9 min read

Uma Breve História Desses Três Formatos

O TrueType (TTF) surgiu em 1989 de um esforço conjunto entre a Apple e a Microsoft. O objetivo delas era dar aos sistemas operacionais controle direto sobre a renderização de fontes, eliminando a dependência do licenciamento PostScript da Adobe. Um arquivo TTF armazena os contornos dos glifos como curvas de Bézier quadráticas e agrupa tudo — métricas, instruções de hinting, tabelas de kerning — em um único binário. Durante a maior parte dos anos 90, ele foi o rei indiscutível das fontes de desktop tanto no Windows quanto no macOS. Depois veio o OpenType (OTF) em 1996, desenvolvido pela Microsoft e logo acompanhado pela Adobe. Em vez de começar do zero, o OpenType estendeu de forma inteligente o contêiner TrueType. Um arquivo OTF pode usar tanto as curvas quadráticas do TrueType quanto as curvas cúbicas PostScript da Adobe (contornos CFF), e é por isso que você vê o termo 'OTF baseado em CFF'. Mais importante, o formato introduziu um poderoso conjunto de tabelas de layout — GSUB e GPOS — que habilitam recursos como ligaduras, versaletes (small caps), swashes e alternativas contextuais. Um OTF sofisticado para um script complexo como o árabe pode conter milhares de regras de substituição de glifos. O WOFF2 (Web Open Font Format 2) joga um jogo completamente diferente. Ratificado como uma Recomendação do W3C em 2018, não é um novo formato de contorno, mas sim um invólucro de compressão supereficiente. Ele pega um TTF ou OTF existente, aplica a compressão Brotli e uma etapa especial de pré-processamento específica para fontes, e gera um arquivo que é frequentemente 30–50% menor. O WOFF2 foi construído exclusivamente para entrega na web. Os navegadores o descomprimem em tempo real, então ele nunca chega a ver o gerenciador de fontes do seu sistema operacional. Entender essa distinção — formato de contorno versus formato de entrega — é a chave para saber como usá-los.

Tamanho de Arquivo e Compressão: Os Números que Realmente Importam

O tamanho bruto do arquivo afeta o que mais importa: tempos de carregamento de página, tamanhos de pacotes de aplicativos e custos de banda de CDN. Vejamos alguns números concretos. Uma fonte latina moderadamente complexa como a Source Sans Pro Regular pesa cerca de 260 KB como TTF. A versão OTF, usando contornos CFF mais eficientes, fica em torno de 155 KB. Isso ocorre porque as curvas cúbicas do CFF muitas vezes conseguem descrever formas com menos pontos do que as curvas quadráticas do TrueType, fazendo com que os OTFs baseados em CFF sejam de 20 a 40% menores para scripts latinos. Agora, converta essa mesma fonte para WOFF2 e você terá um arquivo de aproximadamente 75 KB. É uma redução massiva de 71% em relação ao TTF original. Com uma fonte CJK (chinês, japonês, coreano), a história muda. Um TTF CJK de cobertura completa como a Noto Sans CJK SC pode ultrapassar os 20 MB. A compressão WOFF2 ajuda, talvez reduzindo para 13–15 MB, mas não é uma solução mágica. A verdadeira solução para fontes enormes é o subsetting (criação de subconjuntos), que é um processo separado da simples conversão de formato. O WOFF2 sozinho não vai salvar uma fonte com 65.000 glifos. Quanto ao WOFF (versão 1), ele é basicamente uma peça de museu. Usava compressão zlib e foi totalmente substituído pelo WOFF2. De acordo com o caniuse.com, o suporte ao WOFF2 atingiu mais de 97% dos usuários globais já em 2024, cobrindo todos os navegadores modernos com os quais você se importa. Os únicos resistentes são navegadores embarcados antigos ou quiosques que ainda rodam o Internet Explorer 11. Para qualquer projeto web novo, o WOFF2 não é apenas a melhor escolha; é a única sensata.

Recursos OpenType: Onde o OTF Realmente Supera o TTF

A diferença técnica mais importante entre um bom OTF e um TTF é o acesso a recursos avançados de layout OpenType. Embora ambos os tipos de arquivo possam tecnicamente conter as tabelas necessárias GSUB (Glyph Substitution) e GPOS (Glyph Positioning), as fundições de tipos profissionais quase exclusivamente incorporam seus ricos conjuntos de recursos em seus lançamentos OTF. No mundo real, as melhores funcionalidades estão no OTF. O que esses recursos realmente fazem? As ligaduras substituem sequências comuns como 'fi' e 'fl' por um único glifo perfeitamente desenhado, evitando colisões. As ligaduras discricionárias vão além, combinando artisticamente pares como 'ct' ou 'Th' para um toque caligráfico. Os versaletes (small caps) substituem as maiúsculas de altura total por versões menores e oticamente ajustadas — são glifos redesenhados, não apenas letras reduzidas. Os numerais de estilo antigo (oldstyle figures) oferecem números com ascendentes e descendentes, permitindo que se misturem lindamente em uma linha de texto. Um único arquivo OTF para uma fonte como a Minion Pro pode conter mais de 1.700 glifos e dezenas desses recursos, marcados como 'onum', 'smcp', 'calt', 'swsh' e 'hist'. No CSS, você os ativa com `font-feature-settings: 'onum' 1;` ou `font-variant-numeric: oldstyle-nums;`. No Adobe InDesign, você os encontrará em Type > OpenType. Até o Microsoft Word 365 tem algum suporte na caixa de diálogo de fontes avançadas, embora seja menos abrangente que as ferramentas da Adobe. Um arquivo TTF sem essas tabelas não oferece nada disso, não importa a aplicação. Se o seu design depende de versaletes adequados, alternativas contextuais ou da formatação complexa necessária para scripts como árabe ou devanágari, o OTF não é apenas uma preferência. É um requisito.

Hinting e Renderização: Contextos de Desktop vs. Tela

O hinting de fonte é um conjunto de instruções dentro de um arquivo de fonte que ajusta os contornos dos glifos para que pareçam nítidos em tamanhos pequenos nas telas. Qualquer um que já forçou a vista para ler um texto borrado de 12px conhece o sofrimento de uma má renderização; o hinting é a cura. Sem ele, a haste vertical de um 'n' minúsculo pode ter um pixel de largura enquanto a outra tem dois, criando uma aparência feia e irregular. Um bom hinting alinha esses traços à grade de pixels. As fontes TTF são famosas por seu hinting TrueType manual, uma linguagem de bytecode complexa que dá aos designers controle granular sobre cada pixel. É um trabalho brutalmente intensivo — uma fonte totalmente 'hintada' à mão como a Arial representa centenas de horas. A recompensa era enorme nos sistemas Windows mais antigos que usavam o renderizador GDI. As fontes OTF baseadas em CFF usam um hinting PostScript mais simples. No macOS, que há muito tempo usa um renderizador que ignora amplamente o hinting, essa diferença é irrelevante. No Windows, o renderizador ClearType (padrão desde o Vista) diminuiu consideravelmente a diferença. E em telas de alta DPI — basicamente qualquer celular moderno ou tela "Retina" — o hinting se torna quase irrelevante. Os pixels são simplesmente pequenos demais para que esses problemas de alinhamento à grade apareçam. O WOFF2 não muda a história do hinting; ele apenas preserva os dados de hinting da fonte original que comprimiu. Se você converter um TTF bem 'hintado', essas dicas vêm junto. A lição prática? Se seus usuários principais estão em monitores Windows não-HD e você está exibindo texto com menos de 16px, um TTF 'hintado' à mão ainda tem uma vantagem visível. Para uso na web em hardware moderno, a diferença é quase impossível de notar.

Quando Usar Cada Formato: Um Guia Prático de Decisão

Para instalação no desktop — no seu sistema operacional, aplicativos de design ou pacote de escritório — você precisa de TTF ou OTF. Tanto o Windows quanto o macOS suportam ambos nativamente, assim como as distribuições Linux. A decisão se resume às suas necessidades. Se você é um designer que precisa de ligaduras, swashes e outros recursos tipográficos avançados no InDesign, você quer o OTF. Se você é um administrador de TI implantando uma fonte corporativa em uma frota de máquinas Windows, um TTF 'hintado' é muitas vezes a escolha mais segura e compatível. Para entrega na web é simples: WOFF2. Fim de papo. Sua declaração `@font-face` no CSS deve sempre listar o WOFF2 primeiro: `src: url('font.woff2') format('woff2'), url('font.woff') format('woff');`. Servir um arquivo TTF ou OTF bruto pela web é um crime de performance. Você está forçando os usuários a baixar 2 a 3 vezes mais dados do que o necessário. Se você vir um tema legado referenciando um .ttf em sua folha de estilo, trocá-lo por um WOFF2 é um ganho de performance rápido e fácil. Aplicativos móveis são um contexto diferente. Tanto o iOS quanto o Android usam nativamente arquivos TTF e OTF empacotados dentro do aplicativo; nenhum usa WOFF2 para esse fim, pois é um formato de entrega exclusivo para navegadores. Aplicativos Flutter empacotam TTF ou OTF no diretório de assets e os declaram no `pubspec.yaml`, e o React Native segue um padrão semelhante. Os motores de jogos têm suas próprias preferências. O TextMeshPro da Unity trabalha com OTF e TTF para gerar seus assets de fonte. O importador da Unreal Engine prefere TTF. Nenhum deles importará um arquivo WOFF2 diretamente, então se é só isso que você tem, precisará convertê-lo de volta para TTF ou OTF primeiro.

Convertendo Entre Formatos com o CocoConvert

Precisa alternar entre esses formatos? O CocoConvert lida com os caminhos de conversão mais críticos: TTF para WOFF2, OTF para WOFF2, WOFF2 para TTF e até OTF para TTF. Nosso processo é alimentado pelo `fonttools`, a mesma biblioteca Python padrão da indústria usada pelo Google Fonts. Isso garante que seus arquivos convertidos estejam em conformidade com os padrões e que as tabelas OpenType como GSUB, GPOS, registros de nome e dados de hinting sejam preservados. Para criar uma fonte pronta para a web, basta enviar seu arquivo .ttf em nossa página de conversão de fontes, escolher WOFF2 como saída e clicar em Converter. Uma fonte latina típica é processada em segundos. O arquivo WOFF2 resultante mantém todas as métricas e recursos de layout do original, sem nada removido por padrão. Claro, o CocoConvert não faz tudo. Ele não realiza subsetting. Se você converter uma fonte CJK de 20 MB, obterá um WOFF2 comprimido de 13 MB, não um arquivo enxuto de 50 KB contendo apenas os caracteres que você precisa. Para isso, você precisará de uma ferramenta dedicada como o `pyftsubset`. O CocoConvert também não altera os metadados de licenciamento. Se a flag de incorporação de uma fonte (fsType) a restringe para uso na web, essa flag permanece no arquivo convertido. Lembre-se: converter uma fonte não altera sua licença. Se você não tem os direitos para usar uma fonte na web, convertê-la para WOFF2 não a tornará legal. Converter WOFF2 de volta para TTF é incrivelmente útil quando você encontra uma fonte da web e precisa instalá-la para uso no desktop. A descompressão é sem perdas (lossless), o que significa que o TTF resultante tem dados de contorno que são idênticos byte a byte ao original. A conversão reverte de forma limpa quaisquer otimizações específicas do WOFF2, dando a você um arquivo de desktop perfeitamente utilizável.

Resumo: Escolhendo o Formato Certo Sem Complicação

Vamos direto ao ponto. Esses três formatos não são alternativas intercambiáveis. São ferramentas diferentes para trabalhos diferentes. O TTF é o adaptador universal. Toda plataforma que lida com fontes pode manipular um TTF. É a escolha certa quando você precisa de máxima compatibilidade, está mirando em ambientes Windows antigos onde seu hinting específico brilha, ou quando uma ferramenta como um motor de jogo o exige. Sua principal fraqueza é um tamanho de arquivo maior em comparação com os OTFs baseados em CFF e uma típica falta de recursos tipográficos avançados. O OTF é a escolha do profissional para trabalho de desktop. Quando uma fundição de tipos vende uma fonte para design sério, a versão que você quer é a OTF. Ele contém o conjunto completo de recursos OpenType, seus contornos CFF são compactos e todo aplicativo de design moderno o suporta. Sua única desvantagem real é que ele é muito inchado para entrega na web. Servir um OTF bruto via HTTP é um desperdício de banda. O WOFF2 é para uma única coisa: a web. Não é um novo tipo de fonte, apenas uma fonte existente brilhantemente comprimida para navegadores. Use WOFF2 em suas regras `@font-face`. Sempre. Mantenha o TTF ou OTF original como seu arquivo fonte, mas trate o WOFF2 como um ativo descartável e otimizado para entrega. Aqui está o fluxo de trabalho simples para qualquer novo projeto: obtenha uma fonte OTF de qualidade de uma fundição. Use o CocoConvert para criar uma versão WOFF2 para o seu site. Mantenha o OTF original para qualquer trabalho de impressão ou design. E se algum dia você se encontrar apenas com um arquivo WOFF2 e precisar dele no seu desktop, converta-o de volta para TTF. É simples assim.