
Construir array de texto a partir de um array.
No dia de hoje(17/08/2022) me deparei com o seguinte problema onde recebiamos um array javascript contendo textos e cujas chaves... Leia mais
Desenvolvedor de Software
Ao trabalhar com imagens base64 no front-end, é comum precisar redimensioná-las para melhorar o desempenho da aplicação, especialmente ao enviá-las para servidores ou APIs. Neste artigo, vamos explorar como redimensionar imagens base64 com JavaScript, garantindo que sua largura não exceda 150px. A solução é desenvolvida em TypeScript para garantir maior segurança e clareza no código.
Imagens grandes em base64 podem impactar a performance de carregamento, principalmente em dispositivos móveis com conexões limitadas. Redimensionar essas imagens reduz o tamanho dos dados enviados, resultando em uma melhor experiência do usuário.
O código abaixo é uma função simples em JavaScript que redimensiona uma imagem base64 para uma largura máxima de 150px:
function resizeBase64Image(base64Image: string): Promise<string> {
return new Promise((resolve, reject) => {
const img = new Image();
img.src = base64Image;
img.onload = () => {
const canvas = document.createElement('canvas');
let width = img.width;
let height = img.height;
// Limita a largura para no máximo 150px
if (width > 150) {
height = (height * 150) / width;
width = 150;
}
canvas.width = width;
canvas.height = height;
const ctx = canvas.getContext('2d');
if (ctx) {
ctx.drawImage(img, 0, 0, width, height);
const resizedBase64 = canvas.toDataURL('image/jpeg');
resolve(resizedBase64);
} else {
reject(new Error("Erro ao obter contexto 2D"));
}
};
img.onerror = (err) => {
console.error("Erro ao carregar a imagem: ", err);
resolve('/sem_anexo.png'); // Retorna a URL de fallback em caso de erro
};
});
}
Image
: Criamos um novo objeto Image
para carregar a imagem base64.'/sem_anexo.png'
).O TypeScript garante que tipos corretos sejam usados em todos os pontos do código. Isso evita erros de execução ao garantir que estamos sempre manipulando os tipos corretos, como strings ou objetos de imagem. Além disso, o uso de promessas facilita o manuseio assíncrono.
Redimensionar imagens em base64 usando JavaScript ou TypeScript é uma tarefa simples, mas essencial para melhorar a performance de aplicações que trabalham com uploads de imagens. Este exemplo mostra como você pode adaptar o tamanho da imagem com facilidade e robustez.
Para mais detalhes, você pode conferir o artigo Resizing Base64 Images with JavaScript, que inspirou essa solução.
No dia de hoje(17/08/2022) me deparei com o seguinte problema onde recebiamos um array javascript contendo textos e cujas chaves... Leia mais
Quando você trabalha com Laravel, uma das ferramentas mais poderosas sob o capô é o Service Container. Mas o que... Leia mais
Então problemas do dia-a-dia se por alguma motivo qualquer você prefere utilizar ambientes de desenvolvimento locais ao invés de containers... Leia mais
Recursão é um conceito essencial em programação que se refere a uma função que se chama a si mesma dentro... Leia mais