Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Format  





2 Support  





3 See also  





4 References  














X BitMap






Deutsch
Français
Italiano
Nederlands

Русский
Suomi
Svenska
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 




In other projects  



Wikimedia Commons
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


X BitMap
A sample XBM file
Filename extension
.xbm
Internet media type
image/x-xbitmap, image/x-xbm[1]
Uniform Type Identifier (UTI)public.xbitmap-image[2]
Type of formatImage file formats
Extended fromC (programming language)
Extended toX PixMap (XPM)

Incomputer graphics, the X Window System used X BitMap (XBM), a plain text binary image format, for storing cursor and icon bitmaps used in the X GUI.[3] The XBM format is superseded by XPM, which first appeared for X11 in 1989.[4]

Format[edit]

XBM files differ markedly from most image files in that they take the form of C source files. This means that they can be compiled directly into an application without any preprocessing steps, but it also makes them far larger than their raw pixel data. The image data is encoded as a comma-separated list of byte values, each written in the C hexadecimal notation, '0x13' for example, so that multiple ASCII characters are used to express a single byte of image information.[5]

XBM data consists of a series of static unsigned char arrays containing the monochrome pixel data. When the format was in common use, an XBM typically appeared in headers (.h files) which featured one array per image stored in the header. The following piece of C code exemplifies the XBM file Blarg displayed in the panel at right:

#define test_width 16
#define test_height 7
static unsigned char test_bits[] = {
0x13, 0x00, 0x15, 0x00, 0x93, 0xcd, 0x55, 0xa5, 0x93, 0xc5, 0x00, 0x80,
0x00, 0x60 };

In place of the usual image-file-format header, XBM files has two or four #define statements. The first two #defines specify the height and width of the bitmap in pixels. The second two, if any, specify the position of any hotspot within the bitmap. (In the case of bitmapped cursors, the "hotspot" refers to the position of the cursor "point", generally at 0,0.)

XBM image data consists of a line of pixel values stored in a static array. Because a single bit represents each pixel (0 for white or 1 for black), each byte in the array contains the information for eight pixels, with the upper left pixel in the bitmap represented by the low bit of the first byte in the array. If the image width does not match a multiple of 8, the extra bits in the last byte of each row are ignored.

Support[edit]

Some web browsers support displaying XBM images as a holdover from the early days of the World Wide Web, when XBM was the minimal non-proprietary image file format. The Arena web browser had full support since version 0.3.34 (25 July 1997).[6] XBM support was removed from Internet Explorer 6, Mozilla Firefox 3.6,[7] and WebKit-based browsers.[8] There is a strong indication that Chromium (and therefore, also, Google Chrome) does not support XBM.[9] Documentation for Opera 2.12 and 6.0 indicates that XBM was at least previously supported.[10][11]

Some image viewers/converters, e.g., XnView, FFmpeg and IrfanView, support XBM.[12] A 48×48 XBM can be converted to Ikon and eventually X-Face with Netpbm tools.[13]

Despite having been superseded by the XPM format, XBM is still used by some modern but lightweight window managers like Openbox to define simple button images in a window's title bar, such as the iconify/minimize, restore, and maximize buttons.[14] XBM is also used in embedded processing (microControllers) to display Icons used in GUIs.[15] ImageMagick[16] supports converting images both to and from XBM. GIMP may be used to create or modify images using the XBM format, and also supports converting images to and from the XBM format.

See also[edit]

References[edit]

  1. ^ .xbm MIME type not registeredatIANA
  • ^ "System-Declared Uniform Type Identifiers". Uniform Type Identifiers Reference. Apple Inc.
  • ^ Steve Kinzler (2005). "Picons Archive". Retrieved 6 January 2014. picons are in either monochrome XBM format or color XPM and GIF formats
  • ^ Daniel Dardailler (15 July 1996). "The XPM Story". Colas Nahaboo and Arnaud Le Hors. Archived from the original on 2 January 2014. Retrieved 1 January 2014.
  • ^ James D. Murray; William van Ryper (April 1996). Encyclopedia of Graphics File Formats, Second Edition. O'Reilly. ISBN 1-56592-161-5. Retrieved 27 February 2014.
  • ^ QingLong, Lu (24 March 1998). "Arena change history". Yggdrasil Computing. Archived from the original on 28 February 2003. Retrieved 27 February 2014.
  • ^ "504822 – Remove XBM support from Mozilla". Mozilla. 12 July 2010. Retrieved 22 October 2014.
  • ^ "Bug 27823 – Remove XBM support". WebKit. 12 January 2010. Retrieved 22 October 2014.
  • ^ "Issue 372898: Chrome displays broken image icon when given direct link to XBM image". chromium - An open-source project to help move the web forward. 26 June 2014. Archived from the original on 21 December 2014. Retrieved 22 October 2014.
  • ^ "Opera Software ASA - Opera version history". Opera Software. 5 February 2013. Retrieved 22 October 2014.
  • ^ "Changelog for Opera 6.0 for Unix TP 1". Opera Software. 26 November 2001. Retrieved 22 October 2014.
  • ^ "Image Formats". FFmpeg General Documentation. 2014. Retrieved 23 February 2014.
  • ^ Jeff Dairiki. "Online X-Face Converter". Retrieved 2 March 2014.
  • ^ "Openbox Theme Documentation". Retrieved 8 October 2014.
  • ^ olikraus. "U8g2 library reference". GitHub. Retrieved 22 May 2017.
  • ^ Aseem Kishore (8 May 2010). "Convert Images Between Formats via the Command Line in Ubuntu". Retrieved 22 May 2017.

  • Retrieved from "https://en.wikipedia.org/w/index.php?title=X_BitMap&oldid=1194542402"

    Categories: 
    Graphics file formats
    X Window System
    Hidden categories: 
    Articles with short description
    Short description is different from Wikidata
    Use dmy dates from August 2020
    Articles with example C code
     



    This page was last edited on 9 January 2024, at 14:24 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki