2016-07-22 2 views
0

Можно ли загрузить изображение с URL-адреса и физически изменить размер изображения с помощью jquery без использования скрипта на стороне сервера? Я сделал много поиска, но не нашел решения.Можем ли мы изменить размер изображения с помощью jquery?

+0

Что означает «физически» изменение размера изображения? Где вы ожидаете выхода такого процесса на экран, в локальный файл или обратно на сервер? – nnnnnn

+2

Возможный дубликат [JQuery resizing image] (http://stackoverflow.com/questions/1143517/jquery-resizing-image) – abhishek

+1

«физически» изменение размера означает, что я хочу загрузить изображение локально и хочу создать новое изображение с меньшим размер. например, если у меня есть изображение загрузки размером 1 МБ, то я хочу уменьшить его размер до 200 КБ. –

ответ

1

Если вам нужно скачать вы можете использовать холст, как этот

HTML

<canvas id="c" width="200" height="150"></canvas> 
<a id="download">Download as image</a> 

Javascript

// Grab the Canvas and Drawing Context 
var canvas = document.getElementById('c'); 
var ctx = canvas.getContext('2d'); 
// Create an image element 
var img = document.createElement('IMG'); 
// Specify the src to load the image 
img.setAttribute('crossOrigin', 'anonymous'); 
img.src = "http://i.imgur.com/adB2oag.png"; 
// When the image is loaded, draw it 
img.onload = function() { 
    ctx.drawImage(img, 0, 0, img.width, img.height, 0, 0, canvas.width, canvas.height); 
} 

function downloadCanvas(link, canvasId, filename) { 
    link.href = document.getElementById(canvasId).toDataURL(); 
    link.download = filename; 
} 

document.getElementById('download').addEventListener('click', function() { 
    downloadCanvas(this, 'c', 'test.png'); 
}, false); 

положить изображение на холст и размер изображения, как вам нравится, и скачать холст как image

вы можете попробовать из этого jsFiddle

Смежные вопросы