![為什麼我的 Xvfb 螢幕截圖是黑色並帶有顏色痕跡 (Ubuntu 16.04 LTS)](https://rvso.com/image/168807/%E7%82%BA%E4%BB%80%E9%BA%BC%E6%88%91%E7%9A%84%20Xvfb%20%E8%9E%A2%E5%B9%95%E6%88%AA%E5%9C%96%E6%98%AF%E9%BB%91%E8%89%B2%E4%B8%A6%E5%B8%B6%E6%9C%89%E9%A1%8F%E8%89%B2%E7%97%95%E8%B7%A1%20(Ubuntu%2016.04%20LTS).png)
我正在 Google Cloud 中運行無頭 Ubuntu 16.04 LTS。我需要在背景運行一個需要 GUI 的應用程式。我正在嘗試使用 Xvfb 來允許程式運行,但由於程式需要一些 GUI 輸入,我還需要截取螢幕截圖以查看需要哪些輸入。
但是,我在截圖時遇到了麻煩。為了測試截圖的過程,我安裝並執行 Firefox,導航到 google。我用兩種方式截取螢幕截圖,使用 scrot 和使用 imagemagick。這兩種方法都會產生一個黑色圖像,其中帶有谷歌主頁的提示(見附圖)。顏色和細節阻止使用螢幕截圖來解釋所顯示的內容。是什麼導致缺乏細節?
相關指令如下:
sudo apt-get install xvfb xorg xserver-xorg scrot imagemagick
Xvfb :1 &
export DISPLAY=:1
DISPLAY=:1 firefox https://www.google.com &
DISPLAY=:1 scrot
DISPLAY=:1 import -window root tmp_screenshot.png
答案1
我在使用時也遇到類似的問題xvfb-run
。
根據xvfb-運行(1)手冊頁中,預設解析度為 640x480x8,因此只有 8 位元顏色。請參閱選項 [-s]。
解決方案是將顏色深度強制為 16 位,如下所示:
xvfb-run -s '-screen 0 1280x800x16'