纵横八方 发表于 2022-3-28 13:32:48

两点区域打印PNG,lisp能将 wmfout 或者 pngout 输出的图片 添加到系剪切板吗

本帖最后由 纵横八方 于 2022-3-28 16:05 编辑

前方高能请回答:lisp 能将 wmfout 或者 pngout 输出的图片 添加到系统剪切板吗?

sandyvs 发表于 2024-4-20 11:56:51

960322 发表于 2024-4-20 11:12
好像不行呢

需要权限
powershell里,
Set-ExecutionPolicy AllSigned
Set-ExecutionPolicy RemoteSigned

sandyvs 发表于 2024-3-22 12:07:46

纵横八方 发表于 2022-3-29 09:09
关键是要 复制到 剪切板

找到解决方法了吗?刚凑了一个,看看怎么样
(setq path (vla-item (vlax-get (vlax-create-object "WScript.Shell" ) 'SpecialFolders) "Desktop"))
                        ;(vla-plottofile plot (setq path1 (strcat path "\\临时截图.png")))
                        (setq path1 (strcat path "\\临时截图.png"))
                        (setq path2 (strcat path "\\复制到剪贴板.ps1"))
                        (xty-sys-makeFbylst path2
                        (list "Add-Type -AssemblyName System.Windows.Forms"
                                        (strcat "::SetImage(::FromFile(\"" path1 "\"))")))
                        (setq myapp(vlax-create-object "WScript.Shell"))
                        (Vlax-invoke-method myapp "run" (strcat "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe " path2) 0 true)
                        (vlax-release-object myapp)

;;xty-sys-makeFbylst见http://bbs.mjtd.com/forum.php?mod=viewthread&tid=185791&highlight=%D0%B4%2B%CE%C4%B1%BE

960322 发表于 2024-9-8 01:09:16


PS C:\Users\Administrator> Add-Type -AssemblyName System.Windows.Forms
PS C:\Users\Administrator> ::SetImage(::FromFile("C:\Users\Adminis
trator\Desktop\临时截图.png"))
使用“1”个参数调用“SetImage”时发生异常:“在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式。请确保您的 Ma
in 函数带有 STAThreadAttribute 标记。”
所在位置 行:1 字符: 43
+ ::SetImage <<<< (::FromFile("C:\Users\Administrator\Desktop\临
时截图.png"))
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException

nxchenjk 发表于 2022-3-29 08:19:53

本帖最后由 nxchenjk 于 2022-3-29 08:21 编辑

我是通过两点设置窗口,之后用"export"输出为bmp文件。
(setq pt1(polar point0 0.68496 20));显示窗口右上角坐标
(setq pt2(polar point0 3.82655 20));显示窗口左下角坐标
(vl-cmdf "_zoom" pt1 pt2)

(command "export" SavePathName "")

纵横八方 发表于 2022-3-29 09:09:09

关键是要 复制到 剪切板

t18-13nil 发表于 2022-3-31 22:29:58

借助其它软件可以实现,比如用com操作office,将这个图片插进去再pic.copy

paulpipi 发表于 2022-3-31 22:58:29

帮顶,这个功能实用,求高手出山

960322 发表于 2024-4-20 11:12:12

sandyvs 发表于 2024-3-22 12:07
找到解决方法了吗?刚凑了一个,看看怎么样
(setq path (vla-item (vlax-get (vlax-create-object "WScr ...

好像不行呢

960322 发表于 2024-4-20 19:35:53

sandyvs 发表于 2024-4-20 11:56
需要权限
powershell里,
Set-ExecutionPolicy AllSigned


这个是真不懂。请问是在哪里弄,我觉得这个功能好有用,截图很方便。能否麻烦详细说一下怎么弄,谢谢了!

960322 发表于 2024-4-20 20:32:56

会在桌面生成一个   复制到剪贴板.ps1文件,不知道怎么用
页: [1] 2 3
查看完整版本: 两点区域打印PNG,lisp能将 wmfout 或者 pngout 输出的图片 添加到系剪切板吗