ウィンドウのコマンドを使用して、bashスクリプトからウィンドウをpngとしてキャプチャしたいと思います。ID。この場合、ウィンドウはトップパネルです。使用した色はgnome-screenshot
見た画像の通り正確です...
ところでキャプチャパネルを通って行くとimport
、または xwd
+ convert
、私は次のイメージを取得します..
なぜこのような色の違いがあるのですか?
import
どちらもconvert
パッケージに属していますimagemagick
...
Ubuntuリポジトリでウィンドウをキャプチャできる他の項目が見つかりませんでした。ID...だから詰まった。 (gnome-screenshot
その機能はありません。)...ここで何が起こっているのかを知るのが良いでしょう(例:透明画像、私はそれについてほとんど知りません。)...しかし、とにかく、それはただのお勧めです解決策キャプチャユーティリティは成功することができます。そのユーティリティを通過できる必要があります。ID。
以下は、イメージキャプチャを作成して表示する方法の例です。
import -window "$(wmctrl -l |grep "Top Expanded Edge Panel" |awk '{print $1}')" screen.png
display screen.png
答え1
コンソールから画面を作成するためのscrot
。バッグから出てくる道具ではないのでimagemagick
色も大丈夫かもしれません。
問題があります。scrot
フルスクリーンスクリーンショットしか撮影できないため、フルスクリーンスクリーンショットを撮り、必要なウィンドウ領域を切り取ります。もちろん、切り取るためにはimagemagick
バッグに入っている道具以外には使用しませんnetpbm
。
#!/bin/bash
unset x y w h
eval $(xwininfo -id $(wmctrl -l |grep "Top Expanded Edge Panel" |awk '{print $1}') |
sed -ne "s/^ \+Absolute upper-left X: \+\([0-9]\+\).*/x=\1/p" \
-e "s/^ \+Absolute upper-left Y: \+\([0-9]\+\).*/y=\1/p" \
-e "s/^ \+Width: \+\([0-9]\+\).*/w=\1/p" \
-e "s/^ \+Height: \+\([0-9]\+\).*/h=\1/p" )
scrot scrot.pnm
< scrot.pnm pnmcut -left $x -top $y -width $w -height $h | pnmtopng > scrot_cropped.png
display scrot_cropped.png
scrot
色が変わらずにスクリーンショットを作成できることを確認できますか?その場合、このスクリプトは操作を実行し、目的のウィンドウ画面をインポートする必要があります。
@fredの答えに触発されたスクリプト:正確なウィンドウサイズと位置(トリムを含む)をどのように知ることができますか?そして@JRW:画像を分割するためのOneliner?