- A ferramenta de composição de documentos Typst 0.14 foi lançada, trazendo recursos importantes como suporte básico a acessibilidade, tratamento de imagens em PDF e justificação em nível de caractere
- Esta versão ajuda no cumprimento de regulamentações de acessibilidade com suporte ao padrão PDF/UA-1 e adiciona a capacidade de inserir PDFs diretamente como imagem
- O recurso de justificação em nível de caractere (character-level justification) permite compor parágrafos visualmente mais equilibrados
- A exportação para HTML foi aprimorada, convertendo vários elementos do documento em HTML semântico e introduzindo também uma API HTML tipada
- Esta atualização fortalece a geração automatizada de documentos e a adequação a regulamentações de acessibilidade no ambiente industrial, ampliando bastante o escopo de uso prático do Typst
Visão geral do Typst 0.14
- O Typst começou no meio acadêmico, mas recentemente se expandiu também para ambientes industriais, com criação manual de documentos, relatórios automáticos e pipelines de geração em massa de PDFs
- A versão 0.14 inclui em grande quantidade recursos essenciais para esse uso industrial
- Houve melhorias voltadas a ambientes de produção, como acessibilidade, padrões PDF, justificação em nível de caractere e exportação para HTML
- A atualização pode ser feita facilmente tanto no app web quanto na CLI, e também há um guia de migração para a nova versão
Acessibilidade (Accessibility)
- O Typst 0.14 agora gera automaticamente, por padrão, PDFs com tags de acessibilidade (tagged PDF), permitindo que tecnologias assistivas como leitores de tela reconheçam a estrutura do documento
- Ao usar a marcação e os elementos integrados, as tags apropriadas são atribuídas automaticamente
- Com o novo parâmetro
alt, agora é possível fornecer descrições alternativas (alt text) para formas ou figuras
- No código de exemplo, é adicionada uma descrição alternativa a um diagrama composto por dois retângulos e uma seta, para que usuários com deficiência visual também possam perceber a mesma informação
- A exportação em PDF/UA-1 permite automatizar a validação de acessibilidade do documento
- Ela detecta problemas como ausência de título do documento, hierarquia incorreta de títulos e falta de descrições alternativas
- O PDF/UA-1 dá suporte à conformidade com regulamentações internacionais de acessibilidade, como o European Accessibility Act (EAA) da UE e o ADA Title II dos EUA
- Na UE, a aplicação começa em 28 de junho de 2025; nos EUA, em 24 de abril de 2026
- Para empresas que lidam com documentos voltados a clientes ou ao governo, a adoção do Typst 0.14 é recomendada
Expansão do suporte a padrões PDF
- Antes limitado ao PDF 1.7, agora é possível escolher versões de PDF 1.4 até 2.0
- O padrão PDF/A também foi ampliado: em vez de apenas dois subpadrões, agora há suporte a todas as 4 partes e níveis de conformidade
- Ao selecionar um padrão específico, é possível otimizar a compatibilidade, preservação e adequação regulatória dos documentos
- Mais detalhes podem ser consultados na seção de referência de padrões PDF da documentação do Typst
Uso de PDF como imagem
- O Typst 0.14 oferece suporte nativo a PDF como formato de imagem
- Na exportação para PDF, ele é incluído como está; na exportação para HTML/SVG, é convertido para SVG; em PNG ou pré-visualização web, passa por rasterização
- Todo o processo de conversão é realizado dentro do compilador do Typst, sem dependências de sistemas externos
- Esse recurso foi viabilizado pela nova biblioteca de processamento de PDF escrita em Rust,
hayro
hayro é uma biblioteca inteiramente em Rust, desenvolvida pelo colaborador da comunidade Typst @LaurenzV, oferecendo alta portabilidade e desempenho
Justificação em nível de caractere (Character-level Justification)
- Foi introduzido um recurso que ajusta não apenas o espaçamento entre palavras, mas também entre caracteres, para melhorar o equilíbrio visual dos parágrafos
- A maioria dos softwares existentes ajusta apenas o espaçamento entre palavras, mas o Typst permite um controle mais refinado até o nível dos caracteres
- No futuro, também devem ser explorados ajustes de largura com fontes variáveis (variable fonts) e a inserção de Kashida no árabe, entre outros
- O Typst usa o mesmo algoritmo básico do LaTeX, mas adiciona a justificação em nível de caractere, inexistente no LaTeX
- O uso excessivo pode soar pouco natural, mas com limites adequados e combinação de algoritmos é possível melhorar sutilmente a qualidade tipográfica
- Como resultado, ele produz um cinza tipográfico (grayness) mais equilibrado nos parágrafos, oferecendo qualidade de composição em nível de publicação profissional
Exportação para HTML aprimorada
- A exportação para HTML, introduzida experimentalmente no Typst 0.13, foi amplamente aprimorada no 0.14
- Foram adicionados mapeamentos semânticos para HTML (show rules) para vários elementos embutidos, como notas de rodapé, sumário e citações
- Com melhorias no processamento de texto, a maioria dos elementos da categoria Model agora é convertida corretamente para HTML
- Foi introduzida uma nova interface Typed HTML
- Agora é possível definir atributos com segurança de tipos, como em
#html.video(autoplay: true, width: 1280, …)
- Isso é mais seguro e intuitivo do que o método anterior baseado em strings com
html.elem
- A exportação para HTML ainda é um recurso experimental e, na CLI, deve ser ativada com a opção
--features html ou com a variável de ambiente TYPST_FEATURES=html
- No app web, também é necessário ativá-la individualmente por projeto
- No futuro, o app web do Typst também deverá oferecer suporte oficial à exportação para HTML
Migração para o Typst 0.14
- Esta versão é uma atualização estável com quase nenhuma mudança incompatível
- Algumas validações ficaram mais rígidas, de modo que rótulos, URLs de links e listas de fontes não podem estar vazios
- Principais mudanças
pdf.embed → substituído por pdf.attach
- Renomeação de dois estilos de bibliografia
- A flag
--make-deps da CLI foi substituída por --deps --deps-format make
- Alguns símbolos foram descontinuados, e o compilador exibe avisos automaticamente
- No app web, a experiência de upgrade de versão foi melhorada
- Antes, a versão mais recente era sempre usada; agora, ao detectar uma nova versão, o sistema sugere automaticamente o upgrade e executa verificações de compatibilidade
- Após compilar com a nova versão, erros e avisos são comparados e o resultado é exibido
Comunidade e planos futuros
- O Typst 0.14 é o resultado de 8 meses de desenvolvimento e colaboração com a comunidade
- Para comemorar o lançamento, está prevista uma chamada da comunidade no Discord em 7 de novembro
- O objetivo é compartilhar experiências de uso e coletar feedback
- A equipe do Typst pretende continuar avançando em melhorias na exportação para HTML, reforço de acessibilidade e aperfeiçoamento da qualidade tipográfica
1 comentários
Comentários no Hacker News
Há uma confusão frequente sobre o Typst, então vale esclarecer antes
O editor online (typst.app) é software comercial, enquanto o compilador/CLI (github.com/typst/typst) é open source
Usei apenas a CLI, mas fiquei muito satisfeito com o resultado. Comecei pensando nele como substituto do PowerPoint, mas ele também serve muito bem para pôsteres e documentos simples. Gosto do fato de não precisar me preocupar em esquecer uma sintaxe complexa como no LaTeX; é uma sintaxe fácil de retomar
A combinação TinyMist + VS Code ofereceu uma experiência de desenvolvimento excelente. Em um dia consegui até ajustar o template, algo que no LaTeX sempre foi um pesadelo
Página oficial do TinyMist
Resumindo o que senti toda vez que usei Typst
Estou especialmente animado com os PDFs acessíveis e a exportação para HTML no Typst 0.14
Muita gente também usa interfaces web como o Overleaf. Então, entre as vantagens do Typst, o que mais me chama atenção mesmo são a velocidade de compilação e a qualidade dos diagnósticos
O Pandoc tem bom suporte a Typst, então converter para docx ou epub também é fácil. As issues relacionadas também foram resolvidas rapidamente
É impressionante poder converter PDF em SVG e renderizar direto em HTML, PNG e pré-visualização web
Todo esse processamento de PDF está embutido no compilador do Typst, graças à biblioteca hayro, totalmente implementada em Rust
Link do GitHub, página de demonstração
Mesmo sem usar Typst diretamente, penso em apoiá-lo por assinatura
Como alguém que ama e odeia o LaTeX ao mesmo tempo, fico feliz em ver surgir uma alternativa. Gosto especialmente do foco em microtipografia
Se surgisse um sistema de recompensas para suporte a HTML, eu apoiaria ainda mais
O Typst foi construído com base nessa experiência e entrega um binário limpo de 45 MB.
É uma ótima ferramenta que lida diretamente com JSON e CSV e permite criar livros, folhetos e até cartões
O motivo de a academia não conseguir abandonar o LaTeX é Beamer, TikZ e Overleaf
O Beamer oferece muitos estilos e fontes, e o TikZ permite desenhar formas sem GUI.
O Overleaf é excelente para colaboração e ainda é melhor que o Typst Cloud. Espero que um dia o Typst chegue a esse nível
Também vale considerar adotar controle de versão
Ainda não chega ao nível do Beamer, mas o typst-presentate também é bem utilizável
Tema Touying Unistra Pristine
Existem várias alternativas ao TikZ, mas ainda nenhuma perfeita
Reescrevi completamente em Typst meu currículo em .docx, que eu mantinha havia mais de 10 anos
Separei experiência e estilo em arquivos de dados TOML, criando uma estrutura que preenche automaticamente o template que eu quiser.
Foi um projeto exagerado, mas muito divertido, e a sintaxe do Typst é intuitiva, então consegui fazer sem tutorial
Minha maior reclamação com o Typst é que ele ainda não suporta separadores decimais por localidade
Veja esta issue.
Se a formatação numérica por idioma não for resolvida logo, isso pode causar conflitos de sintaxe no futuro.
Ainda assim, no geral estou muito satisfeito com o Typst, porque ele é rápido e simples
Poder usar PDF como formato de imagem nativo é um grande avanço para substituir o LaTeX
Obrigado à equipe do Typst. No começo fiz meu currículo em Typst para aprender Git,
e algum dia quero criar um documento de palavras cruzadas com Typst. Ainda não sei como deixar as células da tabela quadradas, mas pretendo descobrir
Antes eu fazia documentação de modelos financeiros com GitHub/Azure Markdown + Mermaid + MathJax, mas isso foi ficando difícil à medida que a complexidade aumentava
Agora uso Typst, e por ser um compilador baseado em Rust, a instalação é fácil e não há envio externo de dados por motivos de segurança.
O projeto parece moderno a ponto de dar para sentir os 40 anos de diferença