我经常使用数字递增的Adobe Acrobat Exhibit标签戳,并且长期以来一直在努力创建JS或修改JS,当在多个文档上应用展品戳时,JS将递增地应用大写字母。我已经用数字递增创建了许多不同配置的Exhibit标签印章。
广泛地在线搜索Adobe Acrobat JS代码,其中包含StackOverflow问题125040442 (“什么是可用于递增字母的方法”)中最有用的代码。这就是说,我在实现时仍然有问题。
if(event.source.forReal && event.source.stampName == "#dFy_HzikDGIAs7PGXRwfvD")
{
if(typeof(app.media.nExhibit)== "undefined")
app.media.nExhibit = 1;
else
app.media.nExhibit++;
event.value = app.media.nExhibit;
}
要在Adobe Acrobat Exhibit标签戳记中嵌入JS,请执行以下操作:“文本字段属性”>“计算”选项卡>“自定义计算脚本”。打开文档,应用带有第一个字母的图章,保存并关闭文档,打开下一个文档,然后应用带有下一个大写字母的图章。
发布于 2019-06-07 04:09:44
因此,您希望event.value
是一个大写字母,并且一直递增到下一个字母?现在,您使用的值是1,然后是2,然后是3,依此类推。您需要使用字母的字符代码,递增,然后将其转换回字母。您可以使用chartCodeAt
获取字母的字符代码,并使用String.fromCharCode
将代码转换回字母。所以:
if(event.source.forReal && event.source.stampName == "#dFy_HzikDGIAs7PGXRwfvD") {
if(typeof(app.media.nExhibit)== "undefined")
app.media.nExhibit = 'A'.charCodeAt(0);
else
app.media.nExhibit++;
event.value = String.fromCharCode(app.media.nExhibit);
}
您可能还希望确保它不能通过Z;因此,当您递增并将其设置回A的字符代码时,您可以很容易地确定它是否大于'Z'.charCodeAt(0)
。(如果您愿意,也可以使用一些模算术在一行中完成。)
https://stackoverflow.com/questions/56481934
复制相似问题