tsdx 将lena.js 重写为ts版本

原文链接: tsdx 将lena.js 重写为ts版本

上一篇: animejs 使用seek和pause 模拟快速执行动画

下一篇: ts import type和export type 解决vite中导入类型报错的问题

https://github.com/ahaoboy/lena-ts

这个库比较小, 而且需要用到, 但是没有ts声明, 单写一个的时间估计也能重构了, 之前有大佬能在极短的时间内将一个库用ts重写一遍, 感觉可以试试将后面有用的有精力的情况下重写

创建项目

pnpx tsdx create lena-ts

上传到git, 然后发布一下, 记得换npm源

up-a1ede157b43edd3ab7ce55ed23cbb13e713.png

大概花了一个小时多一点, 这种小库还是比较简单的

支持提示了, 完美

up-3f9a4b67290c1d0e8cc169e752af633a25a.png

<template>
  <div>
    <img class="w-1/2" id="img" src="/img/test2.jpg" alt="" />
    <canvas class="w-1/2" id="output"></canvas>
  </div>
</template>

<script lang="ts" setup>
import { onMounted } from "vue";
import { filterImage, redrawCanvas, red, invert } from "lena-ts";
import { getSizeAndUrl } from "../gl-join/common";
onMounted(() => {
  const originalImage = document.getElementById("img") as HTMLImageElement;
  originalImage.onload = async () => {
    const width = originalImage.width;
    const height = originalImage.height;
    console.error("width", width, height);
    const filteredImageCanvas = document.getElementById(
      "output"
    ) as HTMLCanvasElement;
    filteredImageCanvas.width = width;
    filteredImageCanvas.height = height;
    const res1 = filterImage(
      filteredImageCanvas,
      red,
      originalImage,
      undefined
    );
    const res2 = redrawCanvas(filteredImageCanvas, invert);
    console.log("res", res1, res2);
    const { url } = await getSizeAndUrl(filteredImageCanvas);
    console.log(url);
  };
});
</script>

<style></style>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值