O parâmetro Cor do plano de fundo na API aberta do Dynamic Media não se aplica conforme esperado

Se você estiver usando o parâmetro background-color na API do Dynamic Media Open e a cor não for exibida, o problema ocorre porque o parâmetro se aplica somente quando a imagem original tem transparência e é entregue em um formato sem suporte a transparência, como o JPG. Para resolver isso, solicite a imagem no formato JPG e desative a formatação automática.

Descrição description

Ambiente

  • Produto: Experience Manager Assets - API aberta do Dynamic Media
  • Versão/restrições: aplicável ao fornecer ativos com transparência usando o parâmetro background-color.

Problema/Sintomas

O parâmetro background-color parece não se aplicar quando solicitado por meio da API de entrega. Isso pode resultar em:

  • Áreas transparentes permanecem inalteradas quando a imagem é entregue.
  • Confusão sobre se o parâmetro é funcional.

Por exemplo, se você solicitar uma imagem PNG com transparência e incluir background-color=rgb,00ff00, a imagem ainda exibirá a transparência em vez da cor especificada. Isso dificulta obter uma cor de fundo sólida para ativos destinados a formatos como o JPG.

Resolução resolution

Para fazer o parâmetro background-color funcionar conforme esperado na API aberta do Dynamic Media:

  1. Solicite o ativo em um formato incompatível com a transparência, como o JPG.

    O PNG oferece suporte à transparência, de modo que a cor do plano de fundo não será aplicada se a imagem for entregue como PNG.

  2. Desabilite a formatação automática adicionando auto-format=false à cadeia de caracteres de consulta.

    A formatação automática pode substituir o formato escolhido e impedir a aplicação do parâmetro.

  3. Especifique a cor do plano de fundo usando os valores de RGB na solicitação.

    Exemplo: background-color=rgb,00ff00 preenche áreas transparentes com verde brilhante.

Amostras de URLs

Esta é uma imagem em uma ocorrência de teste que tem um canal alfa para transparência:

https://{delivery-instance}/adobe/assets/urn:aaid:aem:{asset-id}/as/Backpack_vert.png?width=1024&quality=65

Para aplicar a cor do plano de fundo, solicite a imagem no formato JPG e desative a formatação automática:

https://{delivery-instance}/adobe/assets/urn:aaid:aem:{asset-id}/as/Backpack_vert.jpg?auto-format=false&width=1024&quality=65&background-color=rgb,00ff00

Exemplo de chamada de API

Você pode fazer essa solicitação usando uma chamada HTTP GET padrão:

GET https://{delivery-instance}/adobe/assets/urn:aaid:aem:{asset-id}/as/Backpack_vert.jpg?auto-format=false&width=1024&quality=65&background-color=rgb,00ff00

Ou use curl:

curl "https://{delivery-instance}/adobe/assets/urn:aaid:aem:{asset-id}/as/Backpack_vert.jpg?auto-format=false&width=1024&quality=65&background-color=rgb,00ff00"

Explicação:

  • auto-format=false garante que a API respeite sua escolha de formato.
  • background-color=rgb,00ff00 substitui transparência por verde.
  • A imagem original deve ter transparência para que isso entre em vigor.
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f