API JavaScript para cortar imagens
Biblioteca JavaScript de código aberto que dá suporte ao corte de aplicativos JavaScript.
Cropper é uma biblioteca JavaScript de código aberto que permite cortar imagens em seu navegador. Usando a API, você pode adicionar recursos de corte aprimorados ao seu aplicativo com 27 métodos diferentes, 39 opções diferentes e 6 eventos. Usando a API, você pode facilmente trabalhar e recortar suas imagens em seu navegador.
Esta biblioteca oferece suporte a uma ampla variedade de recursos de corte. Ele suporta o corte de imagens via tela sensível ao toque, zoom, rotação, dimensionamento e inversão, usando vários cortadores, permite cortar imagens na tela, permite cortar imagens na tela do navegador com suporte a vários navegadores.
Introdução ao Cropper
A maneira recomendada de instalar o cropper via NPM. Por favor, use o seguinte comando para instalá-lo.
Instale o cortador via NPM
npm install cropperjs
Cortar imagens dentro de aplicativos JavaScript
A biblioteca Cropper oferece aos programadores de software a capacidade de cortar programaticamente suas imagens usando JavaScript. Para cortar uma imagem, você precisa carregar a imagem e garantir que o tamanho da imagem se ajuste perfeitamente ao contêiner. Depois de ter sua imagem pronta, você pode executar um conjunto de recursos de corte nas coordenadas x e y fornecidas, incluindo rotação, inversão, dimensionamento e configuração de altura e largura conforme sua necessidade. .
Cortar imagem e salvar através JavaScript API
// vars
let result = document.querySelector('.result'),
img_result = document.querySelector('.img-result'),
img_w = document.querySelector('.img-w'),
img_h = document.querySelector('.img-h'),
options = document.querySelector('.options'),
save = document.querySelector('.save'),
cropped = document.querySelector('.cropped'),
dwn = document.querySelector('.download'),
upload = document.querySelector('#file-input'),
cropper = '';
// on change show image with crop options
upload.addEventListener('change', e => {
if (e.target.files.length) {
// start file reader
const reader = new FileReader();
reader.onload = e => {
if (e.target.result) {
// create new image
let img = document.createElement('img');
img.id = 'image';
img.src = e.target.result;
// clean result before
result.innerHTML = '';
// append new image
result.appendChild(img);
// show save btn and options
save.classList.remove('hide');
options.classList.remove('hide');
// init cropper
cropper = new Cropper(img);
}
};
reader.readAsDataURL(e.target.files[0]);
}
});
// save on click
save.addEventListener('click', e => {
e.preventDefault();
let imgSrc = cropper.getCroppedCanvas({
width: img_w.value // input value
}).toDataURL();
cropped.classList.remove('hide');
img_result.classList.remove('hide');
cropped.src = imgSrc;
dwn.classList.remove('hide');
dwn.download = 'imagename.png';
dwn.setAttribute('href', imgSrc);
});
Cortar imagens no navegador usando JavaScript
Você pode adicionar a funcionalidade de corte de imagens em seus aplicativos e os usuários podem cortar imagens diretamente do navegador. Os usuários podem carregar ou arrastar e soltar imagens no navegador e aplicar recursos de corte a elas. A API oferece compatibilidade entre navegadores. A API funciona bem usando a versão mais recente do Chrome, Firefox, Safari, Opera, Edge e Internet Explorer.
Crop Images Online por JavaScript
//instantiate Cropper
var cropper = canvas.cropper({
aspectRatio: 16 / 9
});
//Crop Image
$('#btnCrop').click(function() {
// Get a string base 64 data url
var croppedImageDataURL = canvas.cropper('getCroppedCanvas').toDataURL("image/png");
$result.append( $('').attr('src', croppedImageDataURL) );
});
Usando métodos de corte em JavaScript
Para fornecer flexibilidade, a API fornece vários métodos para cortar imagens. Esses métodos ajudam o desenvolvedor a adicionar recursos de corte de imagem ao aplicativo com facilidade. A API fornece o método crop() para cortar a imagem. Além disso, você pode usar reset(), clear(), replace(), enable(), disable(), destroy(), move(), zoom(), rotate(), scale(), getData(), setData (), getCanvasData() e mais.
Ampliar lona para o através de JavaScript
cropper.zoomTo(1); // 1:1 (canvasData.width === canvasData.naturalWidth)
const containerData = cropper.getContainerData();
// Zoom to 50% from the center of the container.
cropper.zoomTo(.5, {
x: containerData.width / 2,
y: containerData.height / 2,
});