所有分类
  • 所有分类
  • 网站源码
  • 游戏源码
  • 小程序
  • 网页特效
  • 软件工具

用thinkphp6写一个艺术签名系统,原理就是调用字体生成图片

用thinkphp6写一个艺术签名系统,原理就是调用字体生成图片

1在数据库中创建一个用于存储文字生成结果的表,可以包含字段如下:

id: 主键,用于唯一标识每个生成结果
text: 存储生成的文字内容
font: 存储使用的字体名称

sql执行语句

CREATE TABLE `text` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `text` varchar(255) NOT NULL,
  `font` varchar(50) NOT NULL,
  `image` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

接下来创建控制器

public function generateText()
{
    // 获取输入的文字
    $text = $_POST['text'];

    // 获取选择的字体
    $font = $_POST['font'];

    // 设置生成图片的宽度和高度
    $width = 400;
    $height = 200;

    // 创建一个空白图片
    $image = imagecreatetruecolor($width, $height);

    // 设置背景颜色和文字颜色
    $backgroundColor = imagecolorallocate($image, 255, 255, 255);
    $textColor = imagecolorallocate($image, 0, 0, 0);

    // 使用选择的字体
    $fontFile = 'path/to/font/' . $font . '.ttf';

    // 绘制文字到图片上
    imagettftext($image, 20, 0, 10, 100, $textColor, $fontFile, $text);

    // 保存生成的图片
    $filename = 'path/to/save/' . time() . '.png';
    imagepng($image, $filename);

    // 关闭图片资源
    imagedestroy($image);

    // 将生成的文字信息保存到数据库
    $result = Db::name('text')->insert([
        'text' => $text,
        'font' => $font,
        'image' => $filename
    ]);

    if ($result) {
        return '文字生成成功!';
    } else {
        return '文字生成失败!';
    }
}

前端html

<body>
    <div class="container mt-5">
        <h1>生成文字</h1>
        <form action="/text/generateText" method="post">
            <div class="mb-3">
                <label for="text" class="form-label">输入文字:</label>
                <input type="text" class="form-control" id="text" name="text">
            </div>
            <div class="mb-3">
                <label for="font" class="form-label">选择字体:</label>
                <select class="form-select" id="font" name="font">
                    <option value="font1">字体1</option>
                    <option value="font2">字体2</option>
                    <option value="font3">字体3</option>
                </select>
            </div>
            <button type="submit" class="btn btn-primary">生成</button>
        </form>
    </div>
</body>

需要的拿去玩玩

下载说明:
1、本站所有资源均从互联网上收集整理而来,仅供学习交流之用,因此不包含技术服务请大家谅解!
2、本站不提供任何实质性的付费和支付资源,所有需要积分下载的资源均为网站日常活跃所需,积分可通过日常活跃免费获得!
3、本站所有资源仅用于学习及研究使用,您必须在下载后的24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担!
4、本站站内提供的所有可下载资源,本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发),但本站不保证资源的准确性、安全性和完整性,用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug!如有链接无法下载、失效或广告,请联系客服处理!
5、本站资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您的合法权益,请立即告知本站,本站将及时予与删除并致以最深的歉意!
6、如果您也有好的资源或教程,您可以投稿发布,成功分享后有站币奖励,同时还能获得对应的人气!
7、如果您喜欢该资源,请支持官方正版资源,以得到更好的正版服务!
8、请您认真阅读上述内容,注册本站用户或下载本站资源即您同意上述内容!
原文链接:http://www.yonghengzy.cn/42192.html,转载请注明出处。
0
分享海报

评论0

请先
显示验证码

社交账号快速登录