Vì vậy, tôi đã chán ngấy với sự khó chịu này và làm cho một cách giải quyết.
Có hai mảnh cho nó:
- Một tiện ích nhỏ tôi đã viết để lưu hình ảnh clipboard vào tệp .png
- Một kịch bản AutoHotKey
Tập lệnh AutoHotKey kiểm tra xem Photoshop có đang hoạt động không và nếu có thì nó sẽ chặn tổ hợp phím Ctrl
+ V
và sau đó nó chạy tiện ích.
Nếu tiện ích lưu một hình ảnh để %TEMP%\clip.png
, các Shift
+ Ctrl
+ F12
tổ hợp phím được gửi đến Photoshop, mà tôi đã ánh xạ tới một Photoshop Action để đặt các clip.png
tập tin vào tài liệu đang mở.
Nếu tiện ích không lưu hình ảnh, tổ hợp phím Ctrl
+ tiêu chuẩn V
được gửi đến Photoshop và dán tiêu chuẩn được thực hiện.
Tất cả các mã nguồn có sẵn ở đây: https://github.com/SilverEzhik/ClipboardToPNG và tiện ích có thể được tải xuống tại đây: https://github.com/SilverEzhik/ClipboardToPNG/release
Để tạo Hành động Photoshop, chỉ cần thực hiện một hành động mới với tổ hợp phím được ánh xạ sang Shift + Ctrl + F12 (hoặc thay đổi kết hợp trong tệp tập lệnh), sau đó trong khi ghi, hãy đi tới File
> Place Embedded...
và dán %TEMP%\clip.png
vào trường tên tệp.
Mã nguồn cho tập lệnh AHK được cung cấp bên dưới - nếu bạn chưa sử dụng AutoHotKey trước đó, hãy cài đặt nó, sau đó lưu mã vào một filename.ahk
tệp vào cùng thư mục với tiện ích ClipboardToPNG.exe, sau đó chỉ cần chạy nó.
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
tập tin hoặc bitmap của nó trong khi nó được mở trong một trình soạn thảo / trình xem? Nếu đó là tệp, thì Photoshop (nên) có thể mở tệp chính xác, trong suốt và tất cả. Nếu đó là pixel thực tế của hình ảnh, thì nó phụ thuộc vào chương trình nguồn và liệu nó có đưa dữ liệu trong suốt vào bảng tạm hay không.