Você está aqui:
Dynamic Imaging Service
O Dynamic Imaging Service do B2C Commerce elimina a necessidade de carregar imagens de tamanhos diferentes para atender aos requisitos da sua vitrine. Depois de carregar uma imagem de origem de alta resolução, o Dynamic Imaging formata o tamanho correto para cada aplicativo de imagem — página de produto, página de catálogo, produtos recomendados, resultados de pesquisa e assim por diante. Aplique parâmetros para controlar o tamanho da imagem, corte, sobreposição, formato, cor de plano de fundo e configurações de qualidade.
Qual produto do Salesforce Commerce eu tenho?
Por exemplo, você tem uma vitrine com um catálogo de produtos de 100.000 itens. Seu web design suporta imagens de até 150x150 pixels e exibe quatro imagens por linha dos resultados da pesquisa de um cliente. Seu web designer cria um layout diferente e, agora, uma pesquisa de produto exibe apenas três imagens de 250x250 pixels por linha. Em vez de carregar as imagens redimensionadas, o Dynamic Imaging Service redimensiona as existentes.
Criar URLs de transformação de imagem
As classes URLUtils e MediaFile geram dinamicamente vários recursos de imagem a partir de uma única imagem de alta resolução. Um URL de transformação de imagem identifica o recurso armazenável em cache e especifica como transformá-lo.
Use essas classes porque a API valida os parâmetros de transformação e protege você de alterações futuras no padrão de URL básico. Se você codificar o URL, ele poderá parar de funcionar se um padrão for alterado.
O literal de objeto JavaScript contém parâmetros de transformação. Cada método retorna um URL derivado de seus parâmetros de transformação. Se você não passar parâmetros para o Dynamic Imaging Service, a imagem passa em sua configuração original.
Exemplo: O parâmetro de URL cy substitui o parâmetro de transformação cropY.
A classe URLUtils inclui esses métodos para gerar URLs de transformação de imagem.
public URL imageURL( String path, Object transform );
public URL imageURL( String context, String contextID, String relPath, Object transform );
public URL absImage( String path, Object transform );
public URL absImage( String context, String contextID, String relPath, Object transform );
URL pública httpImage( String path, Object transform );
URL pública httpImage( String context, String contextID, String relPath, Object transform );
URL pública httpsImage( String path, Object transform );
URL pública httpsImage( String context, String contextID, String relPath, Object transform );
A classe MediaFile inclui esses métodos para gerar URLs de transformação de imagem.
public URL getURL( Object transform );
URL pública getAbsURL( Object transform );
public URL getHttpURL( Object transform );
public URL getHttpsURL( Object transform );
Transformações suportadas
| Tipo | Parâmetros de objeto de transformação (parâmetros de URL entre colchetes) | Descrição |
|---|---|---|
| Escala |
scaleWidth (sw), scaleHeight (sh), scaleMode (sm)
|
Os parâmetros Use O parâmetro padrão para scaleMode é Se você definir |
| Sobreposição |
imageX (ox), imageY (oy), imageURI (oimg)
|
Os parâmetros Os formatos suportados são GIF, PNG, JPG, JP2. Como um GIF animado pode causar artefatos de quadro, mantenha a proporção de um GIF animado. Defina o parâmetro O caminho deve oferecer suporte a parâmetros de cadeia de caracteres de consulta que oferecem suporte ao serviço. Use uma imagem transformada para a imagem sobreposta. Se a imagem sobreposta se estender além dos limites da imagem primária, o Dynamic Imaging corta a imagem sobreposta para corresponder às dimensões da imagem primária. O valor de sobreposição ( |
| Cultura |
cropX (cx), cropY (cy), cropWidth (cw), cropHeight (ch)
|
Os parâmetros Os valores para O valor para |
| Formato |
Formato (
|
O parâmetro de transformação de formato especifica o formato de destino da imagem. Os formatos de destino suportados são AVIF, gif, jp2, jpg, jpeg, jxr, png e WebP. O caminho do URL gerado usa a extensão de arquivo do formato de destino. Se você não especificar um formato de destino, a conversão não será executada. O parâmetro Forneça o formato de origem no parâmetro |
| Qualidade |
qualidade (q)
|
O parâmetro de qualidade especifica uma configuração de qualidade para imagens JPG e JP2 e o nível de compactação para imagens PNG. Para imagens JPG e JP2, defina valores de 1 a 100 para a mais alta qualidade. O padrão é 80. Omita o valor para manter o padrão. Para imagens PNG, a configuração de qualidade não tem efeito sobre a aparência do PNG porque a compactação é sempre sem perdas. Em vez disso, use a configuração de qualidade para definir o nível de compactação zlib e o tipo de filtro como um número de dois dígitos. O primeiro dígito define o nível de compressão zlib (1-9). O segundo dígito define o tipo de filtro. Se a configuração PNG não for fornecida ou estiver definida como 0, o valor padrão será 75. Se essa configuração estiver definida como 100 (um número de três dígitos), na verdade será igual à configuração de qualidade 90. |
| Metadados |
Tira
|
O parâmetro strip especifica se metadados devem ser removidos, como EXIF e perfis de cor, da imagem durante a transformação. Os valores válidos são |
| Fundo |
Bgcolor
|
O parâmetro Por exemplo, FF0000 = Vermelho; FF000077 = Vermelho com 50% de transparência. Se o valor alfa for omitido, a cor resultante será opaca. Passar explicitamente 00 como o valor alfa alcança o mesmo resultado. Os valores alfa são válidos somente quando o formato de saída da imagem é PNG. |
Exemplos de chamadas
Esta chamada para URLUtils.imageURL( String path, Object transform ):
URLUtils.imageURL( '/<static image path>/image.png', { scaleWidth: 100, format: 'jpg' } );
Retorna o URL de transformação da imagem.
http://< Nome> do host do servidor de imagens/dw/image/v2/.../on/demandware.static/.../<Caminho> da imagem estática/image.jpg?sw=100&sfrm=png
Esta chamada para MediaFile.getAbsImageURL( Object transform ):
product.image.getAbsImageURL( { scaleWidth: 100 } );
Retorna o URL de transformação da imagem.
http://< Nome> do host do servidor de imagens/dw/image/v2/.../on/demandware.static/.../<Caminho para a imagem> do produto/FG45SDAF.jpg?sw=100
Diretrizes de imagem
- Tamanho do arquivo: Imagens com mais de 6 MB não são transformadas e são servidas em sua configuração original. A primeira solicitação para uma imagem superdimensionada retorna um erro, mas as solicitações subsequentes retornam as imagens em sua configuração original.
- Dimensões: O tamanho máximo transformável é de 3.000 x 3.000 pixels.
- Tempo limite: Se uma transformação não for concluída em 29 segundos, o serviço retornará o erro 408. Evite transformações caras, como o upsizing de GIFs animados.
- Bloqueio do navegador: Em ambientes que não são de produção, o Firefox Tracking Protection bloqueia transformações pela primeira vez em algumas circunstâncias. Para evitar esse bloqueio, defina Proteção contra rastreamento como Nunca durante o teste.
Cache dinâmico de imagens
O Dynamic Imaging Service usa cache para exibir imagens para navegadores e aplicativos.
- Instâncias da Rede de Distribuição de Conteúdo (CDN): As imagens são armazenadas em cache até que uma invalidação de cache seja solicitada. Os novos ativos de imagem recebem um identificador de cache exclusivo e não exigem invalidação explícita de cache.
- Instâncias não-CDN: O Dynamic Imaging Service revalida as imagens após 10 minutos.
Consulte também:
Para obter mais ajuda sobre URLs de transformação de imagem, formatos modernos, o projeto da comunidade e solução de problemas, consulte Tópicos Dynamic Imaging Service relacionados .

