ホームページ PHPフレームワーク ThinkPHP ThinkPhp5.1 + jSignatureでオンライン署名機能を実装

ThinkPhp5.1 + jSignatureでオンライン署名機能を実装

Feb 15, 2022 pm 05:22 PM
thinkphp5.1

オンライン署名は多くの場所で使用されています。編集者は最近、承認署名機能を含むプロジェクトを引き受けました。顧客は、携帯電話にリアルタイム署名機能を実装する必要があると要求しました。調査の結果、jSignature ライブラリこの機能を完了するために使用されました。全員の参照用に共有します。

jSignature ライブラリは署名の作成に使用されるため、当然、jSignature ライブラリをダウンロードする必要があります。エディターは次のようにダウンロード アドレスを提供します。友達はダウンロードにアクセスできます:

https://www .phpclasses.org/browse/file/42277.html

jSignature ライブラリを入手した後、それをどのように使用するか? 多くの友人がこの領域で立ち往生している可能性があります。 、エディターはドキュメントを提供してください。チェックアウトできます:

jsignature 中国語開発マニュアル

さらに、jsignature は jQuery で使用する必要があります。ライブラリを使用しないと、一部の機能が使用できなくなります。表示、誰でもダウンロードできるダウンロード アドレスも提供されます:

linkDownloading jQuery

もちろん、たくさんあります。 1.js

事前準備機能が用意されており、以下に作成方法を示します。

#フロントエンド HTML

<style>
    .main_sign{
        padding: 10px 10px;
        color:black;
        background-color:darkgrey;
    }
    .main_sign .sign_btn{
        padding: 5px 10px;
    }
    #signature {
        border: 2px dotted black;

    }
</style>
<div class="main_sign" id="writers">
    <div id=&#39;signature&#39; style=&#39;background-color: #d2d2e8;&#39;></div>
    <button type="button" class="sign_btn" id="reset" style="margin: 10px 5px;">重写</button>
    <button type="button" class="sign_btn" id="yes" style="margin: 10px 5px;">确认</button>
    <div id="show_img" style="display: none;"><img src="" id="images"></div>
</div>

1 jsignature のインスタンス化

$(document).ready(function(){
    var arguments = {
        width: &#39;100%&#39;,
        height: &#39;200px&#39;,
    };
    $("#signature").jSignature(arguments);
});

2 署名のリセット

$("#reset").click(function(){
    $("#signature").jSignature("reset"); //重置画布,可以进行重新作画
    $("#images").attr(&#39;src&#39;,&#39;&#39;);
});

3 署名の送信

エディターは TP5.1 ajax 送信を使用します [関連する推奨事項:

thinkphp ビデオ チュートリアル]

//点击确定按钮,把签名的转成图片,然后把数据放进图片中,最后把图片中的数据传到后台
$("#yes").click(function(){
    //将画布内容转换为图片
    var $signature = $("#signature");
    var datapair = $signature.jSignature("getData", "image");
    $("#images").attr(&#39;src&#39;,&#39;data:&#39; + datapair[0] + "," + datapair[1]);
    var src_data = $("#images").attr(&#39;src&#39;);//拿到图片中的src,这就是我们需要的base64
    //console.info(src_data);//显示生成的笔迹图片
    //在这里就写我们的后台操作
    $.ajax({
        url:"{:url(&#39;getSignInfo&#39;)}",
        data:{src_data:src_data},
        type:"post",
        dataType:"json",
        success:function(data){
            window.location.href = data.dump_url;
        },
        error:function(){
            console.log("错误");
        }
    });
});

4 バックグラウンドデータ受信 (getSignInfo.php)

$data = Request::param();
$src = $this->base64ContentToImage($data[&#39;src_data&#39;],$path);

$src は必要な署名画像の保​​存アドレス、$path は署名画像の保​​存パスです。


5 画像の Base64 コードを標準画像に変換します (base64ContentToImage メソッド)

public function base64ContentToImage($base64_image_content,$path){
    $dir = "./".$path;
    if(!file_exists($dir)){
        mkdir(iconv("GBK", "UTF-8", $dir),0777,true);
    }
    //匹配出图片的格式
    if (preg_match(&#39;/^(data:\s*image\/(\w+);base64,)/&#39;, $base64_image_content, $result)){
        $type = $result[2];
        $new_file = $path."/".date(&#39;Ymd&#39;,time())."/";
        if(!file_exists($new_file)){
            //检查是否有该文件夹,如果没有就创建,并给予最高权限
            mkdir($new_file, 0700);
        }
        $new_file = $new_file.time().".{$type}";
        if (file_put_contents($new_file, base64_decode(str_replace($result[1], &#39;&#39;, $base64_image_content)))){
            return &#39;/&#39;.$new_file;
        }else{
            return false;
        }
    }else{
        return false;
    }
}

上記は、TP5.1 を使用するエディターの完全な概要です。署名を生成する jSignature ライブラリの作成方法、皆さんのお役に立てれば幸いです、ありがとうございます!

以上がThinkPhp5.1 + jSignatureでオンライン署名機能を実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ホットトピック