"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso exibir imagens binárias diretamente em um único script sem salvá-las em disco?

Como posso exibir imagens binárias diretamente em um único script sem salvá-las em disco?

Publicado em 2024-11-22
Navegar:899

How can I display binary images directly in a single script without saving them to disk?

Exibir imagens binárias em um único script

Problema:

As imagens podem ser recriadas e exibidas diretamente de dados binários em o mesmo roteiro? Isso envolve processar os dados com GD ou ferramentas semelhantes antes de exibi-los em uma tag de imagem HTML. O objetivo é evitar salvar as imagens processadas em disco ou usar scripts externos.

Solução:

Isso pode ser alcançado usando URIs de dados no atributo de origem da imagem. O formato do URI de dados é:

data:[][;charset=""][;base64],

Esta função PHP cria um URI de dados de um arquivo:

function data_uri($file, $mime) 
{  
  $contents = file_get_contents($file);
  $base64   = base64_encode($contents); 
  return ('data:' . $mime . ';base64,' . $base64);
}

O código a seguir exibe uma imagem usando um URI de dados:

echo 'An elephant';

Uso:

Para exibir dados de imagem binária processados, você pode usar a função data_uri e gerar o URI resultante como a fonte da imagem assim:

$imagedata1 = file_get_contents('assets/test.png');
$imagedata1 = process_using_gd_or_something($imagedata1);

echo 'Como posso exibir imagens binárias diretamente em um único script sem salvá-las em disco?';

Este código exibirá a imagem processada diretamente do os dados binários sem usar scripts externos ou armazenamento em disco.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3