इसलिए मैं इस झुंझलाहट से तंग आ गया और एक समाधान बनाया।
इसके दो टुकड़े हैं:
- एक छोटी सी उपयोगिता जिसे मैंने एक .png फ़ाइल में क्लिपबोर्ड छवि को बचाने के लिए लिखा था
- एक AutoHotKey स्क्रिप्ट
AutoHotKey स्क्रिप्ट की जाँच करता है कि क्या फ़ोटोशॉप वर्तमान में सक्रिय है, और यदि ऐसा है तो यह Ctrl+ Vकुंजी संयोजन को स्वीकार करता है , और फिर यह उपयोगिता को चलाता है।
यदि उपयोगिता ने एक छवि को सहेजा है %TEMP%\clip.png, तो Shift+ Ctrl+ F12कुंजी संयोजन फ़ोटोशॉप को भेजा जाता है, जिसे मैंने clip.pngवर्तमान में खुले दस्तावेज़ में फ़ाइल को रखने के लिए फ़ोटोशॉप एक्शन के लिए मैप किया है ।
यदि उपयोगिता ने छवि को नहीं बचाया, तो मानक Ctrl+ Vकुंजी कॉम्बो फ़ोटोशॉप में भेजा जाता है और एक मानक पेस्ट किया जाता है।
सभी स्रोत कोड यहां उपलब्ध हैं: https://github.com/SilverEzhik/ClipboardToPNG , और उपयोगिता को यहां डाउनलोड किया जा सकता है: https://github.com/SilverEzhik/ClipboardToPNG/teases
फ़ोटोशॉप एक्शन बनाने के लिए, Shift + Ctrl + F12 (या स्क्रिप्ट फ़ाइल में संयोजन को बदलने) के लिए मैप किए गए कुंजी संयोजन के साथ एक नई क्रिया करें, और फिर रिकॉर्डिंग करते समय, फ़ाइल नाम फ़ील्ड में File> पर जाएं Place Embedded..., और पेस्ट %TEMP%\clip.pngकरें।
AHK स्क्रिप्ट के लिए स्रोत कोड नीचे दिया गया है - यदि आपने पहले AutoHotKey का उपयोग नहीं किया है, तो इसे इंस्टॉल करें, फिर कोड को filename.ahkफाइल को उसी निर्देशिका में क्लिपबोर्ड ToPNG.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
.pngफ़ाइल या उसके बिटमैप यह एक संपादक / दर्शक में खोला गया है, जबकि? यदि यह फ़ाइल है, तो फ़ोटोशॉप (को) फ़ाइल को सही ढंग से खोलने में सक्षम होना चाहिए, पारदर्शिता और सभी। यदि यह चित्र का वास्तविक पिक्सेल है, तो यह स्रोत कार्यक्रम पर निर्भर करता है और यह क्लिपबोर्ड में पारदर्शिता डेटा डाल रहा है या नहीं।