另类获取PDF文件总页数的方法
灵感来源于使用pdftk合并PDF文件,此方法不用安装adobe acrobat软件,只需要把pdftk.exe和libiconv2.dll文件添加到CAD的支持文件搜索路径里即可。(defun c:tt (/ num)(setq num (Pdf:NumberOfPages (getfiled "选择PDF文件" (getvar 'DWGPREFIX) "pdf" 128)))
(if num
(alert (strcat "\n此PDF的总页数为:" num))
)
(princ)
)
统计图幅尺寸及数量
(defun c:tt (/ lst1 lst2 str_lst)
(setq str_lst (Pdf:Getparameter (getfiled "选择PDF文件" (getvar 'DWGPREFIX) "pdf" 128) "PageMediaDimensions"))
(if str_lst
(progn
(setq lst1
(mapcar
(function
(lambda(x)
(read (strcat "(" (vl-string-left-trim "PageMediaDimensions: " x) ")"))
)
)
str_lst
)
lst2 (HHst->Group lst1)
)
(foreach x lst2
(princ
(strcat "\n图幅[" (vl-princ-to-string (caar x)) " "
(vl-princ-to-string (cadar x)) "]的数量是:" (vl-princ-to-string (vl-list-length x))
)
)
)
)
(princ "\n提取不到相关数据!")
)
(princ)
)
lzspain 发表于 2024-2-28 13:01
大佬厉害,只是和想要的那种结果还是有点儿差距。有些PDF文件里是有多种图幅的,目前倒是有其他工具可以 ...
这个可以统计多种图幅的吧,只是我的图幅只有一种,所以只提示了一种。 烟盒迷唇 发表于 2024-2-28 09:48
这样子了
大佬厉害,只是和想要的那种结果还是有点儿差距。有些PDF文件里是有多种图幅的,目前倒是有其他工具可以统计,大佬这个方法很新颖。 在用PDF批量转为CAD的时候用得到:lol 要是能统计各图幅尺寸及数量就更好 lzspain 发表于 2024-2-26 23:39
要是能统计各图幅尺寸及数量就更好
可以获取很多PDF的数据信息,但是里面好像没有关于图幅的 本帖最后由 烟盒迷唇 于 2024-2-27 08:52 编辑
PageMediaDimensions: 842 1191,这个是不是就是图幅的意思,如果是的话,那完全可以统计出来的。 烟盒迷唇 发表于 2024-2-27 08:51
PageMediaDimensions: 842 1191,这个是不是就是图幅的意思,如果是的话,那完全可以统计出来 ...
就是这个,应该是可以实现的 lzspain 发表于 2024-2-27 08:56
就是这个,应该是可以实现的
那就很简单了,提取出来后加工一下,分类统计就得出图幅大小和数量了 烟盒迷唇 发表于 2024-2-27 09:06
那就很简单了,提取出来后加工一下,分类统计就得出图幅大小和数量了
期待大佬的成品!:lol lzspain 发表于 2024-2-27 12:57
期待大佬的成品!
我用不到提取图幅,不弄这个哦 lzspain 发表于 2024-2-27 12:57
期待大佬的成品!
这样子了
页:
[1]
2