tzjxjw 发表于 2024-3-4 16:48:46

重命名

我编了个pdf打印程序,由于每次输出的pdf都是同名,所以用了vl-file-rename这个函数,输出pdf后重命名这个pdf文件,但是有时还没重命名完,下一个pdf已经输出了,提示是否替代这个文件。之后我在重命名命令后面加了delay命令,但是还是没有用,不知道有没有解决办法。

飞雪神光 发表于 2024-3-4 19:12:38

怎么确定他不支持 指定名字的呢

tzjxjw 发表于 2024-3-4 18:11:54

ludaweb 发表于 2024-3-4 17:38
没有什么好办法,打印前名字就整好,尽量不要事后rename。

主要是那个虚拟打印机不支持打印的时候改名

ludaweb 发表于 2024-3-4 17:38:13

没有什么好办法,打印前名字就整好,尽量不要事后rename。

tzjxjw 发表于 2024-3-4 19:35:21

飞雪神光 发表于 2024-3-4 19:12
怎么确定他不支持 指定名字的呢

那个叫Adobe pdf的虚拟打印机,如果设置为每次打印时询问文件名,运行lisp程序的时候就会弹出对话框,所以只能让他用默认名,然后再改名

飞雪神光 发表于 2024-3-5 00:07:13

那帮不上忙了我没有这个虚拟打印机其他打印机可以用变量"FILEDIA"关掉对话框

liuhe 发表于 2024-3-5 09:36:57

每次都新建一个临时文件夹?放在不同文件夹下默认pdf文件名,最后统一删除临时文件夹,我没有尝试啊

kozmosovia 发表于 2024-3-5 09:54:33

你还是把代码贴出来吧,不可能vl-file-rename没有返回值就执行下一句语句的,那样lisp就实现异步或多线程了。另外plot一个PDF不可能不需要时间的,而且时间比重命名文件还短。

tzjxjw 发表于 2024-3-5 16:46:11

kozmosovia 发表于 2024-3-5 09:54
你还是把代码贴出来吧,不可能vl-file-rename没有返回值就执行下一句语句的,那样lisp就实现异步或多线程了 ...

确实是这样,是plot的时间长导致文件没生成,从而没法重命名,我在plot命令后加了一个判断文件有没有生成的,不生成就延时的循环结构,就没问题了。

tzjxjw 发表于 2024-3-5 16:47:58

谢谢各位了,问题已经解决了。
页: [1]
查看完整版本: 重命名