如何用网站做淘宝客滴道网站建设

diannao/2026/1/22 8:20:12/文章来源:
如何用网站做淘宝客,滴道网站建设,网站做推广赚钱项目,怎么接网站建设的单子一、最终效果为了不浪费大家时间#xff0c;先展示最终效果#xff0c;看看是不是大家需要的解决方案#xff1a;标准分辨率#xff1a;其他分辨率的适配情况#xff1a;二、需求1.canvas的内容能全部展示在屏幕上2.尽量能保证图像不变形3.绘制的文字也能自适应三、解决方…一、最终效果为了不浪费大家时间先展示最终效果看看是不是大家需要的解决方案标准分辨率其他分辨率的适配情况二、需求1.canvas的内容能全部展示在屏幕上2.尽量能保证图像不变形3.绘制的文字也能自适应三、解决方案1.我们需要指定一个标准分辨率gameW和gameH2.我们需要获取屏幕的实际分辨率screenWdocument.documentElement.clientWidthscreenHdocument.documentElement.clientHeight3.把canvas的宽高设置为屏幕一样大4.计算屏幕宽度与标准宽度的比值kWscreenW/gameW5.适配之后的绘图区高度可能小于屏幕高度所以会出现黑边。那么我们需要计算黑边的高度dY (screenH - gameH * kW) / 2;    //黑色区域的高度(紫色区域顶部与屏幕顶部的距离)注意当dY小于0时绘图区会超出屏幕范围这时就需要压缩绘图区高度(这时画面会有所变形也是不可避免的事)//我们先根据宽度比例适配let dY (screenH - gameH * kW) / 2; //黑色区域的高度(紫色区域顶部与屏幕顶部的距离)//当dY小于0时我们不得不把画面给纵向压缩了。不然部分内容就会到屏幕外面去了if (dY0){dY0;kHscreenH/gameH;}let scaleH kW; //高度缩放率默认以宽度比例if (kH!1){scaleHkH;}最后还有一个重要的问题字体大小的自适应。我想到的最简单的方法就是使用双缓冲机制我们绘图、绘制文字都在另一个缓冲canvas上进行最后根据scaleH进行缩放把缓冲canvas的内容绘制到屏幕canvas上。四、完整代码核心代码let canvas document.getElementById(main);let ctx canvas.getContext(2d);let screenW document.documentElement.clientWidth; //屏幕宽度let screenH document.documentElement.clientHeight; //屏幕高度let gameW 640, gameH 1280; //标准分辨率,也就是你开发时的分辨率 TODO:这里可以自行修改let kW screenW / gameW; //屏幕宽度与标准宽度的比值let kH 1; //屏幕高度与标准高度的比值//我们先根据宽度比例适配let dY (screenH - gameH * kW) / 2; //黑色区域的高度(紫色区域顶部与屏幕顶部的距离)//当dY小于0时我们不得不把画面给纵向压缩了。不然部分内容就会到屏幕外面去了if (dY 0) {dY 0;kH screenH / gameH;}let scaleH kW; //高度缩放率默认以宽度比例if (kH ! 1) {scaleH kH;}//设置canvas的绝对大小与屏幕一致canvas.width screenW;canvas.height screenH;//缓冲区let canvasBuffer document.createElement(canvas);let ctxBuffer canvasBuffer.getContext(2d);//缓冲区使用标准分辨率canvasBuffer.width gameW;canvasBuffer.height gameH;let timer setInterval(mainLoop, 32); //60FPSlet testImg NewImage(./test.png, 200, 250); //测试图片//游戏主循环function mainLoop() {drawFillRect(ctx, #000, 0, 0, canvas.width, canvas.height); //给canvas刷上一层黑色背景~drawFillRect(ctxBuffer, #FF00FF, 0, 0, gameW, gameH); //给游戏区域刷上一层紫色背景~drawText(ctxBuffer, #FFF, 25, 窗口width screenW, 0, 0);drawText(ctxBuffer, #FFF, 25, 窗口height screenH, 0, 30);drawText(ctxBuffer, #FFF, 25, kW kW, 0, 60);drawText(ctxBuffer, #FFF, 25, kH kH, 0, 90);drawText(ctxBuffer, #FFF, 25, dY dY, 0, 120);drawSrcImg(ctxBuffer, testImg, 100, 100);drawText(ctxBuffer, #000, 32, 柳逐霓, 150, 350);drawSrcImg(ctxBuffer, testImg, 270, 100);drawText(ctxBuffer, #000, 32, 柳逐霓, 320, 350);drawSrcImg(ctxBuffer, testImg, 530, 100);drawText(ctxBuffer, #000, 32, 柳逐霓, 580, 350);drawSrcImg(ctxBuffer, testImg, 100, 400);drawText(ctxBuffer, #000, 32, 柳逐霓, 150, 650);drawSrcImg(ctxBuffer, testImg, 100, 700);drawText(ctxBuffer, #000, 32, 柳逐霓, 150, 950);drawSrcImg(ctxBuffer, testImg, 100, 1000);drawText(ctxBuffer, #000, 32, 柳逐霓, 150, 1250);//双缓冲ctx.drawImage(canvasBuffer, 0, 0, gameW, gameH, 0, dY, screenW, gameH * scaleH);}狡猾的皮球发布了40 篇原创文章 · 获赞 99 · 访问量 12万私信关注标签canvas,drawText,let,HTML5,dY,ctxBuffer,屏幕来源 https://blog.csdn.net/qq_39687901/article/details/104071957

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/89357.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做视频播放网站站酷网站的比赛网页谁做的

可以将 nginx 作为一个非常高效的 HTTP 负载均衡器,将流量分配到多个应用服务器上,并通过 nginx 提高 Web 应用的性能、可扩展性和可靠性。 nginx 可以通过添加一个 upstream,来实现 nginx 的负载均衡功能。 upstream myserver {server 192…

石家庄网站建立兰州网络推广范文

M/M/m排队模型 (单队列多服务台并联服务模型) 数学建模: 基于生灭过程的理论计算和基于事件推进的Matlab模拟仿真思路 原创文章,转载文章请注明出处:©️Sylvan Ding 🎉🎉🎉 摘要 本文研究M/M/m单队列多服务台并…

深圳市制作网站百度关键词多少钱一个月

第十七天课堂笔记 Java常用类 数学类★★★ math java.lang.Math , 数学类 round(x) : 四舍五入 , 把 x加0.5 后向下取整 ceil(x) : 返回大于等于x的最小整数 , 向上取整 floor(x) : 返回小于等于x的最大整数 , 向下取整 sqrt(x) : 平方根 cbrt(x): 立方根 pow(a , b)…

建筑人才网站哪个比较好绍兴网站制作建设

一、界面预览鼠标放到右边的Tab按钮上&#xff0c;文字透明度降低&#xff0c;同时一段文字高亮显示&#xff0c;效果如下&#xff1a;Demo地址&#xff1a;http://5thirtyone.com/sandbox/samples/fadefocus/很绚丽的效果幺&#xff01;二、实现原理将要高亮显示的文字加上<…

淄博网站建设淄博中国十大软件外包公司排名

1. 模型介绍&#xff1a; 生产者消费者模型是操作系统中的一种并发编程模型&#xff0c;用于解决生产者和消费者之间的数据共享和同步问题。 在该模型中&#xff0c;生产者负责生成数据&#xff0c;并将数据放入一个有限的缓冲区中&#xff0c;而消费者则从缓冲区中取出数据进…

怎么设置网站名称长荣建设深圳公司网站

问题说明前几天运维同事反馈开发同事代码在Windows 2008 R2 Datacenter服务器上跑会出现无法正常建立SSL/TLS连接的情况&#xff0c;在自己的电脑上跑是OK的&#xff0c;代码也没有变动过。于是我问他改了服务器上什么配置没有&#xff0c;他说改了注册表也不行。接过这个坑&am…

游戏网站建设多少钱企业邮箱入口163

常用命令 命令说明git submodule add <url> <本地路径>添加子模块git submodule update --init --recursive添加子模块后&#xff0c;同步子模块内容git clone <url> --recurse-submodules克隆带有子模块的项目git submodule init初始化子模块git submodule…

网约车平台app网站建设苏州工业园区社保公积金管理中心

《WEB应用测试》笔记&#xff08;六&#xff09;第三章 软件测试基础 18、软件开发阶段的常见范例&#xff08;1&#xff09;a版&#xff1a;产品主要的和达成共识的部分已经完成。产品准备投入内部使用。&#xff08;2&#xff09;B前期版本&#xff1a;提交进行B验收的构造版…

如何做自适应网站服装网站建设的需求

目录 1、创建一个基本的SpringBoot项目&#xff0c;pom文件导入发送邮件的依赖 2、application.yml 文件配置配置邮件发送信息 3、创建IEmailService 接口文件&#xff0c;定义邮件发送的接口 4、创建IEmailService接口的实现类EmailService.java 文件 5、新建邮件发送模板 ema…

织梦的cms哪些网站西安有哪些做网站的公司好

全世界只有3.14 % 的人关注了爆炸吧知识本文来源&#xff1a;浙江大学两年发表14篇论文&#xff0c;其中一作10篇&#xff0c;包括4篇Top SCI&#xff0c;2篇SCI和4篇EI&#xff1b;持有2项发明专利&#xff0c;出版1部英文专著&#xff0c;斩获2020年度学生学术十大新成果奖第…

什么网站的注册是动态wordpress怎么弄背景

关于CMakeLists.txt的相关介绍,这里不赘诉,本人的出发点是借助于CMakeLists.txt掌握基本的C++构建项目流程,下面是本人根据网络资料以及个人实践掌握的资料。 CMakeList.txt构建C++项目 下图是一个使用CUDA实现hello world的项目,一般来说,一个标准的C++项目包括三个文件…

南宁建站热搜成都有哪些好玩的地方和景点

.NET 6 对 StackOverflow 的优化Intro去年写了一系列的傻逼代码, 其中有一篇 写了多年代码&#xff0c;你会 StackOverflow 吗&#xff0c;昨天一不小心又写了一个 StackOverflow 代码。。然后想把新的代码加到原来 StackOverflow 的示例中&#xff0c;把原来的示例项目改成了 …

网站搭建合同范本中铁建设集团门户网app

给你一个整数数组 nums &#xff0c;和一个表示限制的整数 limit&#xff0c;请你返回最长连续子数组的长度&#xff0c;该子数组中的任意两个元素之间的绝对差必须小于或者等于 limit 。 如果不存在满足条件的子数组&#xff0c;则返回 0 。 示例 1&#xff1a; 输入&#…

网站网络优化服务器网页制作入门与进阶

目录 1、关闭每台虚拟机的防火墙 2、关闭每台虚拟机的Selinux 2.1 什么是SELinux

杭州专业做网站公司台州专业制作网站

动态规划 思路&#xff1a; 选择元素 x&#xff0c;获得其点数&#xff0c;删除 x 1 和 x - 1&#xff0c;则其他的 x 的点数也会被获得&#xff1b;可以将数组转换成一个有序 map&#xff0c;key 为 x&#xff0c; value 为对应所有 x 的和&#xff1b;则问题转换成了不能同…

微网站建设资讯免费全自动推广平台

单片机学习&#xff01; 目录 文章目录 前言 一、输入捕获测频率配置步骤 二、代码示例及注意事项 2.1 RCC开启时钟 2.2 GPIO初始化 2.3 配置时基单元 2.4 配置输入捕获单元 2.5 选择从模式的触发源 2.6 配置从模式为Reset 2.7 开启定时器 总结 前言 博文介绍如何配置输入捕获电…

青岛知名网站建设公司排名长春app制作

在本教程中&#xff0c;您将学习如何使用MySQL ON DELETE CASCADE引用操作来执行外键从多个相关表中删除数据。在上一个教程中&#xff0c;我们学习了如何使用单个DELETE语句从一个或多个相关表中删除数据。但是&#xff0c;MySQL提供了一种更为有效的方法&#xff0c;称为ON D…

南京专业网站建设大连网站设计收费标准

众所周知nginx使用异步&#xff0c;事件驱动方法处理连接。这意味着nginx使用一个worker进程处理多个连接和请求&#xff0c;而不是每一个请求有一个专门的进程或着线程处理(像传统架构的服务器那样&#xff0c;例如apache)。为了实现这个目的&#xff0c;nginx使用非阻塞模式的…

产品销售型企业网站两个网站php 一个空间

说到 Microsoft Bot Framework 其实微软发布了已经有一段时间了&#xff0c;有很多朋友可能还不太了解&#xff0c;微软Bot的功能今天我给大家简单的介绍一下&#xff0c;Bot Framework的开发基础以及如何使用Bot Framework和我们的一个现有的三方客服&#xff08;例如一个微信…

网站视频怎么做上海做推广的公司

009 设置单元格格式之字体(文档下载&#xff1a;关注本公众号&#xff0c;发送消息【教程】即可获得)通过VBA对单元格字体进行设置也是比较常用的方式&#xff0c;那么本节内容我们就来学习如何使用VBA对单元格中的字体进行设置。如图所示&#xff0c;字体设置主要有&#xff0…