我需要jSignature的帮助。我能够创建一个图像,然后将该图像写回页面。我不能工作的地方(这也是我研究这个插件的初衷)是把图片从页面中导出出来。我想将图像数据通过电子邮件发送出去,这样图像就会显示在电子邮件的正文中。如果我尝试了很多方法,但都没有奏效。目前我的js是这样的:
var $sigDiv = $("#signature").jSignature();
$('<input type="button" value="Reset">').bind('click', function(e){
$sigDiv.jSignature('reset');
}).appendTo($sigDiv);在提交表单时,它看起来如下所示:
var datapair = $sigDiv.jSignature("getData", "svg");
var i = new Image();
i.src = "data:" + datapair[0] + "," + datapair[1];
$(i).appendTo($("#success"));我尝试在一个变量中获取图像数据,并通过AJAX将其作为数据字符串发送到PHP邮件处理表单,如下所示:
<img src="<?php echo $_POST['signature']; ?>"/>或者这样:
<object src="<?php echo $_POST['signature']; ?>"></object>我已经精疲力竭地试图让它在发出的电子邮件中显示图像。任何帮助都是非常感谢的。
发布于 2012-08-18 00:18:48
太好了!让它起作用了。如果我导出为图像并对图像执行encodeURIComponent(图像),AJAX调用不会弄乱图像数据。现在就像野兽一样工作。谢谢你的帮助艾比德。
发布于 2012-08-17 23:51:14
我不确定,但是你看下面的url,我想这对你很有帮助。
https://github.com/brinley/jSignature/
演示url ;-
http://willowsystems.github.com/jSignature/#/demo/
jSignature是一个jQuery插件,它简化了浏览器窗口中签名捕获字段的创建,允许用户使用鼠标、笔或手指绘制签名。
jSignature将签名捕获为笔画的矢量轮廓。虽然jSignature也可以导出很好的位图(PNG),但提取签名的高度可伸缩的笔画移动坐标(又称矢量图像)可以使签名渲染具有更大的灵活性。
一个额外的努力(通过平滑和压力模拟)是为了使笔画在屏幕上看起来很漂亮,而这些笔画是由签名者绘制的。
支持所有主要的台式机、平板电脑和手机浏览器。默认情况下使用HTML5画布元素。当浏览器(Iinternet Explorerv.8及更低版本)不支持实际的画布时,我们会求助于基于闪存的画布元素模拟器(FlashCanvas)。
实时jSignature仅呈现与我们捕获的内容相对应的设备“最漂亮”的近似内容。数据的捕获总是相同的-我们捕获尽可能多的移动坐标。笔画的渲染因浏览器的功能、设备的效率、屏幕大小而异。
对捕获的签名的屏幕表示的这种降级和增强是为了确保呈现不会阻碍捕获的响应性。例如,在缓慢的渲染设备(Android浏览器,基于FlashCanvas的画布仿真)上,平滑被提升了一个档次,以补偿捕获笔划坐标中的大间隙-这是捕获设备效率低下的结果。在任何情况下,客户都应该对图纸的响应性和美观感到满意。
jSignature可以很容易地将自己放入一个已有样式的站点。jSignature自动检测包装元素上使用的颜色(文本颜色=钢笔颜色,背景=背景),并自动为“装饰”(签名行)选择一个令人满意的中间色调。jSignature能很好地适应固定和可变宽度的网页设计,以及各种大小的屏幕(手机、平板电脑、电脑屏幕),并在父元素改变大小时自动重新缩放绘图区域和签名
https://stackoverflow.com/questions/12008871
复制相似问题