获取PDF页数
本帖最后由 sandyvs 于 2025-3-3 12:24 编辑;好像论坛并不多,http://bbs.mjtd.com/forum.php?mo ... hlight=PDF%2B%D2%B3,lisp没获取到,c#没试
;http://bbs.mjtd.com/forum.php?mo ... hlight=PDF%2B%D2%B3,页数多了太卡
;http://bbs.mjtd.com/forum.php?mo ... hlight=PDF%2B%D2%B3,需要安装adobe acrobat
;找了个exe小文件来实现,或者用cpdf,更直接,而且有其他功能,合并pdf什么的(附件示例及官方文档)
[*](defun czx:getpdfnum1 (pdfpath / cmd pdfinfoPath shell)
[*](if (setq pdfinfoPath (findfile "pdfinfo.exe"))
[*] (progn
[*] (setq cmd (strcat
[*] "\""
[*] pdfinfoPath " \"" ; pdfinfo.exe路径
[*] pdfpath "\"" ; PDF路径
[*] " | findstr \"Pages\"" ; 查找pages
[*] " | Set-Clipboard\"" ; 结果复制到剪贴板或者用 clip.exe
[*] )
[*] )
[*] (setq shell (vlax-create-object "Shell.Application"))
[*] (if shell
[*] (progn
[*] (vlax-invoke-method
[*] shell
[*] 'ShellExecute
[*] "powershell.exe"
[*] (strcat "-Command \"" cmd "\"")
[*] ""
[*] ""
[*] 0
[*] )
[*] (vlax-release-object shell)
[*] (command "delay" 500)
[*] (get-clip-string) ;获取剪切板内容
[*] )
[*] )
[*] )
[*] (progn
[*] (princ " \n 请将 pdfinfo.exe 放到CAD搜索路径!")
[*] nil
[*] )
[*])
[*])
[*];(czx:getpdfnum1 (getfiled "1" "" "pdf" 0))
;get-clip-string不知道是谁的了,http://bbs.mjtd.com/thread-192187-1-1.html
;或者写到注册表或文件,再读取(附件为写到注册表)
pdfinfo.exe是在网上找的吗 谢谢喜欢搞技术研究的大佬分享 本帖最后由 cjrun 于 2025-3-3 11:54 编辑
可以提取当前页,记录到文件或提取pdf文件内的书签存成文件,然后做成dcl版的书签,直接用cad打开pdf文件并转到书签页 本帖最后由 sandyvs 于 2025-3-3 12:22 编辑
mercio 发表于 2025-3-3 08:17
pdfinfo.exe是在网上找的吗
嗯,xpdf官网
啊,才发现忘传exe文件了
cjrun 发表于 2025-3-3 11:52
可以提取当前页,记录到文件或提取pdf文件内的书签存成文件,然后做成dcl版的书签,直接用cad打开pdf文件并 ...
啊,这研究的就有点深了,目前用不到。做成这样查看规范倒是不错 和pdftk的用法一样的 烟盒迷唇 发表于 2025-3-4 17:05
和pdftk的用法一样的
嗯,差不多,但pdftk页数多了太慢了 使用iTextSharp.dll这个C#开源库可以实现。
页:
[1]