Więc mam dość tej irytacji i dokonałem obejścia.
Składa się z dwóch części:
- Małe narzędzie, które napisałem, aby zapisać obraz ze schowka w pliku .png
- AutoHotkey skrypt
Skrypt AutoHotKey sprawdza, czy Photoshop jest obecnie aktywny, a jeśli tak, to przechwytuje kombinację klawiszy Ctrl
+ V
, a następnie uruchamia narzędzie.
Jeśli narzędzie zapisało obraz %TEMP%\clip.png
, kombinacja klawiszy Shift
+ Ctrl
+ F12
jest wysyłana do Photoshopa, który zamapowałem na działanie Photoshopa, aby umieścić clip.png
plik w aktualnie otwartym dokumencie.
Jeśli narzędzie nie zapisało obrazu, standardowa kombinacja klawiszy Ctrl
+ V
jest wysyłana do Photoshopa i wykonywane jest standardowe wklejanie.
Cały kod źródłowy jest dostępny tutaj: https://github.com/SilverEzhik/ClipboardToPNG , a narzędzie można pobrać tutaj: https://github.com/SilverEzhik/ClipboardToPNG/releases
Aby utworzyć akcję Photoshop, po prostu wykonaj nową akcję z kombinacją klawiszy zamapowaną na Shift + Ctrl + F12 (lub zmień kombinację w pliku skryptu), a następnie podczas nagrywania przejdź do File
> Place Embedded...
i wklej %TEMP%\clip.png
w polu nazwy pliku.
Kod źródłowy skryptu AHK znajduje się poniżej - jeśli wcześniej nie korzystałeś z AutoHotKey, zainstaluj go, a następnie zapisz kod w filename.ahk
pliku w tym samym katalogu co narzędzie ClipboardToPNG.exe, a następnie po prostu uruchom go.
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
.png
Plik lub jego bitmapy, gdy jest otwarty w edytorze / widza? Jeśli jest to plik, wówczas Photoshop (powinien) być w stanie poprawnie otworzyć plik, przezroczystość i wszystko. Jeśli są to rzeczywiste piksele obrazu, zależy to od programu źródłowego i tego, czy umieszcza dane przezroczystości w schowku, czy nie.