如何使用Delphi将PNG图像复制到剪贴板

使用Delphi 2010我想将PNG图像复制到剪贴板,同时保留alpha透明度.不幸的是,TPng Image.SavetoClipboardFormat方法会将其绘制到位图,透明度将会丢失.

我想将PNG图像粘贴到Photoshop和Word等具有Alpha透明度的应用程序中.

有关如何做到这一点的任何想法?其他应用程序如何在剪贴板中复制透明度?

解决方法

可能是他们使用另一种剪贴板格式,请参阅
http://msdn.microsoft.com/en-us/library/ms649013(VS.85).aspx表示可用的剪贴板格式列表.
或者他们可以注册自己的剪贴板格式,如
RegisterClipboardFormat('PNG')

然后简单地将png数据写入剪贴板.如果指定的剪贴板格式字符串是标准的(即其他应用程序注册相同的剪贴板格式),那么您将能够将其粘贴到支持此剪贴板格式的其他应用程序中.

您可能需要直接调用Windows函数,因为Delphi的剪贴板包装器不是很好.

相关文章

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