答え1
同様の問題があったことを覚えていますscrot
。こんな時は眠りを追加したのによかったです!私にとってはうまくいきますが、Linux Mintを使用していません。
{ import png:-; sleep 0.1 ;} | convert png:- -units PixelsPerInch -resample 300 -sharpen 12x6.0 png:- | tesseract -l eng stdin stdout | xsel -ib
あるいは、次のscrotを試してみることもできます。
scrot -s aoeu.png -e 'tesseract -l eng $f stdout | xsel -ib; rm -f $f'
コメントの入力と回答のバージョンJ.クレイブンズ
scrot -s -f -q 100 --silent - |
convert - -units PixelsPerInch -resample 300 -sharpen 12x6.0 - |
tesseract -l eng stdin stdout |
xsel -ib
答え2
stdoutの場合、-と一緒にscrotを使用できますが、デフォルトではpngファイルが保存されます。以下を追加してください。
scrot -q 100 --silent - |
まさにそれが探しているものでなければなりません。
更新:1.7未満のバージョンでは標準出力が許可されていないため、これを行うのは少し面倒です。これはシェルスクリプトです:
#!/bin/bash
# Create a temp working directory
temp_file="$HOME/screenshot_$(date +"%Y_%m_%d-%H_%M_%S").png"
# Take a screenshot to the temp file
scrot -zfq 100 --silent "$temp_file"
# Copy the image file to the clipboard using xclip
xclip -selection clipboard -t image/png -i "$temp_file"
echo -e "\nScreenshot saved to:\n"$temp_file"\n"
exit 0
xclip
貼り付け/出力に使用します。パイプxsel
なども同じように機能する必要があります。
保存してscreenshot.sh
最後chmod +x screenshot.sh
に実行します。./screenshot.sh
ヒント:エイリアスを使用して単一のコマンドでスクリプトを実行します。
BASHエイリアスを作成する方法
alias sshot='bash -c "/path/to/script/screenshot.sh"'
これで、次のように入力して単にスクリーンショットを撮ることができます。sshot
答え3
KDEのspectacle
スクリーンショットツールを使用すると標準出力に出力できますが、/dev/stdout
代わりに次のものを使用する必要があります-
。
spectacle --background --fullscreen --output /dev/stdout
または短いオプションを使用してください。spectacle -bfo /dev/stdout