ngtwewy

简单调用在mac的命令行下面,执行:say hello world 就可以发出"hello world"的声音了,支持中文。文字转为语音新建一个文本文件aa.txt,在终端里在,cd 到该目录,然后执行:say -f aa.txt -o a.m4a 即可生成a.m4a这个语音文件。 -f 后面跟的是需要转换成语音的文件,-o 是 -out 的意思。修改语音声音打开系统偏好设置->辅助功能->语音参考:https://jingyan.baidu.com/article/48b37f8d23eaa61a64648813.htmlhttps://newsn.net/say/mac-command

2020-08-11    macOS    523
ngtwewy

(1)对比(Contrast)对比的基本思想是,要避免页面上的元素太过相似,如果元素(字体、颜色、大小、线宽、形状、空间等)不相同,那就干脆让它们截然不同。要让页面引人注目,对比通常是最重要的一个因素,正是它能使读者首先看到这个页面。(2)重复(Repetition)让设计中的视觉要素在整个作品中重复出现,可以重复颜色、形状、材质、空间关系、线宽、字体、大小和图片,等等。这样一来,既能增加条理性,还可以加强统一性。(3)对齐(Alignment)任何东西都不能在页面上随意安放,每个元素都应当与页面上的另一个元素有某种视觉联系。这样能建立一种清晰、精巧而且清爽的外观。(4)亲密性(Proximi

2020-08-10    UI 设计    304
ngtwewy

FirewallD 简介FirewallD 即Dynamic Firewall Manager of Linux systems,Linux系统的动态防火墙管理器,是 iptables 的前端控制器,用于实现持久的网络流量规则。它提供命令行和图形界面,在大多数 Linux 发行版的仓库中都有。与直接控制 iptables 相比,使用 FirewallD 有两个主要区别:1, FirewallD 使用区域和服务而不是链式规则。2, FirewallD可以动态修改单条规则,而不需要像iptables那样,在修改了规则后必须得全部刷新才可以生效。Firewalld的基本使用启动: systemctl

2020-08-05    Linux    605
ngtwewy

如何使用 Photoshop 设计APP 页面,只要熟悉Photoshop 的常用操作就可以。使用 Photoshop 适合设计高保证的APP UI,适合设计师使用。偏向产品经理的化,应该使用墨刀、Axure、Adobe XD 或 Sketch 等。1,了解设计稿尺寸规范更多设计尺寸细节可以参考:https://javascript.net.cn/article?id=6712,使用 Photoshop 设置APP画板创建 移动设备>iPhone 6 750x1334像素创建相关的参考线,视图>新建参考线 也可以使用矩形工具创建线框图。智能对象的混合选项颜色叠加改变图标颜色。 4,APP 首页

2020-08-05    UI 设计    396
ngtwewy

寻找轻量级的验证器,可以看下 https://github.com/node-modules/parameterhttps://javascript.net.cn/article?id=732安装npm install @hapi/joi --savenpm install joi --save 用法示例const Joi = require('@hapi/joi'); const schema = Joi.object({ username: Joi.string() .alphanum() .min(3) .max(30) .requir

2020-07-05    Node.js    876
ngtwewy

一,简介我们做一个大项目会把项目分解成很多不不同的模块(Module),通常分为Dao,Service,Controller,Model,Utils。有没有其实都可以,叫不叫这些名字也无妨,你要把Service的内容全写在Controller里也没问题,你要把Utils的工具函数分散在所有需要用的文件也Ok,当然久而久之,一堆人做一件事做的多了,就会形成这些约定俗成的部分,就好比形成了人行道,车行道,形成了红绿灯,当然这些终归还没有加进标准里去,所以你遵不遵守,都靠你自己。 所以,项目中是否包含这些模块或者单词,和你的项目结构是否完善一毛钱关系没有。但是当你的项目结构相对完善的时候,你会发现有

2020-06-27    数据结构和算法    451
ngtwewy

插件位置需要注意的是,由于在WordPress中可以配置wp-content/plugins/目录的位置,所以你必须使用plugin_dir_path()和plugins_url()两个函数来获取插件的路径。WordPress 查询数据库查询global $wpdb; $fivesdrafts = $wpdb->get_results("SELECT ID, post_title FROM $wpdb->posts WHERE post_status = 'publish' AND post_author = 1"); foreach ($fivesdrafts as $fivesd

2020-06-27    Wordpress    442
ngtwewy

默认WordPress一共有以下12个表。这里加上了默认的表前缀 wp_ 。wp_commentmeta:存储评论的元数据wp_comments:存储评论wp_links:存储友情链接(Blogroll)wp_options:存储WordPress系统选项和插件、主题配置wp_postmeta:存储文章(包括页面、上传文件、修订)的元数据wp_posts:存储文章(包括页面、上传文件、修订)wp_terms:存储每个目录、标签wp_termsmeta:存储目录、标签的元数据wp_term_relationships:存储每个文章、链接和对应分类的关系wp_term_taxonomy:存储每个目

2020-06-27    Wordpress    375
ngtwewy

什么是 Wordpress 插件 ?插件( Plugins )是如何与 WordPress 交互的WordPress 为插件提供了多种丰富的 APIs。每一种 API( 应用程序接口 )使插件和 WordPress 以不同的方式交互。下面是 WordPress 提供的主要 APIs 以及他们的功能列表:插件: 给插件提供一系列的钩子( hooks )来使用 WordPress 的相关部分。WordPress 包含两种不同类型的钩子: 动作( Actions )和过滤器( Filters )。动作让你可以在运行时的特定时刻触发自定义的插件代码。例如,可以在用户在 WordPress 中注册了一个

2020-06-27    Wordpress    335
ngtwewy

1,菜单函数 wp_nav_menu()wp_nav_menu( array( 'theme_location' => '', //[保留]用于在调用导航菜单时指定注册过的某一个导航菜单名,如果没有指定,则显示第一个 'menu' => 'top_main1', //[可删]使用导航菜单的名称调用菜单,可以是 id, slug, name (按顺序匹配的) 。 'container' => false, //[可删]最外层容器标签名 'container_class' => '',//[可删]最外层容器class名 'c

2020-06-27    Wordpress    418
ngtwewy

安装npm install -g browser-sync 监控静态网站如果您想要监听.css文件, 您需要使用服务器模式。 BrowserSync 将启动一个小型服务器,并提供一个URL来查看您的网站。// --files 路径是相对于运行该命令的项目(目录) browser-sync start --server --files "css/*.css" // 监听css和html文件 browser-sync start --server --files "css/*.css, *.html" //或者 browser-sync start --server --file

2020-05-29    npm    382
ngtwewy

1,菜单函数 wp_nav_menu()wp_nav_menu( array( 'theme_location' => '', //[保留]用于在调用导航菜单时指定注册过的某一个导航菜单名,如果没有指定,则显示第一个 'menu' => 'top_main1', //[可删]使用导航菜单的名称调用菜单,可以是 id, slug, name (按顺序匹配的) 。 'container' => false, //[可删]最外层容器标签名 'container_class' => '',//[

2020-05-22    Wordpress    399
ngtwewy

counter-reset 主要功能是用来标识计数器的作用域的。它只能作用于选择器上,它的值包括两部分:第一部分为计数器的名字;第二部分为计数器的起始值(默认为0),counter-reset还可以同时声明多个计数器比如:counter-reset: count 0 /*标识计数器count从1开始*/ counter-reset: count2 2 /*标识计数器count2 从3开始*/ counter-reset: count1 0 count3 0 count4 0 /*声明了三个计数器,count1,count2,count3*/ counter-increment 表明计数器

2020-05-22    CSS    349
ngtwewy

Webpack 4.0 开始,为了应对 Parcel 等的挑战,配置越来越简单,甚至可以“零配置”。一个简单的 Webpack.config.js 配置文件 :const path = require('path'); module.exports = { entry: './src/index.js', output: { path: path.resolve(__dirname, 'dist'), filename: 'bundle.js' } }; 添加上常用 loader 后的配置文件:const HtmlWebpackPlugin = r

2020-05-21    Webpack    538
ngtwewy

Bundle: Produced from a number of distinct modules, bundles contain the final versions of source files that have already undergone the loading and compilation process.Bundle: bundle通常是由多个不同的模块产生,它是已经加载完毕和被编译后的源代码的最终版本。Bundle Splitting: This process offers one way of optimizing a build, allowing webp

2020-05-21    Webpack    902
随机推荐
Mac下用命令行压缩和解压rar文件的方法
Nodejs和Express.js如何解决js跨域的问题
Bash 常用代码
ffmpeg 下载加密的切片视频 m3u8
通过JS语句判断WEB网站的访问端是电脑还是手机
Webpack 多页面应用(多 HTML 页面 html-webpack-plugin )
macOS下 文件夹合并方法
Photoshop 线稿上色技巧笔记
Chrome开发者工具的实用技巧(译)
PS笔记