Spaces:
Running
Running
Upload mask.html
Browse files
mask.html
CHANGED
@@ -291,6 +291,68 @@ window.onload = function() {
|
|
291 |
tempContext.putImageData(imageData, 0, 0);
|
292 |
return tempCanvas.toDataURL();
|
293 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
294 |
function handleFile(file) {
|
295 |
var reader = new FileReader();
|
296 |
reader.onload = function(event) {
|
@@ -317,6 +379,7 @@ window.onload = function() {
|
|
317 |
}
|
318 |
reader.readAsDataURL(file);
|
319 |
}
|
|
|
320 |
// 上传图片
|
321 |
document.getElementById("upload").addEventListener('change', function(e) {
|
322 |
var file = e.target.files[0];
|
@@ -627,13 +690,15 @@ window.onload = function() {
|
|
627 |
showCircle(x + window.scrollX, y + window.scrollY, scaleX);
|
628 |
}
|
629 |
}
|
630 |
-
|
631 |
-
|
632 |
// 初始化圆圈大小
|
633 |
setCircleSize(brushSize);
|
634 |
hideCircle();
|
635 |
// 设置事件监听
|
636 |
//setEventListeners();
|
|
|
|
|
|
|
|
|
637 |
}
|
638 |
</script>
|
639 |
</body>
|
|
|
291 |
tempContext.putImageData(imageData, 0, 0);
|
292 |
return tempCanvas.toDataURL();
|
293 |
}
|
294 |
+
function getQueryParameter(name) {
|
295 |
+
const urlParams = new URLSearchParams(window.location.search);
|
296 |
+
return urlParams.get(name);
|
297 |
+
}
|
298 |
+
|
299 |
+
async function loadImageFromUrl(imageUrl) {
|
300 |
+
image.setAttribute('crossOrigin', 'anonymous');
|
301 |
+
image.onload = function() {
|
302 |
+
var resizedImage = new Image();
|
303 |
+
resizedImage.onload = _ok;
|
304 |
+
function _ok(event){
|
305 |
+
image = resizedImage;
|
306 |
+
canvas.width = resizedImage.width;
|
307 |
+
canvas.height = resizedImage.height;
|
308 |
+
maskData = createMaskImageData(image.width,image.height);
|
309 |
+
imageMask.src = getImageDataUrl(maskData);
|
310 |
+
drawImagesTimeOut(100);
|
311 |
+
}
|
312 |
+
if (!resizeImage(image,512,resizedImage)) {
|
313 |
+
canvas.width = image.width;
|
314 |
+
canvas.height = image.height;
|
315 |
+
maskData = createMaskImageData(image.width,image.height);
|
316 |
+
imageMask.src = getImageDataUrl(maskData);
|
317 |
+
drawImagesTimeOut(100);
|
318 |
+
}
|
319 |
+
}
|
320 |
+
image.src = imageUrl;
|
321 |
+
}
|
322 |
+
/*
|
323 |
+
|
324 |
+
function handleImageLoad(image) {
|
325 |
+
var resizedImage = new Image();
|
326 |
+
resizedImage.onload = function() {
|
327 |
+
image = resizedImage;
|
328 |
+
canvas.width = resizedImage.width;
|
329 |
+
canvas.height = resizedImage.height;
|
330 |
+
maskData = createMaskImageData(image.width, image.height);
|
331 |
+
imageMask.src = getImageDataUrl(maskData);
|
332 |
+
drawImagesTimeOut(100);
|
333 |
+
}
|
334 |
+
|
335 |
+
if (!resizeImage(image, 512, resizedImage)) {
|
336 |
+
canvas.width = image.width;
|
337 |
+
canvas.height = image.height;
|
338 |
+
maskData = createMaskImageData(image.width, image.height);
|
339 |
+
imageMask.src = getImageDataUrl(maskData);
|
340 |
+
drawImagesTimeOut(100);
|
341 |
+
}
|
342 |
+
}
|
343 |
+
// 监听文件选择
|
344 |
+
function handleFile(file) {
|
345 |
+
var reader = new FileReader();
|
346 |
+
reader.onload = function(event) {
|
347 |
+
var image = new Image();
|
348 |
+
image.onload = function() {
|
349 |
+
handleImageLoad(image);
|
350 |
+
}
|
351 |
+
image.src = event.target.result;
|
352 |
+
}
|
353 |
+
reader.readAsDataURL(file);
|
354 |
+
}
|
355 |
+
*/
|
356 |
function handleFile(file) {
|
357 |
var reader = new FileReader();
|
358 |
reader.onload = function(event) {
|
|
|
379 |
}
|
380 |
reader.readAsDataURL(file);
|
381 |
}
|
382 |
+
|
383 |
// 上传图片
|
384 |
document.getElementById("upload").addEventListener('change', function(e) {
|
385 |
var file = e.target.files[0];
|
|
|
690 |
showCircle(x + window.scrollX, y + window.scrollY, scaleX);
|
691 |
}
|
692 |
}
|
|
|
|
|
693 |
// 初始化圆圈大小
|
694 |
setCircleSize(brushSize);
|
695 |
hideCircle();
|
696 |
// 设置事件监听
|
697 |
//setEventListeners();
|
698 |
+
const imageUrl = getQueryParameter('imageUrl');
|
699 |
+
if (imageUrl) {
|
700 |
+
loadImageFromUrl(imageUrl);
|
701 |
+
}
|
702 |
}
|
703 |
</script>
|
704 |
</body>
|