【问题标题】:kinetics user upload an image动力学用户上传图片
【发布时间】:2014-04-19 09:51:12
【问题描述】:

我有一个带有文本输入和“onLoad”图像 (Yoda) 的 kineticjs 框。我需要实现这个“imageLoader”(Fiddle

我从我拼凑的画布上得到了这个,但无法将它融入我的新动力学Fiddle

function loadThisImage(src) {
    img = new Image();
    img.onload = function () {
        draw(img, true, false);
    };
    img.src = src;
    img.view = {
        left: 42,
        top: 20,
        width: 160,
        height: 120,
        z: 0
    };
}


var ctx = canvas.getContext('2d');


function draw(img, withAnchors, withBorders) {
    // clear the canvas
    ctx.clearRect(0, 0, canvas.width, canvas.height);
    // draw the image
    var view = img.view;
    ctx.drawImage(img, 0, 0, img.width, img.height, view.left, view.top, view.width, view.height);

    // optionally draw the draggable anchors
    if (withAnchors) {
        drawDragAnchor(view.left, view.top);
        drawDragAnchor(view.left + view.width, view.top);
        drawDragAnchor(view.left + view.width, view.top + view.height);
        drawDragAnchor(view.left, view.top + view.height);
    }

如果有人可以帮助我将“上传图片”放到我的动力学中,我将不胜感激。 在此先感谢:)

【问题讨论】:

    标签: javascript html kineticjs


    【解决方案1】:

    只需调整“imageLoader”小提琴中的代码以创建新的 Kinetic.Image 并将其添加到图层,而不是直接绘制到画布上下文。

    //image loader
    var imageLoader = document.getElementById('imageLoader');
        imageLoader.addEventListener('change', handleImage, false);
    
    function handleImage(e){
        var reader = new FileReader();
        reader.onload = function(event){
            var img = new Image();
            img.onload = function(){
                layer.add(new Kinetic.Image({
                    x: 200,
                    y: 50,
                    image: img,
                    width: img.width,
                    height: img.height,
                    draggable: true
                }));
                text.moveToTop();
                layer.draw();
            }
            img.src = event.target.result;
        }
        reader.readAsDataURL(e.target.files[0]);     
    }
    

    小提琴:http://jsfiddle.net/pDW34/14/

    【讨论】:

    • 哇,我绞尽脑汁尝试这样做......一定错过了什么。非常感谢您的帮助! :)
    • 知道如何在文本后面加载图像吗?
    猜你喜欢
    • 2017-02-07
    • 1970-01-01
    • 1970-01-01
    • 2021-07-02
    • 2018-07-11
    • 2019-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多