Comprimir Imagem
Função que comprime e reduz o tamanho da imagem passada por parâmetro.
Parâmetros de Entrada
Parâmetros | Nome | Tipo | Doc |
---|
Parâmetro 1 | Imagem | Objeto | Campo destinado a receber a imagem que será redimensionada. |
Parâmetro 2 | Qualidade (0 até 100) | Numérico | Campo destinado para informar o grau de qualidade da imagem |
Retorno
Retorna uma imagem (em bytes) com o tamanho reduzido.
Compatibilidade
Servidor
Exemplo
Para este exemplo, faremos uma cópia da imagem original, com o objetivo de comparar o arquivo antes e depois da execução da função.
Figura 1 - Função para comprimir uma imagem
- Criação da variável "origem", responsável por obter o caminho da imagem original.
- Criação da variável "destino", responsável por indicar o caminho e o nome do novo arquivo comprimido.
- A variável refArquivoOrigem recebe o bloco de programação Abrir arquivo para leitura, cujo valor recebido é a variável "origem".
- Qualquer tipo de manipulação de imagem é feita através dos bytes da imagem, por isso criamos a variável bytesImg, recebendo o bloco de programação Ler todo o conteúdo do arquivo em bytes, ele é responsável por transformar o conteúdo da variável refArquivoOrigem, que consta o caminho da imagem. em bytes.
- Para manipular a imagem utilizamos o bloco de programação Comprimir Imagem, o primeiro parâmetro recebe a variável bytesImg, e no segundo indicamos quantos por cento queremos comprimir o arquivo.
- Nesse ponto não precisamos mais mexer o arquivo original, por isso podemos utilizar o bloco de programação Fechar o arquivo, passando como referência a variável refArquivoOrigem.
- Utilizamos a variável refArquivoDestino juntamente com o bloco Abrir arquivo para escrita, que recebe a variável "destino", com o caminho do novo arquivo comprimido e passamos o valor "null" em seu conteúdo.
- Agora alimentamos o arquivo criado no passo 7 com o array de byte da imagem, variável "bytesImg".
- Após a escrita do novo arquivo, podemos fechar o arquivo de destino.
- E por fim, faremos o download do arquivo comprimido, através do bloco de programação Iniciar download do arquivo físico.
Figura 2 - Tamanho da imagem original à esquerda, e imagem comprimida à direita