微信小程序使用lottie-miniprogram插件。显示json格式的动画,手机上锯齿模糊问题

2023-05-16

https://github.com/wechat-miniprogram/lottie-miniprogram

使用办法

  1. 通过 npm 安装:

npm install --save lottie-miniprogram
  1. 传入 canvas 对象用于适配

<canvas id="canvas" type="2d"></canvas>
wxss
覆盖默认的小程序的canvas的宽高样式
#canvas{
   width:120rpx;
   height:120rpx;
}
import lottie from 'lottie-miniprogram'

Page({
  onReady() {
        wx.createSelectorQuery().select('#canvas').node(res => {
            const canvas = res.node
            const context = canvas.getContext('2d')
//避免出现锯齿问题,要写下面的代码
            context.scale(this.getPixelRatio(),this.getPixelRatio())
            canvas.width = 120*this.getPixelRatio()  //120是图片的宽度
            canvas.height = 120*this.getPixelRatio()  //120是图片的高度

            lottie.setup(canvas)
            lottie.loadAnimation({
                loop: true,
                autoplay: true,
                //远程动画。一定要把json格式的文件放到服务器中,并且注意域名是合法的
                path:"htttps//........a.json",
                rendererSettings: {
                    context,
                },
            })
        }).exec()
    },

//获取设备的像素比
    getPixelRatio(){
        let pixelRatio = 0
        wx.getSystemInfo({
            success: function (res) {
                pixelRatio = res.pixelRatio
            },
            fail: function () {
                pixelRatio = 0
            }
        })
        return pixelRatio
    },
})

注意

1,如果出现开发者工具看的很完美但是手机上出现锯齿的问题。肯定是你少写了计算设备像素比。

2,样式也是必不可少的。否则可能会比你预想的大。

3,json文件可以向设计要,并且要传服务器上成为网络地址,域名要是合法的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微信小程序使用lottie-miniprogram插件。显示json格式的动画,手机上锯齿模糊问题 的相关文章

随机推荐

  • windows terminal + oh-my-posh 2022 [保姆级]配置教程

    windows terminal 43 oh my posh 2022 版配置教程 目录 windows terminal 43 oh my posh 2022 版配置教程 总览 1 下载powershell 2 安装字体 下载并安装字体至
  • DataBinding的基本使用(五)

    DataBinding的基本使用 五 DataBinding基本使用包括以下内容 xff1a 单纯的摆脱findviewbyid 绑定基本数据类型及String 绑定Model数据 绑定事件 通过静态方法转换数据类型 通过运算符操作数据 自
  • idea快捷键大全

    实用快捷键 Ctrl 43 或 Ctrl 43 Shift 43 注释 xff08 或者 xff09 Ctrl 43 D 复制行 Ctrl 43 X 删除行 快速修复 alt 43 enter modify cast 代码提示 alt 43
  • 自定义组件实现v-model

    在项目中需要做一个标题展开框 xff0c 点击展开才会显示下面的内容 因为多个地方都需要这样的可展开标题 xff0c 所以做了一个自定义组件 组件需要一个双向绑定的值 xff0c 控制展开 缩放 于是就思考 xff0c 父向子可以用prop
  • linux下提示bash:command not found

    如果新装的系统 xff0c 运行一些很正常的诸如 xff1a shutdown xff0c fdisk的命令时 xff0c 悍然提示 xff1a bash command not found 那么 首先就要考虑root 的 PATH里是否已
  • k8s与pod概念

    此文章为学习过程中根据网上资源整合总结 文章目录 1 为什么需要k8s1 1 应用部署模式的演进1 11 模式对比1 12 各模块介绍 1 2 管理大量的容器 k8s 2 ks8的集群架构3 pod k8s调度的最小单元3 1 一个 pod
  • git在http协议切换账号/输错账号密码如何更改

    掩面哭泣 xff0c 为什么提交总会出问题 这次是因为我push到gerrit上的时候第一次用错成了自己的账号 xff0c 然后想更改成公司的 xff0c 不再跳出登录界面了 xff0c 改不了 因为只有公司账号上设置了agreement
  • 【vue】利用prettier插件规避烦人的eslint报错和代码不规范

    本文主要包括两点 xff1a 大家协同开发代码各异 xff0c eslint加上 64 vue prettier采取recommended 43 prettier组合可使得代码更规范使用vscode的prettier插件在修改保存时自动格式
  • 前端理解base64

    一 背景 xff1a ascii码 字符 61 gt 二进制 计算机中所有数据的存储都是以二进制模式 xff0c 比如想要存储abcd需将其转化为二进制 xff0c 具体用哪些二进制来表示哪个符号 xff0c 有一个统一的编码规则 xff0
  • antd使用相关笔记

    文章目录 modal设置样式无效checkboxform设置值 modal设置样式无效 因为挂在div外 xff0c 所以用less时包在该组件的根div下的css样式设置无效 xff0c 需设置 xff1a span class toke
  • vue实例的生命周期详解

    Vue实例的生命周期 简介 此篇文章说的是最简单的单个VUE组件的生命周期 官网中的长图诠释了Vue实例从创建 xff0c 运行到销毁的整个过程 从vue实例的创建 xff0c 运行 xff0c 销毁期间 xff0c 总是伴随着各种各样的事
  • vue实例和组件的区别

    引言 上次写vue单组件项和路由的时候 xff0c 想到一个问题 new Vue 是一个Vue实例 xff0c 那么组件是Vue实例吗 xff1f 分析 之前说了 xff0c 有两种开发方式 一个是基于浏览器的 xff08 即直接在scri
  • 全面分析ajax跨域访问原因及解决方案

    文章目录 引言什么是ajax跨域问题为什么会发生ajax跨域访问解决思路方法一 xff1a 浏览器禁止检查方法二 xff1a jsonp解决 jsonp是什么 用jsonp后台需要改动 jsonp原理 jsonp有什么弊端 方法三 xff1
  • 前端工程化--commit代码校验配置

    需求 配置使得在git commit m 39 xxxx 时 xff0c 先执行1 eslint检测 2 commit规范检测 xff0c 两个条件通过后才commit成功 xff0c 才可以push代码 是前端工程化的一部分 xff0c
  • flutter错误: 找不到或无法加载主类 org.gradle.wrapper.GradleWrapperMain

    项目莫名其妙的运行时不能使用 终端 gradlew 命令 输入命令就报错 找不到或无法加载主类 org gradle wrapper GradleWrapperMain 正常的项目中是有 gradle 的jar和properties文件的
  • ChatGPT报错“Sorry You Have Been Blocked“ 解决办法

    5月以来 xff0c 很多用户在使用ChatGPT时遇到如上图所示的错误 这篇文章将讨论为什么会报这个错误以及如何尝试解决它 以下是最常见的原因 xff1a 使用VPN或代理服务浏览器问题 xff0c 例如版本过时或不兼容可疑的浏览模式触发
  • resultMap(12)

    前记 xff1a 这是很早之前自学学习myBatis时的笔记 xff0c 内容比较基础 xff0c 适合新手 xff0c 内容基本是来自网络 xff0c 如有雷同 xff0c 敬请谅解 xff01 resultMap resultType
  • 服务器性能之IO性能指标含义

    最近在做日志易可视化展示 xff0c 涉及到服务器性能指标分析 xff0c 需要了解各个指标的含义 xff0c 下面是I O指标的含义 xff0c 记录下以备后用 xff1a rrqm s 每秒对该设备的读请求被合并次数 xff0c 文件系
  • Android进阶-apk系统签名

    一 来源 有时候我们开发一个apk需要系统权限 xff0c 于是我们便会在apk的AndroidManifest xml中添加如下属性 xff1a android sharedUserId 61 34 android uid system
  • 微信小程序使用lottie-miniprogram插件。显示json格式的动画,手机上锯齿模糊问题

    https github com wechat miniprogram lottie miniprogram 使用办法 通过 npm 安装 xff1a npm install save lottie miniprogram 传入 canva