Linux convert jpeg to bmp, xsetroot complains "bad bitmap format", how to fix this?

2

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?

YumYumYum

Posted 2012-04-23T07:39:31.203

Reputation: 1 399

1man xsetroot mentions bitmap whose manpage suggests a simple monochrome bitmap format. I believe your convert commands are creating a different bitmap format - the one commonly used by Microsoft. – RedGrittyBrick – 2012-04-23T08:06:39.570

Answers

4

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.

RedGrittyBrick

Posted 2012-04-23T07:39:31.203

Reputation: 70 632