网友答:
专用车研发 发表于 2025-10-10 15:32
("psk:ISOA4" "ns0000:Fullsize4x6" "psk:NorthAmerica5x7" "psk:ISOA6" "psk:ISOA5" "psk:JISB5" "psk:J ...

(setq papers
       (mapcar (function (lambda (x)
                           (vla-GetLocaleMediaName cs_lat x)
                         )
               )
               (vlax-safearray->list
                 (vlax-variant-value (vla-GetCanonicalMediaNames cs_lat))
               )
       )
)

网友答: 看看这个是不是你想要的

网友答: 直接文字识别


网友答: 找批量打印的插件源代码,里面有获取指定打印机默认纸张列表的函数

网友答:
qifeifei 发表于 2025-10-9 19:23
直接文字识别

在不同的电脑上这些数据是不一样的,不知道怎么获取这些数据,应该用哪个函数呢?

网友答: 本帖最后由 lijiao 于 2025-10-10 15:19 编辑
  1. (vl-load-com)
  2. (setq ploter (vla-get-DefaultOutputDevice (vla-get-Output (vla-get-Preferences (vlax-get-acad-object)))))
  3. (setq cs_lat (vla-get-ActiveLayout (vla-get-ActiveDocument (vlax-get-acad-object))))
  4. (vla-put-ConfigName cs_lat ploter)
  5. (setq papers (vla-GetCanonicalMediaNames cs_lat))
  6. (setq papers (vlax-safearray->list (vlax-variant-value papers)))



网友答:
yangyangyixia 发表于 2025-10-10 14:42
看看这个是不是你想要的

感谢回复,试了一下不知道为啥这里的结果和CAD打印页面显示的不一样?如果用(command "_.plot")来设置打印纸张,得用CAD打印页面显示的名称一样才行。


网友答:
lijiao 发表于 2025-10-10 15:11

("psk:ISOA4" "ns0000:Fullsize4x6" "psk:NorthAmerica5x7" "psk:ISOA6" "psk:ISOA5" "psk:JISB5" "psk:JISB6" "ns0000:JapanLPhoto" "ns0000:IndexCard5x8" "ns0000:IndexCard8x10" "ns0000:Paper4x7" "ns0000:Postcard100x148" "psk:NorthAmericaNumber10Envelope" "psk:ISODLEnvelope" "psk:ISOC6Envelope" "psk:NorthAmericaLetter" "psk:OtherMetricFolio" "ns0000:IndianLegal" "psk:NorthAmericaLegal" "ns0000:SpecialPaper16K" "ns0000:EPUserDefinePaper10000")
结果应该是对的,不知道为啥和CAD打印界面显示的不一样呢?

网友答:
专用车研发 发表于 2025-10-10 15:30
感谢回复,试了一下不知道为啥这里的结果和CAD打印页面显示的不一样?如果用(command "_.plot")来设置打 ...

控制面板里面的打印机设置,可以隐藏一些不想要的图纸列表,所以cad打印界面显示的少一些
  • 上一篇:根据南方cass高程点 内插高程点
  • 下一篇:没有了