UNPKG

fonteditor-core

Version:

fonts (ttf, woff, woff2, eot, svg, otf) parse, write, transform, glyph adjust.

44 lines (39 loc) 1.09 kB
/** * @file Buffer和ArrayBuffer转换 * @author mengke01(kekee000@gmail.com) */ /* eslint-disable no-undef */ export default { /** * Buffer转换成ArrayBuffer * * @param {Buffer} buffer 缓冲数组 * @return {ArrayBuffer} */ toArrayBuffer(buffer) { const length = buffer.length; const view = new DataView(new ArrayBuffer(length), 0, length); for (let i = 0, l = length; i < l; i++) { view.setUint8(i, buffer[i], false); } return view.buffer; }, /** * ArrayBuffer转换成Buffer * * @param {ArrayBuffer} arrayBuffer 缓冲数组 * @return {Buffer} */ toBuffer(arrayBuffer) { if (Array.isArray(arrayBuffer)) { return Buffer.from(arrayBuffer); } const length = arrayBuffer.byteLength; const view = new DataView(arrayBuffer, 0, length); const buffer = Buffer.alloc(length); for (let i = 0, l = length; i < l; i++) { buffer[i] = view.getUint8(i, false); } return buffer; } };