2012-08-17 17 views
0

我需要關於jSignature的幫助。我能夠創建一個圖像,然後將該圖像寫回到頁面中。我無法工作的原因(以及我首先探索此插件的原因)是將圖像從頁面導出。我想拍攝圖像數據並通過電子郵件發送出去,以便圖像顯示在電子郵件的正文中。如果已經嘗試了很多方法並且什麼都沒有起作用。目前我的JS是這樣的:jSignature圖像導出到PHP電子郵件

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> 

我已經竭盡全力試圖讓它顯示出去的電子郵件中的圖像。任何幫助深表感謝。

回答

0

我不知道,但你看到下面的網址我認爲這是幫助全給你

https://github.com/brinley/jSignature/

演示網址; -

http://willowsystems.github.com/jSignature/#/demo/

jSignature是一個jQuery插件,它簡化了在瀏覽器窗口中創建簽名捕獲字段,允許用戶使用鼠標,筆或手指繪製簽名。作爲載體的筆劃的輪廓

jSignature捕獲簽名。雖然jSignature也可以導出很好的位圖(PNG),但提取簽名的高度可伸縮筆劃移動座標(aka矢量圖像)可以提供更大的簽名渲染靈活性。

一個額外的努力(通過平滑和壓力模擬)製成,使招看起來很漂亮的屏幕上,而這些是由奧蘭多繪製。

所有主要的臺式機,平板電腦和手機瀏覽器的支持。默認情況下使用HTML5 Canvas元素。當瀏覽器不支持實際Canvas時(Iinternet Explorer v.8及更低版本),我們會回到基於Flash的Canvas元素仿真器(FlashCanvas)。

實時jSignature呈現只適合設備的「最美」,我們捕捉到什麼近似。數據捕獲總是相同的 - 我們捕獲儘可能多的移動座標。根據瀏覽器的功能,設備的效率,屏幕大小,渲染筆劃會有所不同。

這種有辱人格和捕捉簽名的屏幕表示的增強是故意的,以確保渲染上捕獲的響應不impead。例如,在緩慢的渲染設備(Android Browser,基於FlashCanvas的Canvas仿真)中,平滑被啓動一個檔次以補償捕獲的筆劃座標中的較大間隙 - 這是捕捉設備效率低下的結果。在所有情況下,客戶都會對繪圖的反應和美感感到滿意。

jSignature可以很容易地將自己融入現有的風格網站。jSignature自動檢測包裹元素上使用的顏色(文本顏色=筆顏色,背景=背景),並自動爲「裝飾」(簽名線)選取令人愉快的中間色調。 jSignature適用於固定和可變寬度的網頁設計,以及各種尺寸的屏幕(手機,平板電腦,電腦屏幕),並自動調整繪圖區域和簽名時父母元素更改大小

+0

謝謝!我已閱讀所有參考資料,但可能錯過了某些內容。 – arnonate 2012-08-17 15:55:35

+0

你看到這個網址https://github.com/brinley/jSignature/ – 2012-08-17 16:08:41

+0

是的。我可以將圖像打印回頁面。我遇到的麻煩是通過AJAX調用將圖像數據發送到PHP郵件腳本,以使圖像顯示在電子郵件中。 – arnonate 2012-08-17 16:15:14

1

YEHESSS!得到它的工作。如果我將圖像導出爲圖像並對圖像執行encodeURIComponent(圖像),則AJAX調用不會搞亂圖像數據。現在像BEAST一樣工作。嘿謝謝你的幫助阿比德。