O que são BOMs UTF-8?
O termo BOM (Byte Order Mark) refere-se a uma sequência invisível de bytes adicionada automaticamente por alguns editores de texto no início de arquivos salvos em formato UTF-8. Embora sirva para indicar a codificação do arquivo, no PHP esse pequeno marcador é interpretado como saída de dados — mesmo antes de qualquer comando ser executado. Isso significa que, se um arquivo PHP contiver um BOM, o PHP já terá enviado conteúdo ao navegador antes que o TCPDF tente gerar os cabeçalhos do PDF, provocando o erro. Para evitar isso, recomenda-se salvar todos os arquivos PHP em UTF-8 sem BOM, opção disponível na maioria dos editores, como VS Code, Sublime Text ou Notepad++.