Operações suportadas

Esta seção lista as operações compatíveis com a otimização de imagens do Cloud CDN. A tabela inclui parâmetros, como operação, sintaxe, atributos, descrição e exemplos, que ajudam a criar a consulta imop.

A otimização de imagens do Cloud CDN oferece suporte a um conjunto de operações que permitem transformar imagens, como redimensionar, cortar e dimensionar. Cada operação tem a própria sintaxe, atributos e restrições.

Esta página lista as operações compatíveis com a otimização de imagens do Cloud CDN com exemplos que ajudam a criar a consulta imop.

Operação Sintaxe e exemplo Atributos Descrição

Resize

?imop=Resize,width=<resized_width>,height=<resized_height>

https://www.example.com/image.jpg?imop=Resize,width=250,height=125

  • Tipo width: número inteiro (intervalo: 1 a 8192)
  • Tipo height: número inteiro (intervalo: 1 a 8192)

O width * height máximo não pode exceder 67 mpx (67.108.864 pixels).

  • Tipo de escalonamento (opcional): enum, valores: proporcional, esticar.
  • Essa operação não preserva a proporção quando você especifica os parâmetros de largura e altura. Se você omitir uma das dimensões, a otimização de imagens do Cloud CDN calculará a outra para manter a proporção.

    Por padrão, a otimização de imagens aplica uma estratégia estrita de redução de escala. A especificação do parâmetro scaling=stretch permite o aumento de escala, mas o sistema não permite isso se você especificar apenas um parâmetro de tamanho.

    Scale

    ?imop=Scale,ratio=<scale_ratio>

    https://www.example.com/image.jpg?imop=Scale,ratio=0.5

    ratio
    • Tipo: ponto flutuante (limitado a 2 casas decimais)
    • Restrição: 0 < value

    Essa operação dimensiona a imagem por um fator específico e aplica apenas a redução de escala. Mutuamente exclusivo com operações de redimensionamento e corte.

    Se você incluir a operação Scale com as operações Resize ou Crop em uma única solicitação, o sistema retornará um erro.

    Crop

    ?imop=Crop,shape=<shape>,left=<left>,right=<right>,top=<top&lgt;,bottom=<bottom>,snap_to_x=<snap_x>,snap_to_y=<snap_y>

    https://www.example.com/image.jpg?imop=Crop,shape=rectangle,left=0.5,snap_to_x=512

    shape
    • Tipo: string (retângulo, círculo)
    • Padrão: retângulo
    • Dependência: precisa ser usado com o parâmetro de corte. Um valor inválido retornará HTTP 400.
    left, right, top, bottom
    • Tipo: ponto flutuante
    • Intervalo: 0,0 a 1,0, máximo de 3 casas decimais
    • Padrão: 0,0, 1,0, 0,0, 1,0
    snap_to_x, snap_to_y
    • Tipo: número inteiro
    • Intervalo: 0 ou maior
    • Padrão: 0
    • Restrição: é obrigatório incluir pelo menos um dos seguintes: esquerda, direita, parte de cima, parte de baixo.

    Essa operação corta a imagem com base em marcadores regionais. Se você especificar um valor inválido para o parâmetro shape, o sistema retornará um HTTP 400 Bad Request.

    As coordenadas de corte são alinhadas automaticamente para o múltiplo mais próximo do valor snap_to_x ou snap_to_y especificado.

    Canvas

    ?imop=Canvas,width=<canvas_width>,height=<canva_height>,background_color=<color>,gravity=<gravity>

    https://www.example.com/image.jpg?imop=Canvas,width=250,height=125,background_color=FFF,gravity=center

    width, height
    • Tipo: número inteiro
    • Intervalo: 1 a 8192
    • A largura máxima x altura não pode exceder 67.108.864 pixels.
    gravity
    • Tipo: string
    • Valores: center, left, right, top, bottom, top_left, top_right, bottom_left, bottom_right
    • Padrão: center
    background_color
    • Tipo: string
    • Formato: códigos hexadecimais de 3, 4 ou 6 dígitos
    • Padrão: 000000 (preto).

    Essa operação melhora as imagens adicionando um layout de plano de fundo de dimensões e cores especificadas. O parâmetro gravity determina o posicionamento da imagem interna na tela de fundo.

    Rotate

    ?imop=Rotate,degrees=<rotate_degrees>

    https://www.example.com/image.jpg?imop=Rotate,degrees=90

    degrees
    • Tipo: número inteiro
    • Valores permitidos: 90, 180, 270.

    Essa operação gira a imagem de destino no sentido horário.

    Mirror

    ?imop=Mirror,flip=<flip>

    https://www.example.com/image.jpg?imop=Mirror,flip=h

    flip
    • Tipo: string
    • Valores permitidos: h (horizontal), v (vertical), hv (horizontal e vertical).

    Essa operação espelha a imagem horizontalmente, verticalmente ou ambas.

    Compress

    ?imop=Compress,strength=<value>

    https://www.example.com/image.jpg?imop=Compress,strength=medium

    strength
    • Tipo: string
    • Valores permitidos: very_weak, weak, medium, strong, very_strong.
    • Restrição: compatível apenas com jpeg, avif e webp. Valores fora desse intervalo retornam HTTP 400.

    Essa operação comprime a imagem diminuindo a qualidade da imagem de destino. O parâmetro strength permite controlar o nível de compressão de imagem ativa.

    Convert

    ?imop=Convert,format=<format>

    https://www.example.com/image.jpg?imop=Convert,format=webp

    format
    • Tipo: string.
    • Valores permitidos: jpeg, png, webp, avif, gif
    • Restrição: qualquer outro valor não listado resultará em um erro de processamento.

    Essa operação muda o formato de entrega final da imagem. Se houver um conflito de processamento com a especificação do cabeçalho ACCEPT recebido do navegador, o sistema retornará um erro HTTP 406 Not Acceptable.

    Metadata

    ?imop=Metadata,preserve=<preserve>

    https://www.example.com/image.jpg?imop=Metadata,preserve=none

    preserve
    • Tipo: string
    • Valores permitidos: none, copyright, max
    • Padrão: copyright

    Essa operação controla como as propriedades de metadados de imagem são processadas durante a execução:

    none: remove todas as propriedades de metadados.

    max: preserva todos os campos exceto a orientação EXIF e os perfis de cores que são aplicados na transformação

    .

    copyright: mantém apenas os campos Author, Copyright, e Caption.

    Tone

    ?imop=tone,brightness=<brightness>,contrast=<contrast_level>, saturation=<saturation>

    https://www.example.com/image.jpg?imop=tone,brightness=50,contrast=50,saturation=50

    • brightness
      • Tipo: número inteiro
      • Intervalo: -100 a 100
    • contrast
      • Tipo: número inteiro
      • Intervalo: -100 a 100
    • saturation
      • Tipo: número inteiro
      • Intervalo: -100 a 100

    Essa operação modifica dinamicamente os brightness, contrast, e saturation níveis de uma imagem. Se você omitir um parâmetro específico ou definir como 0, o sistema não mudará esse atributo. Definir a saturação como -100 força a conversão em escala de cinza.

    Sharpen

    ?imop=Sharpen,strength=<sharpness>

    https://www.example.com/image.jpg?imop=Sharpen,strength=50

    strength
    • Tipo: número inteiro
    • Intervalo: 0 a 100

    Essa operação aumenta a nitidez da imagem.

    Blur

    ?imop=Blur,strength=<blur_size>

    https://www.example.com/image.jpg?imop=Blur,strength=50

    strength
    • Tipo: número inteiro
    • Intervalo: 0 a 100

    Essa operação aplica um filtro de desfoque localizado na imagem.

    Freeze

    ?imop=freeze,frame=<frame>

    https://www.example.com/image.gif?imop=freeze,frame=0

    frame
    • Tipo: número inteiro
    • Intervalo: 0 a 100.

    Essa operação extrai um único frame estático de uma sequência de imagens animadas , como um GIF animado. O parâmetro de frame especifica o índice de frame exato a ser extraído.

    A seguir