Не удается получить Firefox для отображения нужного размера в экземпляре xvfb без головы

Я могу нормально запустить экземпляр xvfb

Xvfb :1 -screen 0 800x600x24

Затем я могу запустить firefox и загрузить его правильно, но окно всегда меньше разрешения, которое я установил во время команды xvfb.

firefox http://www.ebay.com --display=:1

enter image description here

Вы можете видеть черную полосу, это полное разрешение. Похоже, что он соответствует тому, что хочет страница, но никогда не заполнит ее полностью.

3
задан 26 June 2012 в 18:49

2 ответа

Вот решение, не красивое, но работает. Использует xdotool для установки размера после запуска Firefox.

Сначала:

xdotool search --onlyvisible firefox

Это отобразит идентификатор одного окна, windowid. Затем:

xdotool windowmove windowid 0 0
xdotool windowsize windowid 1280 720

Сначала вы должны выполнить windowmove, а затем следовать windowsize.

В некоторых случаях, как только я это сделал, размер и положение были правильными навсегда, в других случаях приходилось запускать снова каждый раз, когда я бегал Firefox.

0
ответ дан 26 June 2012 в 18:49

Предположим, что граница есть, и компенсируйте соответственно при захвате. Если вам нужно 1024x768, установите размер экрана 1034x778 и снимите 1024x768

Xvfb :1 -screen 0 1034x778x24 > /dev/null &
ffmpeg -t 1 -s 1024x768 -f x11grab -i :1.0+10,10 -f mjpeg screenshot.png
0
ответ дан 26 June 2012 в 18:49

Другие вопросы по тегам:

Похожие вопросы: