加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
index.d.ts 1.92 KB
一键复制 编辑 原始数据 按行查看 历史
type Application = {
application: {
blockSize: number
blocks: number[]
codes: number[]
id: string
}
}
type Frame = {
gce: {
byteSize: number
codes: number[]
delay: number
terminator: number
transparentColorIndex: number
extras: {
userInput: boolean
transparentColorGiven: boolean
future: number
disposal: number
}
}
image: {
code: number
data: {
minCodeSize: number
blocks: number[]
}
descriptor: {
top: number
left: number
width: number
height: number
lct: {
exists: boolean
future: number
interlaced: boolean
size: number
sort: boolean
}
}
}
}
export type ParsedGif = {
frames: (Application | Frame)[]
gct: [number, number, number][]
header: {
signature: string
version: string
}
lsd: {
backgroundColorIndex: number
gct: {
exists: boolean
resolution: number
size: number
sort: boolean
}
height: number
width: number
pixelAspectRatio: number
}
}
export type ParsedFrame = {
dims: { width: number; height: number; top: number; left: number }
colorTable: [number, number, number][]
delay: number
disposalType: number
patch: Uint8ClampedArray
pixels: number[]
transparentIndex: number
}
export type ParsedFrameWithoutPatch = Omit<ParsedFrame, 'patch'>
export function parseGIF(arrayBuffer: ArrayBuffer): ParsedGif
export function decompressFrames(
parsedGif: ParsedGif,
buildImagePatches: true
): ParsedFrame[]
export function decompressFrames(
parsedGif: ParsedGif,
buildImagePatches: false
): ParsedFrameWithoutPatch[]
export function decompressFrame(
frame: Frame,
gct: [number, number, number][],
buildImagePatches: true
): ParsedFrame
export function decompressFrame(
frame: Frame,
gct: [number, number, number][],
buildImagePatches: false
): ParsedFrameWithoutPatch
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化