An important new scenario enabled by Typed Arrays is to read and render the contents of custom binary file formats that are not natively supported by the browser. As well as the various array types introduced above, Typed Arrays also provide a DataView object that can be used to read and write the contents of an ArrayBuffer in an unstructured way. This is well suited to reading new file formats, which are typically made up of heterogeneous mixes of data.
The Binary File Inspector demo uses DataView to read the PCX file format and render it using a
The Binary File Inspector demo uses DataView to read the PCX file format and render it using a
var buffer = getPCXFileContents();var reader = new DataView(buffer);
// Read the header of the PCX filevar header = {}
// The first section is single bytes header.manufacturer = reader.getUint8(0);header.version = reader.getUint8(1);header.encoding = reader.getUint8(2);header.bitsPerPixel = reader.getUint8(3);
// The next section is Int16 values, each in little-endianheader.xmin = reader.getInt16(4, true);header.ymin = reader.getInt16(6, true);header.xmax = reader.getInt16(8, true);header.ymax = reader.getInt16(10, true);header.hdpi = reader.getInt16(12, true);header.vdpi = reader.getInt16(14, true);
Code similar to the above can be used to add support for rendering a broad range of new data formats in the browser including examples like custom image formats, additional video file formats or domain-specific map data formats.
Комментариев нет:
Отправить комментарий