Linux convert jpeg to bmp, xsetroot complains “bad bitmap format”, how to fix this

bmpconversionjpeglinuxxorg

I am creating a JPEG file, converting to BMP then using with xsetroot, but that is failing.

1) Make a JPEG file

$ convert -size 800x600 xc:transparent \
          -font Bookman-DemiItalic -pointsize 50 \
          -draw "text 25,90 'Please wait.'" -channel RGBA -blur 0x6 \
          -fill steelblue -stroke white \
          -draw "text 10,90 'Please wait.'" -antialias /var/tmp/wait.jpeg;

2) Convert the file from JPEG to bitmap BMP

$ convert /var/tmp/wait.jpeg /var/tmp/wait.bmp;

OR 

$ mogrify -format wait.jpeg wait.another.bmp;

3) Use it

$ xsetroot -bitmap /var/tmp/wait.bmp
xsetroot: bad bitmap format file: /var/tmp/wait.bmp

OR

$ xsetroot -bitmap /var/tmp/wait.another.bmp;
xsetroot: bad bitmap format file: /var/tmp/wait.another.bmp

How do I set that BMP to xsetroot?

Best Answer

I'd try .xbm (X11 bitmap format) as the file type.

See BMP and XBM in http://www.imagemagick.org/script/formats.php

Also, you don't need to use JPEG as an intermediate format. Use .xbm in the first command and omit the second.

Related Question