最新文章
图层混合模式虽有固定的计算公式,但是一幅图中色彩的数据十分庞大,如果靠计算得出现最终效果,是不切实际的,所以平时只能用经验法来运用混合模式。  正常和溶解很好理解,其中溶解要配合调整图层不透明度来实现效果。 此外剩下的混合模式归纳为“加深效果”、“减淡效果”、“对比比较”、“色彩效果” 变暗模式(加深效果): 1. 变暗 用下层暗色替换上层亮色。 2. 正片叠底 除了白色之外的区域都会变暗。 3. 颜色加深 加强深色区域。 4. 线性加深 和正片叠
野猪佩奇 2019-06-08 软件技巧 1769
https://www.bilibili.com/video/av11019747
野猪佩奇 2019-06-07 UI 设计 1232
https://www.bilibili.com/video/av11019747
野猪佩奇 2019-06-07 UI 设计 1146
数据采集时,有时候需要延时操作,实现类似sleep()这样的函数: function sleep(ms) { return new Promise((resolve) = { setTimeout(() = { resolve('sleep for ' + ms + ' ms'); }, ms); }); } async function main() { await sleep(1500); ... }
野猪佩奇 2019-06-04 Node.js 1442
替换和分组:替换使用 | 字符来允许在两个或多个替换选项之间进行选择。/^Chapter|Section [1-9][0-9]{0,1}$/上面的正则表达式要么匹配行首的单词 Chapter,要么匹配行尾的单词 Section 及跟在其后的任何数字。如果输入字符串是 Chapter 22,那么上面的表达式只匹配单词 Chapter。如果输入字符串是 Section 22,那么该表达式匹配 Section 22。可以使用括号来限制替换的范围,即,确保它只应用于两个单词 Chapter 和 Section。/^(Chapter|Section) [1-9][0-9]{0,1}$/尽管这些表达式正常
野猪佩奇 2019-06-04 开发技巧 1211
本文方法已经失效 macOS自带的PHP没有freetype扩展,需要自己安装。 之前使用 https://php-osx.liip.ch/#install 安装PHP。 现在系统升级到 macOS Mojave后。 提示: [WARNING] Detected macOS Mojave 10.14. There are serious issues with it, due to the original apache not loading foreign libraries anymore. PHP within apache will most certainly not work a
野猪佩奇 2019-06-02 运维 1312
一,什么是单元测试单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。总的来说,单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。 二,为什么要进行单元测试先说为什么浏览器可以直接访问,但为什么还要单元测试?第一浏览器访问其实是手工操作,简单的页面当然访问一下就好了,可是如果你要测的功能很复杂咋办?你要是忘了
野猪佩奇 2019-05-26 Node.js 1138
有一个表有十万条数据,SELECT COUNT(*) FROM t_tablename; 时间长达10秒以上。 解决办法,把 Primary Key 加上 Unique 约束了,速度变成30毫秒了,解决了。 不太清楚原因,先记着。 参考:https://blog.csdn.net/landstream/article/details/79673176
野猪佩奇 2019-05-17 MySQL 1248
PR 效果的 超级键 颜色键, 只要在视频片段的效果里,主要颜色用吸管工具取色一小绿色背景就可以了。 下次,找个绿幕试试。 网上看到有人说,白色背景只能画遮罩抠,一帧帧做关键帧。 先放下,等待下次完善。 为什么要绿色或者蓝色背景 绿幕或者蓝幕抠像属于色键抠像(Chroma key,在像AE或者nuke这种合成软件一般叫Color key),是用于视频抠像的一种方式,如果是单帧的静态图当然不会没事找事玩绿幕啦,这种方式确实有它不精确的地方,比如你穿白衣服站绿幕前面会被反射的超级绿,后期很难修,再比如拍完需要大规模较色,像keylight这种著名的抠像插件都是要有自动颜
野猪佩奇 2019-05-06 软件技巧 5395
颜色替换的两种方法: 第一种,是直接使用 画笔工具所在组中的,颜色替换工具。 第二种,使用智能锁套工具选中要替换颜色的部分,新建图层,使用油漆桶工具填充颜色,图层混合模式选择“颜色”,使用图层蒙版,可以进一步修改填充颜色的细节和边界。
野猪佩奇 2019-05-06 软件技巧 895
重写了爬虫,程序逻辑如下: 1,爬虫抓取文章列表第一页。 2,获取文章列表。 3,遍历文章。 4,把文章列表中文章的缩略图下载保存。 5,把文章内容中的图片全部下载保存,并用图片新路径,替换文章内容中的图片地址。 6,保存文章内容到数据库。 7,处理完文章列表后,递归执行下一页文章列表。 var http = require('http'); var http = require('https'); var fs = require('fs'); var cheerio = require('cheerio'); var pool = require('./mys
野猪佩奇 2019-05-03 Node.js 1139
1,智能对象 1.1,当智能对象缩小后,再次放大,智能对象不会模糊。普通对象会模糊。 所以当一个图层不确定大小的时候,一定要设置成智能对象。 1.2,可以在智能对象里创建智能对象,把智能对象当作一个psb智能对象,在当前文件以外修改。 1.3,智能对象复制有“复制图层”和“通过拷贝新建智能对象”的区别。复制图层的话,可以修改一个智能对象,影响多个图层,通过拷贝新建的图层不会受到影响。 通过拷贝新建智能对象路径: 图层- 智能对象- 通过拷贝新建智能对象 1.4 文件- 脚本- 将文件载入堆栈,选中多个文件,选中尝试自动对齐源图
野猪佩奇 2019-04-30 软件技巧 1025
https://github.com/skaterdav85/validatorjs 这个貌似是github上星数,最高的验证器了。 果然没有让我失望,很类似Laravel和ThinkPHP中的数据验证器。唯一的缺陷,是没有场景这种功能。 let Validator = require('validatorjs'); let data = { name: '', myemail: 'johndoe@sss.ss', age: 12 }; let rules = { name: 'required', myemail: 'required|
野猪佩奇 2019-04-25 Node.js 1260
安装 npm install i18n --save i18n.js var i18n = require('i18n'); i18n.configure({   locales: ['en-US', 'zh-CN'],  // setup some locales - other locales default to en_US silently   // defaultLocale: 'zh-CN',   defaultLocale: 'en-US',   directory: __dirname + '/locales',     updateFiles: fal
野猪佩奇 2019-04-25 Node.js 2789
一、URL 设计1.1 动词 + 宾语RESTful 的核心思想就是,客户端发出的数据操作指令都是"动词 + 宾语"的结构。比如,GET /articles这个命令,GET是动词,/articles是宾语。动词通常就是五种 HTTP 方法,对应 CRUD 操作。GET:读取(Read) POST:新建(Create) PUT:更新(Update) PATCH:更新(Update),通常是部分更新 DELETE:删除(Delete) 根据 HTTP 规范,动词一律大写。1.2 动词的覆盖有些客户端只能使用GET和POST这两种方法。服务器必须接受POST模拟其他三个方法(PUT、PAT
野猪佩奇 2019-04-24 开发技巧 1391
JSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案,本文介绍它的原理和用法。一、跨域认证的问题互联网服务离不开用户认证。一般流程是下面这样。1、用户向服务器发送用户名和密码。2、服务器验证通过后,在当前对话(session)里面保存相关数据,比如用户角色、登录时间等等。3、服务器向用户返回一个 session_id,写入用户的 Cookie。4、用户随后的每一次请求,都会通过 Cookie,将 session_id 传回服务器。5、服务器收到 session_id,找到前期保存的数据,由此得知用户的身份。这种模式的问题在于,扩展性(scaling)不好。单机当然没有问题
野猪佩奇 2019-04-24 开发技巧 1102
一,简介 ORM 是"对象-关系映射"(Object/Relational Mapping) 的缩写,就是通过实例对象的语法,完成关系型数据库的操作的技术。面向对象编程把所有实体看成对象(object),关系型数据库则是采用实体之间的关系(relation)连接数据。很早就有人提出,关系也可以用对象表达,这样的话,就能使用面向对象编程,来操作关系型数据库。 ORM 把数据库映射成对象: 数据库的表(table) -- 类(class) 记录(record,行数据)-- 对象(object) 字段(field)-- 对象的属性(attribute) 二,举例 举例来说,下面是一行 S
野猪佩奇 2019-04-19 Node.js 2408
1,可以先画个草图,然后在新图层上画线。2,一笔下去对就是对,错就是错,尽量不要涂抹修改,画错了直接撤销。 这个很值得学习。这个 B站上的教程截图 https://www.bilibili.com/video/av44864405 3,手尽量不要放在板子上,要悬空,这个要试试。4, 不要蹭线,跟问题三有点类似。 https://www.bilibili.com/video/av38127103 这里有介绍因为小白在观察一个物体的时候,总是会盯着边缘细节去看,这里是直的,这里是弯的,这里又弯一点,体现在画面上,就是一堆密密麻麻吗的麻花线。而正确的画法应该是,观察物体大的线条形式走向,用少量的线
野猪佩奇 2019-04-10 UI 设计 1348
把正常的视频改成慢动作视频,叫做“升格”,搜索一下,大意如下,升格镜头指的是电影摄影中的一种技术手段,改变正常的拍摄速度,比如高于24格/秒,这就是升格。 升格摄影是变速摄影的一种。在拍摄时使胶片运行速度高于正常每秒24格速率,视银幕艺术效果的要求,可提高至每秒48格甚至 300 格。这样,以正常的每秒24格速率放映,可获得实际运行过程缓慢,甚至超慢速的效果。取得特殊银幕效果的一种电影摄影方法。 Adobe Premiere如何做升格视频做慢动作: 第一步:在序列中,右击视频片段,选择“剪辑速度/持续时间” 第二步,修改速
野猪佩奇 2019-04-09 软件技巧 2344
随机推荐
JavaScript 和 CSS 检测横屏适配
Express 使用 body-parser 处理 HTTP 请求
JavaScript 私有方法和私有属性
JavaScript 使用剪切板
JavaScript location对象
MySQL 数据库中货币单位如何存储
Node.js crypto 模块
使用 MySQL 线程池对压力测试的影响