c# - 将 Canvas 转换为图像并保存到光盘

原文 标签 c# javascript jquery html canvas

已经有很多类似的问题,但由于某种原因,它们并没有解决我的问题。

我的项目是保存一个动态创建的页面(或页面的一部分)。用户可以选择在屏幕上拖动对象并以任何顺序保留它们,然后将该顺序作为图像保存到光盘中。

我自己的研究表明我可以使用 Draggable from JQuery这很容易实现。这是我被卡住的储蓄部分。

我关注了几个links ,但图像似乎没有保存到光盘,我认为它在 IE 中不起作用!但是,我对 FireFox 很满意,因此使用 toDataUrl() 听起来是最好的方法。

由于我无法让它工作,我决定稍微改变策略并将值传递给后面的代码(C#)

我的代码的保存部分看起来像

<script>
    function SaveMe() {
        var canvas = document.getElementById("mycanvas");
        var image = canvas.toDataUrl();
        document.getElementById("hideMe").value = image;
    }
</script>

当我在 FireBug 中调试时,我从未到达 document.getElementById("hideMe").value = image; .我一步一步过去,但永远无法通过var image = canvas.toDataUrl();这是我假设的预期行为,但没有错误消息吗?

我的 HTML 正文是
<body>
    <script type="text/javascript">
        $(document).ready(function () {
            $('.popup_click').show(0).draggable();    
        });    
    </script>

    <form id="form1" runat="server">

        <div class="popup_click">
            <div id="popup_title">Title</div>
        </div>

        <canvas id="mycanvas" class="canvas"></canvas>

        <asp:HiddenField ID="hideMe" runat="server" />
        <asp:Button runat="server" OnClick="ClickMe" text="Click" OnClientClick="SaveMe()"/>

    </form>
</body>

我究竟做错了什么?我在 Debug模式下本地工作,Visual Studio 2013。

最佳答案

不确定,但我过去也遇到过 todataurl() 的问题,这个链接帮助了我

Not able to get data url when using images in kinetic js

关于c# - 将 Canvas 转换为图像并保存到光盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19428957/

相关文章:

javascript - 从嵌套数组中获取一行,将值插入输入然后 setTimeout 更改为下一个数组?

javascript - 渲染多个 EmberJS View 时断言失败

javascript - JQuery-UI 日期选择器不起作用

jquery - 我怎样才能做到这个jQuery同步提交?

jquery - rails 和 jquery 可排序

c# - 将位图转换为OpenCvSharp IplImage

c# - 可以将(Surface)UserControl旋转180度吗?

c# - 为什么我从我的 C# 代码中得到 "The name Regex does not exist in the current context"?

jquery - 使用 jQuery.attr() 设置属性时,浏览器不会从 css 更新样式

c# - OrmLite 的 SQL Server 特定类型支持