-
canvas学习笔记之绘制简单路径
所属栏目:[编程] 日期:2020-05-11 热度:82
绘制线段一般步骤: moveTo(x,y) 移动画笔到指定的坐标点(x,y) lineTo(x,y) 使用直线连接当前端点和指定的坐标点(x,y) stroke() 根据当前的画线样式,绘制当前或已经存在的路径 2 矩形路径 绘制矩形路径一般步骤: rect(x, y, width, height) 矩形路径,坐标[详细]
-
web页面录屏实现
所属栏目:[编程] 日期:2020-05-11 热度:101
副标题#e# 在看到评论后,突然意识到自己没有提前说明,本文可以说是一篇调研学习文,是我自己感觉可行的一套方案,后续会去读读已经开源的一些类似的代码库,补足自己遗漏的一些细节,所以大家可以当作学习文,生产环境慎用。 录屏重现错误场景 如果你的应[详细]
-
Canvas 文本转粒子效果的实现代码
所属栏目:[编程] 日期:2020-05-11 热度:65
副标题#e# 通过粒子来绘制文本让人感觉很有意思,配合粒子的运动更会让这个效果更加酷炫。本文介绍在 canvas 中通过粒子来绘制文本的方法。 实现原理 总的来说要做出将文本变成粒子展示的效果其实很简单,实现的原理就是使用两张 canvas,一张是用户看不到[详细]
-
canvas学习笔记之2d画布基础的实现
所属栏目:[编程] 日期:2020-05-11 热度:153
canvas 是一个可以使用脚本(通常是js)来绘图的HTML元素 canvas 最早由Apple引入WebKit,用于Mac OS X 的 Dashboard和 Safari 如今,所有主流的浏览器都支持它(IE9+,更低版本需引入Explorer Canvas来支持) 1. 开始画图(渲染上下文) canvas 元素创造了[详细]
-
使用HTML5原生对话框元素并轻松创建模态框组件
所属栏目:[编程] 日期:2020-05-11 热度:109
副标题#e# HTML 5.2草案加入了新的dialog元素。但是是一种实验技术。 以前,如果我们想要构建任何形式的模式对话框或对话框,我们需要有一个背景,一个关闭按钮,将事件绑定在对话框中的方式安排我们的标记,找到一种将消息传递出去的方式对话......这真的[详细]
-
详解如何用canvas画一个微笑的表情
所属栏目:[编程] 日期:2020-05-11 热度:179
实习期间让我用canvas画一个表情,比较简单,话不多说直接上代码: bodydiv id=canvas-warpcanvas id=canvas style=display: block; margin: 200px auto;你的浏览器居然不支持Canvas!/canvas/divscriptwindow.onload = function () {var canvas = document[详细]
-
旅行摄影小技巧:远近动静都不怕
所属栏目:[编程] 日期:2020-05-11 热度:151
1.风景和动植物生活环境摄影(1米到无限远) (1)从广角远摄的系列镜头。较好的组合方式是一个24毫米(或28毫米、或35毫米)的广角镜头,一个50毫米的标准镜头和一个80-200毫米的变焦镜头或者在这个范围内各种组合方式的镜头。一个较长的镜头,例如300毫米的,[详细]
-
如何通过PHP实现Des加密算法代码实例
所属栏目:[编程] 日期:2020-05-11 热度:86
副标题#e# 如何通过PHP实现Des加密算法代码实例 注:php7以上不支持了,因为php7去掉了某些函数, 另外变量的{}要改为[] phpclass Des{ /** * 加密方法 * * @param string $str 需要加密的内容 * @param string $key 密钥 * @param bool $toBase64 是否base[详细]
-
禁止直接访问php文件代码分享
所属栏目:[编程] 日期:2020-05-11 热度:197
如何禁止别人直接访问php文件 可以通过判断某一个常量是否被定义或定义的值是否相同,如果未被定义或值不相同则停止脚本运行。 defined('IS_ALLOW') or die('禁止访问!'); 访问结果:禁止访问! 如果需要在其它php文件中进行引用,可以先将常量定义后在进[详细]
-
PHP数组与字符串互相转换实例
所属栏目:[编程] 日期:2020-05-11 热度:165
PHP 数组转字符串,与字符串转数组 php$array = array('lastname', 'email', 'phone');$comma_separated = implode(",", $array);echo $comma_separated; // lastname,email,phone// Empty string when using an empty array:var_dump(implode('hello', ar[详细]
-
php变量与字符串的增删改查操作示例
所属栏目:[编程] 日期:2020-05-11 热度:58
php//告诉浏览器以什么编码方式解析什么类型的文档,防止中文乱码header("Content-type: text/html; charset=utf-8");// 整型的例子// 声明整型$var=123;// 输出一个或者多个字符串echo $var;//但因变量的详细信息,可以一次打印一个或者多个变量的详细信[详细]
-
php将字符串转换为数组实例讲解
所属栏目:[编程] 日期:2020-05-11 热度:98
php将字符串转换为数组 在php中通过使用“explode函数”,将字符串转换为数组,该函数的用法为“explode(delimiter,string)”,其参数delimiter表示为边界上的分隔字符,参数string表示为输入的字符串。 explode说明 explode ( string $delimiter , string[详细]
-
php输出形式实例整理
所属栏目:[编程] 日期:2020-05-11 热度:127
在php中有5种输出形式,分别是echo、print_r、print、var_dump和die。 echo 只能输出字符串等单一数据 不能输出数据类型 不能输出数组等多种数据。 print() 只能输出字符串等单一数据 不能输出数据类型 不能输出数组等多种数据有返回值true/false。 print_[详细]
-
PHP设计模式(九)外观模式Facade实例详解【结构型】
所属栏目:[编程] 日期:2020-05-11 热度:136
副标题#e# 外观模式,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性。 例子1:一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。该电[详细]
-
PHP设计模式(八)装饰器模式Decorator实例详解【结构型】
所属栏目:[编程] 日期:2020-05-11 热度:132
副标题#e# 若你从事过面向对象开发,实现给一个类或对象增加行为,使用继承机制,这是所有面向对象语言的一个基本特性。如果已经存在的一个类缺少某些方法,或者须要给方法添加更多的功能(魅力),你也许会仅仅继承这个类来产生一个新类—这建立在额外的代[详细]
-
PHP设计模式(七)组合模式Composite实例详解【结构型】
所属栏目:[编程] 日期:2020-05-11 热度:147
副标题#e# 在数据结构里面,树结构是很重要,我们可以把树的结构应用到设计模式里面。 例子1:就是多级树形菜单。 例子2:文件和文件夹目录 2.问题 我们可以使用简单的对象组合成复杂的对象,而这个复杂对象有可以组合成更大的对象。我们可以把简单这些对象[详细]
-
通过PHP实现获取访问用户IP
所属栏目:[编程] 日期:2020-05-11 热度:157
在php中自带了一个非常的简单的获取IP地址的全局变量,很多初学都获取IP都使用它了,但是对于这些我们一般用法是满足了,但是对于要求高精度这个函数还是不行的。 这个是最简单的方法,对于开了透明代理之类的是没有办法的,如果内网访问也不能读取正确的[详细]
-
asp.net 编译器错误信息: CS0006: 未能找到元数据文件 该死的.NET
所属栏目:[编程] 日期:2020-05-11 热度:165
编译器错误信息: CS0006: 未能找到元数据文件“C:WINDOWSassemblyGAC_32System.EnterpriseServices2.0.0.0__b03f5f7f11d50a3aSystem.EnterpriseServices.dll” 提示这样的报错 郁闷 下面给出解决的方案 gacutil.exe for dotnet 2.0. 复制代码[详细]
-
C# XML操作 代码大全(读XML,写XML,更新,删除节点,与dataset结合等)第1/2页
所属栏目:[编程] 日期:2020-05-11 热度:116
已知有一个XML文件(bookstore.xml)如下: Corets, Eva 5.95 1、插入节点 往节点中插入一个节点: 复制代码 代码如下: XmlDocument xmlDoc=new XmlDocument(); xmlDoc.Load("bookstore.xml"); XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找[详细]
-
ASP.Net PlaceHolder、Panel等控件未实现INamingContainer,导致FindContro
所属栏目:[编程] 日期:2020-05-11 热度:86
Panel spnButtons = new Panel(); Button btn = new Button(); btn.ID = "btn1"; spnButtons.Controls.Add(btn); // 输出True,表示没有找到控件 Response.Write(spnButtons.FindControl(btn.ID) == null); 而如果是下面的代码就可以了: 复制代码 代码如[详细]
-
c# 操作符?? null coalescing operator
所属栏目:[编程] 日期:2020-05-11 热度:171
我们可以看下下面的这几个示例来看看这个操作符的使用方法: 复制代码 代码如下: string message = "Hello World"; string result = message ?? "null"; //这里的result的内容是 Hello World 再看下面的这个例子子: 复制代码 代码如下: string message = n[详细]
-
ASP.NET通过更改Url进行页面传值的实现代码
所属栏目:[编程] 日期:2020-05-11 热度:117
这里,通过假数据,手动创建的一个类,然后创建的一个集合,放入下拉框,选好值以后,点确定 会在另一个页面产生对应的id 创建一个类: using System;using System.Collections.Generic;using System.Linq;using System.Web;namespace WebApplication1{ pu[详细]
-
使用VSCode开发和调试.NET Core程序的方法
所属栏目:[编程] 日期:2020-05-11 热度:187
副标题#e# 电脑不想装几十个G的 VS2017,那就用 VS Code 吧 目标: 创建一个类库项目 Skany.Core,并用 Nuget 引用第三方组件 Hash 实现加密算法 创建一个单元测试项目 Skany.Tests,引用类库 Skany.Core,并测试其中的方法 创建一个控制台应用程序项目 Ska[详细]
-
ASP.NET Core MVC获取请求的参数方法示例
所属栏目:[编程] 日期:2020-05-11 热度:76
副标题#e# 一次HTTP请求,就是一次标准IO操作。请求是I,是输入;响应式O,是输出。任何web开发框架,其实都是在干这两件事: 接受请求并进行解析获取参数 根据参数进行渲染并输出响应内容 所以我们学习一个框架,我认为最首要的是知道如何从请求中获取参数[详细]
-
ASP.NET中AJAX的异步加载(Demo演示)
所属栏目:[编程] 日期:2020-05-11 热度:103
此次的Demo是一个页面,页面上有两行字,然后后面用AJAX,使用一个下拉框去替换第一行文字[/code] 第一个是被替换的网页 !DOCTYPE htmlhtmlhead meta charset="utf-8" / title/title script type="text/javascript"var xmlHttpRequest;function createXmlH[详细]
