vue3 tiff.js 打开tif文件

458 阅读1分钟

import Tiff from 'tiff.js'

const openTiffFile = async (path) => {
    pageData.value.path = path
    const response = await fetch(`http://${baseUrl}${path}`)
    const buffer = await response.arrayBuffer()
    const tiff = new Tiff({ buffer })
    // tiff文件中有多张图片
    pageData.value.tiffData.total = tiff.countDirectory()
    for (let i = 0, len = tiff.countDirectory(); i < len; ++i) {
        tiff.setDirectory(i)
        var imgs = tiff.toDataURL() // 转化成base64
        if (imgs) {
            pageData.value.tiffData.filFile.push(imgs)
        }
    }
    //默认展示第一张
    pageData.value.filFile = pageData.value.tiffData.filFile[0]
    if (pageData.value.tiffData.total > 0) {
        pageData.value.tiffData.currentIndex = 1
    }
 // 默认 上一张按钮不可点击
    pageData.value.isDisabled.previous = true
  
}