Network Working Group S. Leonard Internet-Draft Penango, Inc. Intended Status: Informational October 23, 2014 Expires: April 26, 2015 The Windows Bitmap Media Type draft-seantek-image-bmp-01 Abstract This document registers the image/bmp media type for use with the Windows Bitmap format (BMP), also known as Device-Independent Bitmap (DIB). Originally designed for Microsoft Windows 2.0 and OS/2, these bitmaps contain a single raster graphic in a variety of compressed or uncompressed formats. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." Copyright Notice Copyright (c) 2014 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Leonard Exp. April 26, 2015 [Page 1] Internet-Draft Windows Bitmaps October 2014 1. Introduction Long before the invention of Portable Network Graphics (PNG), Microsoft Corporation and IBM Corporation needed to record images in a format that their applications and operating systems could easily render on low-end machines (Intel 80286). The resulting "BMP" format contains a single raster graphic with basic header fields that can be easily mapped (or "blitted") to locations in memory. As computing moved from 16-bit to 32-bit, BMP evolved to contain 32-bit structures. As the 90s wore on, the venerable BMP got boosts with support for additional color spaces, color profiles, and compression formats. The same basic format can be used to convey 2-bit black-and- white bitmaps with a 1-bit alpha mask from the '80s, and full-color Ultra HD images on leading-edge displays. BMP is a building block of other formats, including Windows Metafiles, Windows Icons, and Windows Cursors. Many implementations of BMP were created because of Windows' commercial success in the 1990s. Usage of the format for interchange has [[probably?]] declined since the advent of PNG (for lossless raster graphics) and JPEG (for lossy raster graphics); however, a large body of free and commercially available BMP artwork exists. Since Windows Icons are a building block of "favicon.ico" Web technology, an implementer would almost certainly need to support this format for basic interoperability. Microsoft publicly documented the BMP format as early as the 1992 Windows 3.1 SDK (in the Windows Metafile documentation). Since 2007 Microsoft has released the format specification [MS-WMF], which includes most components of the Windows Bitmap format, under its Open Specification Promise [MS-OSP]. See Section 2.2.2.9 of [MS-WMF] (DeviceIndependentBitmap Object). BMP data begins with a BITMAPFILEHEADER and is followed by one of the bitmap headers (BITMAPINFOHEADER, BITMAPV4HEADER, or BITMAPV5HEADER), optional color table data, bitmap data, and optional profile data, in that order [BMPSTOR]. [[TODO: Maybe it is worth considering registering Windows cursors, animated cursors, and (re-registering) icons.]] The key word "SHOULD" in this document is to be interpreted as described in [RFC2119]. 3. Windows Bitmap Media Type Registration Application Type name: image Subtype name: bmp Leonard Exp. April 26, 2015 [Page 2] Internet-Draft Windows Bitmaps October 2014 Required parameters: None. Optional parameters: None. Encoding considerations: Binary. Security considerations: Bitmaps have a mostly unremarkable security history. Because BMP data can encapsulate JPEG or PNG data (BI_JPEG, BI_PNG values of the Compression enumeration in Section 2.1.1.7 of [MS- WMF]), the security considerations of JPEG and PNG processing may also apply to BMP. Interoperability considerations: Uncompressed Windows Bitmaps can be rather large. If there is a need to compress an image, modern applications SHOULD consider emitting JPEG or PNG data instead of embedding them in BMP payloads. Published specification: [MS-WMF] and [BMPSTOR]. Applications that use this media type: Office productivity applications; clip art applications; desktop publishing applications; Web browsers; graphics processing applications. Fragment identifier considerations: None. Additional information: Magic number(s): 42 4D ("BM"), meaning "bitmap". The next field (BITMAPFILEHEADER bfSize) is a little-endian DWORD indicating the size of the bitmap content in bytes. File extension(s): .bmp, .dib Macintosh file type code(s): "BMP ", "BMPf", or "BMPp". Apple has promulgated a uniform type identifier (UTI) of "com.microsoft.bmp". Person & email address to contact for further information: Sean Leonard Restrictions on usage: None. Leonard Exp. April 26, 2015 [Page 3] Internet-Draft Windows Bitmaps October 2014 Author/Change controller: Sean Leonard Intended usage: COMMON Provisional registration? No 3. IANA Considerations IANA is asked to register the media type image/bmp in the Standards tree using the application provided in Section 2 of this document. 4. Security Considerations See the registration template for security considerations. 6. References 6.1. Normative References [BMPSTOR] Microsoft Corporation, "Bitmap Storage", MSDN ID dd183391, 2014, . [MS-WMF] Microsoft Corporation, "Windows Metafile Format", [MS-WMF], v20140502 (Rev 11.1), May 2014, . [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC6838] Freed, N., Klensin, J., and T. Hansen, "Media Type Specifications and Registration Procedures", BCP 13, RFC 6838, January 2013. 6.2. Informative References [MS-OSP] Microsoft Corporation, "Open Specification Promise", February 2007, . Leonard Exp. April 26, 2015 [Page 4] Internet-Draft Windows Bitmaps October 2014 Author's Address Sean Leonard Penango, Inc. 5900 Wilshire Boulevard 21st Floor Los Angeles, CA 90036 USA EMail: dev+ietf@seantek.com URI: http://www.penango.com/ Leonard Exp. April 26, 2015 [Page 5]