ฉันต้องการเขียนสคริปต์เพื่อใช้ไฟล์รูปภาพปรับขนาด 50% และวางไว้บนคลิปบอร์ดเพื่อให้สามารถวางได้อย่างง่ายดาย สิ่งที่ฉันติดอยู่คือการวางรูปภาพบนคลิปบอร์ด
ฉันรู้จัก xclip แต่ AFAICS ที่เกี่ยวข้องกับข้อความเท่านั้น เป็นไปได้หรือไม่ที่จะมีภาพไว้บนคลิปบอร์ดโดยไม่ต้องมีแอพพลิเคชั่นที่ทำให้มันนั่งอยู่รอบ ๆ ? - ขอโทษฉันไม่แน่ใจว่าภายในของคลิปบอร์ดทำงานอย่างไร!
แก้ไข
ขอบคุณคำตอบของ Florian ด้านล่างฉันสามารถบรรลุสิ่งที่ฉันต้องการซึ่งก็คือการจับภาพหน้าจอและปรับขนาดให้กว้างสูงสุด 600px โดยอัตโนมัติ (เช่นการวางอีเมล) ปัญหาเพิ่มเติมที่ฉันเผชิญคือธันเดอร์เบิร์ดจะไม่ยอมรับimage/png
จากคลิปบอร์ด ฉันได้รับมันโดยแปลงtext/html
เป็นdata
url นี่คือรหัสของฉันในกรณีที่ทุกคนพบว่ามีประโยชน์:
#!/bin/bash
TMP=/tmp/screenshot.png
function screenshotfail {
notify-send -u low -i image "Screenshot failed."
exit
}
# Take screenshot
gnome-screenshot -a -b -p -f "$TMP" || screenshotfail
# Ensure it's max 600px wide
mogrify -resize '>600x' "$TMP" || screenshotfail
# optimise the png if optipng is installed.
which optipng >/dev/null && optipng "$TMP"
# Copy to clipboard.
#
# This is what does not work for Thunderbird:
# xclip -selection clipboard -t image/png <"$TMP" || screenshotfail
# But this does:
echo "<img src='data:image/png;base64,"$(base64 -w0 "$TMP")"' />" | \
xclip -selection clipboard -t text/html || screenshotfail
# Remove the temp file.
rm -f "$TMP"
# Notify user.
notify-send -u low -i image "600px screenshot copied to clipboard"
ดูเหมือนซ้ำ: unix.stackexchange.com/questions/30093/…
—
Champ