¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Como codificar uma imagem em base64 e exibi-la em um contêiner HTML

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 26 Vistas
0
Cargando...
Hoje me deparei com um relatório antigo de teste onde tentei exibir uma imagem codificada em base64 em um contêiner.

É assim que parece




É assim que funciona


A codificação BASE64 é um método para armazenar dados binários com caracteres ASCII legíveis independentes da página de códigos. Caracteres legíveis podem ser armazenados em um relatório ABAP, o que torna possível armazenar uma imagem em um código-fonte.

Para codificar uma imagem em BASE64, você precisará de um conversor. Existem muitos conversores online disponíveis, por exemplo, este: https://www.base64encode.net/base64-image-encoder

Para a demonstração, usei uma imagem muito pequena. Encontrei uma no jogo de simulação de corrida retro Excel de 8 bits de marco.krapf na última Copa Corona Galoppsim . Se você ainda não conhece Galoppsim.racing, recomendo visitar https://galoppsim.racing/ o mais rápido possível,

Escolhi Rennpony como candidato adequado para minha demonstração. Mesmo que os gráficos maravilhosos estejam em modo 8 bits, ainda tive que convertê-los para um tamanho muito pequeno. A imagem exibida tem um tamanho de 21x19 pixels.

Então, enviei a pequena imagem para o site de codificação base64 e obtive a seguinte string:
R0lGODlhFQATADMAACH5BAAAAAAALAAAAAAVABMAg////19qcHaPjo6ij5XL/p3Mx6rR3
qTS+LPUksPessjcysvl+ufbrvrclPfv1Or0+wSMEMg5F1mY6g0eztzmNA3TKEu4LYaptI
2jShbBMIahlDNwXCwDYcdQeQ6HwEDxOyiKmyNhKhj8pobYBjkl6K5TokZRKBe+3enhRnE
g3u/EbwH2aiWJfB6hfjzAa3d6ewYHDzRpWQ0SCoMJBoc0gCYOMo15hho1aiaLAAqgkRR/
aYE9iKVQPZtppwCsXREAOw==

Esta string precisa ser decodificada em um xstring.

O xstring precisa ser convertido em uma tabela de xstring.

Essa tabela de xstring pode ser passada para o módulo de função DP_CREATE_URL, que retorna um ponteiro (url) para esses bytes. Em seguida, pode ser usado no controle CL_GUI_PICTURE para exibir os dados.

O código


REPORT.

CLASS demo DEFINITION.
  PUBLIC SECTION.
    TYPES _url TYPE c LENGTH 200.
    TYPES: BEGIN OF _graphic_row,
             line(255) TYPE x,
           END OF _graphic_row,
           _graphic_tab TYPE STANDARD TABLE OF _graphic_row WITH DEFAULT KEY.
    METHODS show.
  PRIVATE SECTION.
    METHODS get_image_url
      RETURNING
        VALUE(url) TYPE url.
    METHODS convert_xstring_to_table
      RETURNING
        VALUE(graphic_tab) TYPE _graphic_tab.
  ENDCLASS.
CLASS demo IMPLEMENTATION.
  METHOD get_image_url.
    RETURN VALUE url.
  ENDMETHOD.
  METHOD convert_xstring_to_table.
    RETURN VALUE graphic_tab.
  ENDMETHOD.
ENDCLASS.
Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

Sin respuestas

No hay respuestas para mostrar No hay respuestas para mostrar Se el primero en responder

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?