Dituon / petpet

根据模板生成图像
http://d2n.moe/petpet/
GNU Affero General Public License v3.0
295 stars 80 forks source link

关于关键字在text里的使用 #82

Closed pilgrim773 closed 1 year ago

pilgrim773 commented 1 year ago
/**
     * 由用户选择模板
     */
    @SubCommand("选择模板")
    public void useTemplateWithoutTargetCommand(ConsoleCommandSender sender,
            @Name("模板key") String petkey, 
            @Name("(可选)模板文本替换的参数") String... petReplaceArgs) {
        useTemplateAndSave(sender, petkey, null, petReplaceArgs);
    }

我用的其实是simplepetpet那边的这个方法(改成调用useTemplateAndSave以便控制台测试),这是我的模板json的text设置:

"text": [
    {
    "text": "测试测试测试测试测试",
    "color": "#66ccff",
    "pos": [100, 100],
    "size": 24
    },
    {
      "text": "$txt1[我]超市$txt2[你]!",
      "pos": [-300,150],
      "color": "#FFFFFF",
      "position": ["CENTER", "TOP"],
      "style": "BOLD",
      "size": 20,
      "greedy": true
    }
  ],

有关键字的那个基本用复制的readme示例里的 然后使用指令: /制图 选择模板 checkin 天 地, 却得到: image 再使用没有关键字的指令 /制图 选择模板 checkin 想测试填充默认值,得到: image

我感觉应该还是我设置或者用法有问题,请问是哪里出错了呢

Dituon commented 1 year ago

很抱歉对您造成困扰, 已修复, 推荐参考 HelloPepet 中的代码

错误的正则表达式为 \\$txt([1-9]\\d*)\\[(.*)], 已更改为 懒惰匹配 \\$txt([1-9]\\d*)\\[(.*?)]

pilgrim773 commented 1 year ago

很抱歉对您造成困扰, 已修复, 推荐参考 HelloPepet 中的代码

错误的正则表达式为 \\$txt([1-9]\\d*)\\[(.*)], 已更改为 懒惰匹配 \\$txt([1-9]\\d*)\\[(.*?)]

是不是还需要您更新一下maven库的jar包以便我这边重新下载新代码,因为我目前没有完整使用petpet源码的打算,还是在simplepetpet那边把这里当成一个工具类库使用 如果比较麻烦的话那我就用这边的源码吧

Dituon commented 1 year ago

近期会推送新版本, 包含此错误的修复及其它内容, 为您带来的不便请谅解

pilgrim773 commented 1 year ago

好的谢谢

Dituon commented 1 year ago

https://github.com/Dituon/petpet/releases/tag/5.4-M1