找回密码
 立即注册
查看: 1462|回复: 0

【Aegisub相关】Lua 保留指定小数位数

184

主题

414

回帖

585

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
551478

崭露头角活跃达人新人登场

Seekladoom 发表于 2021-6-28 00:20:15 | 显示全部楼层 |阅读模式
来源:https://blog.csdn.net/weixin_34049032/article/details/93382609


默认会四舍五入
比如:%0.2f 会四舍五入后,保留小数点后2位
  1. print(string.format("%.1f",0.26))
  2. ---会输出0.3,而不是0.2
复制代码

Lua保留一位小数

  1. --- nNum 源数字
  2. --- n 小数位数
  3. function Tool. GetPreciseDecimal(nNum, n)
  4.     if type(nNum) ~= "number" then
  5.         return nNum;
  6.     end
  7.     n = n or 0;
  8.     n = math.floor(n)
  9.     if n < 0 then
  10.         n = 0;
  11.     end
  12.     local nDecimal = 10 ^ n
  13.     local nTemp = math.floor(nNum * nDecimal);
  14.     local nRet = nTemp / nDecimal;
  15.     return nRet;
  16. end
复制代码


补充一个Aegisub里面
保留一位小数的使用示例:

  1. Comment: 0,0:00:00.00,0:00:05.00,Default,,0,0,0,template noblank notext,{\an5\move(!string.format("%.1f",$sleft+$swidth*j/maxj+math.random(1,10))!}
复制代码



一个对动画组来说真正耐用的中文字体应该具备哪些条件?
https://bbs.acgrip.com/forum.php?mod=viewthread&tid=5310

使用思源字体在Aegisub中制作字幕时的一些常见问题
https://bbs.acgrip.com/forum.php?mod=viewthread&tid=3805
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表