Formato de fonte web aberta (.woff)

Recomendação Padrão

O Web Open Font Format (WOFF) é o formato histórico de fonte web aberta de primeira geração endossado pela W3C, encapsulando fontes padrão TrueType ou OpenType com compactação zlib e metadados de licenciamento XML.

Inspecionar e metadados

Sistemas operacionais e analisadores de arquivos identificam arquivos WOFF inspecionando a sequência de bytes binários inicial:

Selecione ou solte os arquivos aqui

Conversão 100% privada no navegador - os arquivos nunca saem do seu dispositivo

ou colar Ctrl+V
Garantia de Privacidade com Zero Transmissão de Rede: 0 bytes enviados para servidores externos. Todo o processamento ocorreu localmente no sandbox do seu navegador.

Assinatura de Cabeçalho em Nível de Byte (Magic Bytes)

Sistemas operacionais e analisadores de arquivos identificam arquivos WOFF inspecionando a sequência de bytes binários inicial:

ASSINATURA HEX (OFFSET 0):

77 4F 46 46

REPRESENTAÇÃO ASCII: wOFF

Padronização: Recomendação W3C (2012)

Especificações Técnicas

Arquitetura do ContêinerCabeçalho WOFF de 44 bytes seguido pelo diretório de tabelas, dados de tabela compactados com zlib, metadados estendidos opcionais e dados privados
CompressãoCompressão Deflate (zlib) aplicada a cada tabela de fontes individual
Ordem de Bytes (Endianness)Big-Endian (padrão SFNT)
Espaços de CoresHerdado das tabelas de fontes subjacentes
Canais e EstruturaContornos de glifos TrueType ('glyf') ou PostScript ('CFF '), métricas e recursos tipográficos
Dimensões MáximasAté 65.535 glifos por arquivo de fonte
TransparênciaHerdado do formato de fonte subjacente
Streaming e ProgressivoA descompressão tabela por tabela permite o carregamento de fontes em fluxo (streaming)

Matriz de Comparação Técnica: WOFF vs Concorrentes

Atributo TécnicoWOFF (Atual)WOFF2TTFOTF
Codec de CompressãoDeflate (zlib) por tabelaBrotli com pré-processamento de tabelaSFNT não compactadoSFNT não compactado
Assinatura MágicawOFF (0x77 0x4F 0x46 0x46)wOF2 (0x77 0x4F 0x46 0x32)0x00 0x01 0x00 0x00OTTO (0x4F 0x54 0x54 0x4F)
Tamanho Relativo do Arquivo~40% menor que o TTF~60% menor que o TTFPadrão de referência (100%)Padrão de referência (100%)
Ambiente de DestinoNavegadores web legados (IE9+, Safari 5+)Navegadores web modernos (Universal)Sistemas operacionais de desktopEditoração eletrônica e impressão

Modos Comuns de Corrupção e Guia de Recuperação Hex

Aviso no console do navegador: 'Failed to decode downloaded font: OTS parsing error'.

Causa Raiz: Incompatibilidade no comprimento declarado da tabela não compactada ou fluxo zlib danificado.

Recuperação: Recomprima as tabelas de fontes ou converta para WOFF2 usando o conversor de fontes do File2File.

Análise de Segurança e Vetores de Ataque ao Analisador

Os navegadores web analisam arquivos WOFF baixados de domínios web não confiáveis usando o OpenType Sanitizer (OTS) para bloquear cargas úteis de exploração.

Vetores de Ataque Conhecidos

  • Leitura excessiva de buffer (over-read) durante a descompressão zlib de pedaços corrompidos da tabela de fontes.
  • Campos de comprimento de tabela incompatíveis acionando estouros de buffer de heap em renderizadores de fontes.
  • Negação de serviço por esgotamento de memória durante a expansão da tabela de fontes.

Melhores Práticas Defensivas: Sempre sanitize arquivos WOFF baixados com o OTS antes de passá-los para os mecanismos de fontes do sistema operacional.

Origens Históricas e Marcos

2018Substituído pelo WOFF2 como o padrão de fontes web preferido devido à compressão Brotli superior.
2012A W3C publica oficialmente o WOFF 1.0 como uma Recomendação de Padrão Web formal.
2009Henrik Rydgård, Tal Leming e Jonathan Kew especificam o WOFF para resolver questões de licenciamento de fontes web.

Principais Vantagens e Prós

  • Reduz o tamanho dos arquivos de fontes web em 30% a 50% em comparação com arquivos TTF ou OTF brutos e não compactados.
  • Compatibilidade retroativa universal em todos os navegadores web de desktop e dispositivos móveis lançados desde 2011.
  • Inclui um bloco de metadados XML opcional para licenciamento de fontes, créditos de autoria e informações de direitos autorais da fundição.

Limitações Técnicas e Contras

  • Substituído pelo WOFF2, que compacta cerca de 30% a mais usando o algoritmo Brotli.
  • Não pode ser instalado diretamente em sistemas operacionais de desktop (Windows/Mac) sem conversão para TTF/OTF.
  • O algoritmo de compressão zlib mais antigo é menos eficiente do que os codificadores de entropia modernos.

Curiosidades Técnicas

  • Os magic bytes para o WOFF 1.0 são 'wOFF' (0x77 0x4F 0x46 0x46), enquanto o WOFF 2.0 usa 'wOF2'.
  • As fundições de tipos concordaram em permitir suas fontes na web somente após a criação do WOFF, porque seu contêiner especializado distinguiu as fontes web das fontes de desktop pirateáveis.
  • O WOFF foi implementado originalmente no Firefox 3.6 em 2010 antes de se tornar uma recomendação oficial da W3C.

Perguntas Técnicas Frequentes

Qual é a diferença entre WOFF e WOFF2?

O WOFF usa compressão zlib, enquanto o WOFF2 usa o algoritmo Brotli mais recente do Google e transformações de tabela, resultando em arquivos que são cerca de 30% menores que o WOFF.

Como posso converter uma fonte WOFF para TTF ou OTF para uso no desktop?

Você pode converter arquivos WOFF em fontes de desktop instaláveis TTF ou OTF em segundos usando o File2File.app diretamente no seu navegador web.

Eu ainda preciso do WOFF 1.0 em sites modernos?

Não. Todos os navegadores modernos suportam WOFF2 nativamente. O WOFF 1.0 só é necessário se você precisar dar suporte a navegadores legados obsoletos como o Internet Explorer.