delphi – 如何将表单作为图像复制到剪贴板

我需要将一个表单(Delphi 2007)作为图像复制到剪贴板,以将用户可以看到的内容粘贴到word文档中.剪贴板部分实际上不是问题.问题是如何获取表单的位图.

搜索已经出现了多种选择.

>拨打GetFormImage
>使用作为GDI一部分的PrintWindow API function
>发送WM_PRINT message
>使用Canvas.CopyRect复制当前表单的画布
>我还发现了一个名为TExcellentFormPrinter的组件,它有一个声称比这些选项更好的解决方案,但我不知道它使用的是什么方法.

所有这些选项似乎都有不同的问题.我发现的大部分信息似乎都已过时.我似乎没有任何好的资源来比较不同的选项和足够的细节供我做出选择.关于选择哪个选项的任何建议.

我已经在我的表格上尝试了这些并且它们似乎都运行正常,我只是想避免出现问题.关于什么解决方案的任何建议?

更新:GetFormImage存在哪些潜在问题?
Andreas问GetFormImage有什么问题.希望什么都没有,这是我想要得到答案的一部分.让我担心的是,我的很多搜索结果似乎都在暗示使用GetFormImage的创造性替代方案.我希望答案可以清除水域.

我会非常高兴得到很多投票的回答说 – GetFormImage曾经有过一些问题,但现在没有理由不使用它.

相关文章

 从网上看到《Delphi API HOOK完全说明》这篇文章,基本上都...
  从网上看到《Delphi API HOOK完全说明》这篇文章,基本上...
ffmpeg 是一套强大的开源的多媒体库 一般都是用 c/c+&#x...
32位CPU所含有的寄存器有:4个数据寄存器(EAX、EBX、ECX和ED...
1 mov dst, src dst是目的操作数,src是源操作数,指令实现的...