Gerador de Data URI
Um data URI incorpora o conteúdo do arquivo diretamente em um atributo HTML ou propriedade CSS, substituindo uma URL externa pelos dados do arquivo em si. Esta ferramenta gera data URIs a partir de qualquer arquivo lendo localmente, detectando seu tipo MIME e codificando o conteúdo como Base64.
Como Usar
- Solte um arquivo na área de upload ou clique para navegar
- A ferramenta detecta o tipo MIME e codifica o arquivo
- O formato de saída “Data URI” está selecionado por padrão
- Copie o data URI completo
Sintaxe do Data URI
Todo data URI segue esta estrutura:
data:[<mediatype>][;base64],<data>
- mediatype: O tipo MIME (ex.:
image/png,application/pdf,audio/mpeg). Padrão étext/plain;charset=US-ASCIIse omitido. - ;base64: Indica que os dados estão codificados em Base64. Sem isso, os dados são texto codificado em URL.
- data: O conteúdo real, codificado em Base64 (para binário) ou URL (para texto).
Exemplos:
data:image/png;base64,iVBORw0KGgoAAAANSU...
data:text/html,%3Chtml%3E%3Cbody%3EOl%C3%A1%3C/body%3E%3C/html%3E
data:text/plain;charset=utf-8,Ol%C3%A1%20Mundo
Onde Data URIs Funcionam
Tags img HTML
<img src="data:image/png;base64,iVBORw0KGgo..." alt="Imagem inline" />
Fundos CSS
.icon {
background-image: url(data:image/svg+xml;base64,PHN2Zy...);
}
Downloads de link HTML
<a href="data:application/pdf;base64,JVBERi..." download="documento.pdf">
Baixar PDF
</a>
Favicons
<link rel="icon" href="data:image/svg+xml;base64,PHN2Zy..." />
Iframês
<iframe src="data:text/html;base64,PCFET0NUWVBF..." width="100%" height="400"></iframe>
JavaScript
const audio = new Audio('data:audio/mpeg;base64,SUQz...');
const img = new Image();
img.src = 'data:image/png;base64,iVBOR...';
Data URIs vs URLs Externas
| Aspecto | Data URI | URL Externa |
|---|---|---|
| Requisições HTTP | Nenhuma | Uma por recursó |
| Cache | Não pode cachear independentemente | Cacheada pelo navegador |
| Sobrecarga de tamanho | +33% (Base64) | Nenhuma |
| Primeiro carregamento | Mais rápido para arquivos pequenos | Mais rápido para arquivos grandes |
| Visitas repetidas | Baixado novamente com o pai | Servido do cache |
| Compatibilidade CSP | Requer fonte data: | Funciona por padrão |
| Eficiência Gzip | Ruim (alta entropia) | Boa (binário bruto) |
Diretrizes Práticas de Tamanho
| Tipo de recursó | Máx. recomendado para data URI |
|---|---|
| Favicon | 10 KB |
| Ícone / sprite CSS | 5 KB |
| Imagem pequena de UI | 10 KB |
| Subconjunto de fonte | 20 KB |
| Clip de áudio | 100 KB |
| Qualquer outro arquivo | 10 KB |
Acima desses limites, arquivos separados com cache HTTP oferecem melhor desempenho.
Para tipos de arquivo específicos, veja Imagem para Base64, PDF para Base64, Áudio para Base64 ou o gerador de CSS Background Image.