有没有办法通过剪贴板将透明图像粘贴到photoshop?
我尝试使用已注册的" PNG"格式,但似乎photoshop不支持它(与MSOffice 2007和GIMP相反)。使用CF_DIB不会在photoshop中保留alpha通道。
注意:我使用WinApi执行此类操作
答案 0 :(得分:2)
所以我厌倦了这种烦恼并做了一个解决方法。
它有两部分:
AutoHotKey脚本检查Photoshop当前是否处于活动状态,如果是,则截取Ctrl
+ V
组合键,然后运行该实用程序。
如果该实用程序将图像保存到%TEMP%\clip.png
,则会将Shift
+ Ctrl
+ F12
组合键发送到Photoshop,我已将其映射到Photoshop动作将clip.png
文件放入当前打开的文档中。
如果实用程序未保存图像,则会将标准Ctrl
+ V
键组合发送到Photoshop并执行标准粘贴。
此处提供了所有源代码:https://github.com/SilverEzhik/ClipboardToPNG,可以在此处下载该实用程序:https://github.com/SilverEzhik/ClipboardToPNG/releases
要创建Photoshop动作,只需使用映射到Shift + Ctrl + F12(或更改脚本文件中的组合)的组合键进行新操作,然后在录制时转到File
> Place Embedded...
,并在文件名字段中粘贴%TEMP%\clip.png
。
下面提供了AHK脚本的源代码 - 如果您之前没有使用过AutoHotKey,请安装它,然后将代码保存到filename.ahk
文件到与ClipboardToPNG.exe实用程序相同的目录中,然后运行它。
DoPhotoshopPaste() {
RunWait, %A_ScriptDir%\ClipboardToPNG.exe ; run utility, wait for it to complete
if (ErrorLevel == 0) { ; if error code is 0
SendEvent, +^{F12} ; press Shift+Ctrl+F12 to run the designated Photoshop action to paste
}
else {
SendEvent, ^v ; else, just perform a standard paste.
}
}
#IfWinActive ahk_exe Photoshop.exe ; only activate this hotkey when photoshop is active
^v::DoPhotoshopPaste()
#IfWinActive
答案 1 :(得分:1)
不幸的是,Photoshop还没有协助将png从外部来源“复制粘贴”到页面中,而黑色没有背景。我知道的唯一方法是保存文件,然后在Photoshop中打开它。从那里开始,应该执行“复制粘贴”。
答案 2 :(得分:0)
您必须首先将png或gif图像保存到计算机,然后在Photoshop中打开它,否则您将获得黑色背景。
保存后,您也可以将其从计算机中拖放到您正在处理的Photoshop项目中,并在新图层上保持透明。
当你这样做时,它可能变成一个智能对象,它将在调整大小时保持其质量。如果您不希望它成为智能对象,请右键单击其图层,选择"栅格化图层"。
答案 3 :(得分:0)
在Microsoft绘画或其他软件中打开您的图像,并保存为透明的.png文件,然后拖放到photoshop中。