Alex

有的故事值得一直说下去.
Home » Latest Posts

一、关于WP REST API wordpress已经不仅仅是一个博客网站程序,而是一个强大的CMS系统。开源、完善的社区、丰富的接口等等优势正将wordpress推向更高更广泛的领域。

WP REST API 是wordpress的一个插件,为wordpress提供对外标准的RESTFul接口,随着RESTFul的畅行和各种前端框架的出现,WP REST API可以让wordpress不仅仅存在WEB端,可以让wordpress不仅仅履行一个博客功能,而是可以让wordpress程序作为后台终端(BackEnd),然后以各种应用的形式实现在各种各样的设备中。

这里引用WP REST API V2 官网(http://v2.wp-api.org/)的一段介绍:

This plugin provides an easy to use REST API, available via HTTP. Grab your site’s data in simple JSON format, including users, posts, taxonomies and more. Retrieving or updating data is as simple as sending a HTTP request.

WP REST API 最新的是第二个版本(V2),而在wordpress的最新版本4.4中,也已经内置了WP REST API的部分功能和实现,在不久的将来,也许是wordpress 4.5 或 4.6版本中,将会把WP REST API 完全植入。

非常激动,拭目以待。

二、WP Rest API 安装与使用 既然现在的WP REST API是以一个插件形式存在,那么安装就显得非常简单了。

直接在wordpress 插件中搜索”WordPress REST API” ,选择安装“WordPress REST API (Version 2) ” ,安装完成后激活。另外,在wordpress后台“设置”》“固定链接”中设置固定连接为“文章名”。

OK。你的wordpress站点此时就已经有一个可以直接使用的API接口了。WP REST API 默认提供了一套常用的接口,包括文章,页面,文章版本,用户,媒体,文章类型,评论,分类,标签等。

比如,如果想要获取wordpress中最新的文章,你可以直接在浏览器中输入:

http://www.website.com/wp-json/wp/v2/posts

这时会返回website站点最新的十篇文章。

如果想获取指定的文章(按文章ID),可以输入:

http://www.website.com/wp-json/wp/v2/posts/1

这时可以得到ID为1的文章的详细数据。

更多的API接口的使用,我们放在本文第三部分讲。

网址后面的wp-json/wp/v2一串是是WP REST API自定义的命名空间(namespace)和路由。在目前阶段,我们先不用去管命令空间和路由是什么,先学会操作WP REST API内置给我们使用的这些API接口。这些API接口的参考可以在WP REST API Reference 找到。

注:本文介绍的是WP REST API V2 版本,wordpress 4.4以上版本

三、工具 在介绍WP REST API 接口前,我们先介绍一个非常有用的工具— Postman。

Postman是一款功能强大的网页调试与发送网页HTTP请求的工具。Postman在chrome中以插件和应用两种形式同时存在,都是免费下载使用。QQ浏览器中也有Postman插件。只要下载安装插件即可。在进行RESTFull接口相关的开发测试中,Postman可以为你提供极大的方便,强烈推荐使用。

四、常用WP REST API 接口使用介绍(获取数据) 此段介绍WP REST API 常用的获取数据(GET)的接口,提交数据因涉及到较为复杂的认证,此篇文章限于篇幅,后面看情况,再计划出一篇专门的WP REST API认证的文章单独介绍。

1、文章 (1)获取最新文章(默认获取到最新的10篇文章)

http://www.website.com/wp-json/wp/v2/posts

http://www.website.com/wp-json/wp/v2/posts?page=1

效果相同,page用于指定页数,WP REST API 默认返回10条数据,用page指定数据获取的游标。如

http://www.website.com/wp-json/wp/v2/posts?page=2

可取回最新的第11条数据到第20条数据,以此类推。

(2)设置获取的每页文章数量及分页

http://www.website.com/wp-json/wp/v2/posts?filter[posts_per_page]=5

filter[posts_per_page]=5 用于指定返回文章每页的数量,这里指定每页数量为5篇。

filter[posts_per_page]与page联合使用:

http://www.website.com/wp-json/wp/v2/posts?filter[posts_per_page]=5&page=2

(3)获取指定分类的文章

http://www.website.com/wp-json/wp/v2/posts?filter[cat]=2

filter[cat]=2 指定分类ID为2 ,返回分类ID为2的文章。

分类ID是每个分类目录在创建时自动生成的ID,在wordpress后台“文章”==》“分类目录”中,把鼠标放在分类名称上面,页面下方会出现一个网址,网址中的参数tag_ID=2就是这个分类名称的分类ID。如果没有出现网址,可以点击分类名称下的“编辑”,然后查看网页地址栏,同样可以得到tag_ID=2。下面的标签ID的获得方法也一样。

(4)获取指定标签的文章

http://www.website.com/wp-json/wp/v2/posts?filter[tag]=library

filter[tag]=library 指定标签名为“library”的文章

(5)获取指定分类和有指定标签的文章

http://www.website.com/wp-json/wp/v2/posts?filter[cat]=2&filter[tag]=library

上面两个结合一起,可以得到更具体精确的文章。

(6)获取指定日期的文章

http://www.website.com/wp-json/wp/v2/posts?filter[year]=2016&filter[monthnum]=03

filter[year]=2016&filter[monthnum]=03 设置指定的日期

(7)获取指定作者的文章

http://www.website.com/wp-json/wp/v2/posts?filter[author_name]=jinyun

filter[author_name]=jinyun设置指定作者名字

(8)按关键词搜索文章

http://www.website.com/wp-json/wp/v2/posts?filter[s]=金云

filter[s]=金云 :按给定的关键词搜索文章,返回包含“金云”关键词的文章。

(9)获取随机文章

http://www.website.com/wp-json/wp/v2/posts?filter[orderby]=rand

其中orderby还可以为指定的字段排序

(10)获取相关文章

在网站中,在做SEO优化和页面内容布局时,获取相关文章是比较常见的,可以通过以上几个条件组合来达到获取相关文章的效果。

按标签获取相关文章:

http://www.website.com/wp-json/wp/v2/posts?filter[orderby]=rand&filter[tag]=library&filter[posts_per_page]=6

按分类获取相关文章:

http://www.website.com/wp-json/wp/v2/posts?filter[orderby]=rand&filter[cat]=2&filter[posts_per_page]=6

(11)获取指定文章的数据

http://www.website.com/wp-json/wp/v2/posts/189

得到ID为189的文章数据

(12)获取某日的所有文章

http://www.test.com/wp-json/wp/v2/posts?before=2019-05-12T23:59:59&after=2019-05-12T00:00:00

(13) 获取一段日期内的所有文章

同接口12一样

2、分类和标签 (1)获取所有的分类

http://www.website.com/wp-json/wp/v2/categories

(2)获取指定分类ID的分类信息

http://www.website.com/wp-json/wp/v2/categories/2

(3)获取所有的标签

http://www.website.com/wp-json/wp/v2/tags

(4)获取指定标签ID的标签信息

http://www.website.com/wp-json/wp/v2/tags/3

3、媒体文件 (1)获取所有的媒体信息

http://www.website.com/wp-json/wp/v2/media

(2)获取指定媒体ID的媒体信息

http://www.website.com/wp-json/wp/v2/media/17

4、页面 (1)获取所有的页面信息

http://www.website.com/wp-json/wp/v2/pages

(2)获取指定页面ID的页面信息

http://www.website.com/wp-json/wp/v2/pages/289

5、类型 (1)获取当前wordpress所有的内容类型

http://www.website.com/wp-json/wp/v2/types

一般情况下会返回post,page和attachment三种类型

(2)获取指定类型

http://www.website.com/wp-json/wp/v2/types/post

6、评论 (1)获取所有评论信息

http://www.website.com/wp-json/wp/v2/comments

(2)获取指定评论ID的单条评论信息

http://www.website.com/wp-json/wp/v2/comments/2

7、用户 (1)获取所有的用户信息

http://www.website.com/wp-json/wp/v2/users

(2)获取指定用户ID的用户信息

http://www.website.com/wp-json/wp/v2/users/1

以上即是WP REST API 内置API接口最为常用的接口数据获取方法。

五、文章数据分析 我们在第三部分讲了如何通过各种接口和参数去获取我们想要的东西,而对于获得到的东西,我们还不是十分了解,因此,有必要讲讲我们所获取的JSON数据到底是什么鬼。当然,作为我们只讲其中一种类型的数据即可,其他都是一样的看,无庸置疑,我们当然是讲最为常用的Post。

我们在使用

http://www.website.com/wp-json/wp/v2/posts

获取数据时,可以看到返回结果是一个数组。这种API我叫它为“集合型”API,类似的有,users,comments,categories,tags,types,media,pages等。

而当我们加上具体的ID后,如

http://www.fymedia.tk/wp-json/wp/v2/posts/189

返回的是一个JSON对象,里面就是这篇文章的所有信息。类似地,users,comments,categories,tags,types,media,pages等也同样。“集合型”API返回的是这些单个JSON对象的集合。认清这一点,对我们使用第三方框架进行WP REST API 扩展开发非常重要。

下面,我们就来看一下一篇文章的JSON数据,上面的请求返回结果如下:

如上图所示,我们可以得到一篇文章的所有信息,包括ID,标题,摘要,内容,别名,网址,类型,状态等等。

我们仔细看一下这个JSON内容后会发现,文章的特色图像是以特色图像的ID给出的,分类,标签也同样是以ID形式给出,如果我们想要得到这篇文章的特色图像和分类、标签这些信息,我们还要另外按前面介绍的接口去把这些信息找出来,很明显,这不但加大了工作量和整合难度,也增加了连接数,在实际开发中,会带来一定的性能问题,这是第一个问题。第二个问题,这么多的信息,我们不禁想问:“有必要吗?”,最经常的情况,在展示给用户浏览时,我们其实只需要ID(作为唯一识别,传值)、标题、摘要、内容、分类、标签、图片、作者、链接地址就够了。这么多的数据,如果不做优化,在传输时也带来数据加载的延迟。

因此,总结一下,WP REST API虽然给我们提供了这一套标准的接口,但也只能作为标准参考而已,在实际使用中,还需要根据实际情况做个性化定制。

个性化定制通常包括:自定义字段、修改返回结果及增加自定义路由等。本篇是入门篇,暂不涉及,将会在后面别文介绍。

六、资源 1、官方文档:http://v2.wp-api.org/

2、WP REST API 插件:https://wordpress.org/plugins/rest-api/

3、WP REST API Github : https://github.com/WP-API/WP-API ————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/qq_29180565/article/details/90043331

最近许多小伙伴收到华侨银行发来的邮件,要求提供新加坡的住址证明。若未能及时提供,银行将关闭其账户。然而,大多数小伙伴并不居住或工作于新加坡,实际上这相当于被迫关户。因此,建议尽早转出华侨银行的存款。接下来,博主将简单整理并分享在转出过程中遇到的问题,欢迎大家补充。

86320ad9cfb92ae6.png

华侨银行存款转出 这里分3种情况,请对号入座。

只有SGD余额

这种最简单,大致方法有:

将SGD转到其他新加坡银行账户(比如WISE) 将SGD转到各大券商,比如新加坡盈立或者新加坡长桥 直接扫支付宝付款码进行消费 支付宝绑定360借记卡消费 GSA有非SGD货币,且大于100

如果你的GSA账户里面有其他货币,比如美元,且大于100,这个也比较简单,可点击【转账 - 本地转账 - 将GSA美元涨到自己的其他SGD账户(比如转到360)】,然后360账户再按照上面的方法操作转出即可。

如果GSA转到360也失败了,可能是您的账户已经限制只出不进,那么只能走跨境汇款或者参考下面的方法!!!

GSA有非SGD货币,但小于100

如果您GSA账户有其他货币余额,但是金额小于100,比如只有70多美元,这个情况就比较麻烦了,博主尝试了以下方法均失败:

支付宝绑定360借记卡付款CNY,提示余额不足(没走GSA美元):失败 直接扫支付宝付款码消费CNY,无法选择GSA账户:失败 尝试将GSA USD兑换为SGD,提示要求最低100 USD:失败 尝试进行跨境汇款,提示要求最低100 USD:失败 尝试直接转支付宝,选项了无法选择GSA账户:失败 以上方法均失败后,博主尝试拿360借记卡直接去国外网站消费美元,最后将不足100美元的GSA余额消费掉了,博主是直接给Stripe商户付款,理论上其他国外商家也可以,前提是商家支持的收款货币和您GSA一致。

比如国外商家支持USD付款,您的GSA余额也是USD,这样货币匹配的情况下用360借记卡应该是可以直接消费的。

华侨银行替代方案 部分小伙伴有境外消费需求或者炒股啥的,这时候可能需要用到海外银行账户,这里推荐一些博主用过的一些替代方法。

WISE

Wise是一家英国金融科技公司,可以提供多种货币账户,比如英镑、欧元、美元、新币等银行账户。

WISE开户教程:https://blog.xiaoz.org/archives/18846

奕丰环球银行(iFAST)

奕丰环球银行(www.ifastgb.com)是一家总部位于英国的持牌银行,国内用户真实资料可线上开户。

iFAST开户教程:https://blog.xiaoz.org/archives/19069

香港银行

这个门槛相对较高,但是选择比较多,一般需要肉身在香港才能开。可参考:

香港实体银行开户指南:南商银行/永隆银行/中银香港:https://blog.xiaoz.org/archives/19437 香港虚拟银行开户指南:ZA BANK、livi理慧银行、天星银行、蚂蚁银行:https://blog.xiaoz.org/archives/19388 结语 尽管从华侨银行转出资金可能会遇到一些挑战,但通过上述方法应能有效解决问题。希望这篇文章能帮助您顺利转移资金,找到更适合您的银行服务。

各位亲爱的朋友知音们:

不要哭,不要伤心,不要为我难过。我已经「翩然」的去了!

「翩然」是我最喜欢的两个字,代表的是「自主、自在、自由」的「飞翔」,优美而「轻盈」,我摆脱了逐渐让我痛苦的躯壳,「翩然」的化为雪花飞去了!

这是我的愿望,「死亡」是每个人必经之路,也是最后一件「大事」。我不想听天由命,不想慢慢枯萎凋零,我想为这最后的大事「作主」。

上苍对于生命的过程,设计得不是很好。当人老了,都要经过一段很痛苦的「衰弱、退化、生病、出入医院、治疗、不治」的时间,这段时间,可长可短,对于必将老死的人,是多大的折磨!万一不幸,还可能成为依赖「插管维生」的「卧床老人」!我曾经目睹那种惨状。我不要那样的「死亡」。

我是「火花」,我己尽力燃烧过。如今,当火焰将熄之前,我选择这种方式,翩然归去。我要说的话,都录在我《当雪花飘落》的视频里了。希望我的朋友们,多看几次视频,了解我想表达的一切。

朋友们,不要为我的「死亡」悲哀,为我笑吧!生命的美好,就在于「能爱,能恨、能笑,能哭、能歌、能说、能跑、能动、能红尘作伴、活得潇潇洒洒,能嫉恶如仇,活得轰轰烈烈……」这些,我都在有生之年,拥有过了!我「活过」了,不曾辜负此生!

我最放不下的,就是家人和你们。「爱」紧紧的系着我心,你们都是我最最不舍的。为了让我的灵魂(不知道人类有没有灵魂),也能「翩然」,大家为我笑、为我高歌、为我飞舞吧!我在天之灵,会与你们「共舞」的!

别了!我至爱的你们!庆幸此生,曾经和你们相遇相知。

注意,我「死亡」的方式,是在我生命的终站实行的!年轻的你们,千万不要轻易放弃生命,一时的挫折打击,可能是美好生命中的「磨练」,希望你们经得起磨练,像我一样,活到八十六、七岁,体力不支时,再来选择如何面对死亡。但愿那时,人类已经找到很人道的方式,来帮助「老人」们,快乐的「归去」!

亲爱的你们,要勇敢,要活出强大的「自我」,不要辜负来世间一趟!这世间,虽然不是十全十美,也有各种意外的喜怒哀乐!别错过那些属于你的精彩!

千言万语说不尽,最后,祝福大家健康快乐,活得潇潇洒洒!​”

网页颜色搭配表及颜色搭配技巧

颜色搭配常识:

1.网页中色彩的表达使用三种颜色,及红(R)、绿(G)、蓝(B),及通常所说的RGB色彩,它包含了人类所感知的所有颜色,网页中表达颜色如下(红色为例)RGB格式:红色是(255,0,0)或十六进制hex格式为(FF0000)。

2.将色彩按"红->黄->绿->蓝->红"依次过度渐变可得到12色环:红,橙红,橙,橙黄,黄,黄绿,绿,蓝绿,蓝,蓝紫,紫,紫红。

3.颜色分非彩色和彩色两类。非彩色是指黑,白,灰系统色。彩色是指除了非彩色以外的所有色彩。通常内容文字用非彩色(黑色),边框,背景,图片用彩色。所以即使页面丰富,看内容依然不会眼花,通常背景与内容对比要大。

按单一色彩为主色彩分类

网页设计一般以单一色彩为主,下面每类都以该色彩为主,配以其它或类似色彩的,并按照从轻快到浓烈的顺序排列。

红色/ 是一种激奋的色彩。刺激效果,能使人产生冲动,愤怒,热情,活力的感觉

#FFFFCC
#CCFFFF
#FFCCCC
#99CCCC
#FFCC99
#FFCCCC
#FF9999
#996699
#FFCCCC
#CC9999
#FFFFCC
#CCCC99
#FFCCCC
#FFFF99
#CCCCFF
#0099CC
#CCCCCC
#FF6666
#FF9966
#FF6666
#FFCCCC
#CC9966
#666666
#CC9999
#FF6666
#FFFF66
#99CC66
#CC3333
#CCCCCC
#003366
#993333
#CCCC00
#663366
#CCCC99
#666666
#CC9999
#FF6666
#FFFF00
#0066CC
#CC0033
#333333
#CCCC00
#336633
#990033
#FFCC99
#993333
#CC9966
#003300
#FF0033
#333399
#CCCC00
#CC0033
#000000
#003399
#000000
#99CC00
#CC0033
#999933
#993333
#333300

橙色 / 也是一种激奋的色彩,具有轻快,欢欣,热烈,温馨,时尚的效果

#FFCC99
#FFFF99
#99CC99
#FFCC99
#CCFF99
#CCCCCC
#FFCC99
#FFFFCC
#99CCFF
#FF9966
#FFFFCC
#99CC99
#FF9900
#FFFFCC
#336699
#CCCC33
#FFFF99
#CC9933
#996600
#FFCC33
#FFFFCC
#FFFFCC
#CC9933
#336666
#FF9900
#FFFF00
#0099CC
#99CC33
#FF9900
#FFCC00
#FF9933
#99CC33
#CC6699
#FF9933
#FFFF00
#3366CC
#FF9933
#FFFFCC
#009966
#FF6600
#FFFF66
#009966
#990033
#CCFF66
#FF9900
#FF9966
#996600
#CCCC00
#CC6600
#999999
#CCCC33
#CC6600
#CCCC33
#336699
#000000
#FF9933
#999966
#663300
#FF9933
#FFFF66

黄色  / 具有快乐,希望,智慧和轻快的个性,它的明度最高

#FFFFCC
#CCFFFF
#FFCCCC
#FFFF00
#FFFFFF
#CCCC00
#99CCFF
#FFCC33
#FFFFCC
#FFFF33
#99CCFF
#CCCCCC
#FFFF00
#FFFFFF
#9933FF
#99CCFF
#FFCC33
#FFFF33
#FFCC00
#66CC00
#FFFF99
#FF9900
#FFFF00
#0099CC
#FFCC00
#0000CC
#FFFF99
#CC9999
#FFFFCC
#6666CC
#999933
#FFFFCC
#CC99CC
#CCCC00
#666600
#FFFF66
#FF9966
#FFFFCC
#99CC99
#FFCC33
#FFFFCC
#999966
#FFCC99
#FF6666
#FFFF66
#FFCC99
#999966
#FFFF00
#FFFF99
#99CC99
#666600
#999966
#FFFF99
#333333
#006633
#333300
#CCCC99
#006633
#663300
#CCCC66

黄绿色 / 

#33CC33
#6666CC
#FFFFFF
#CCCC33
#FFFFFF
#CCFFCC
#FFCC99
#CCFF99
#CCCCCC
#CCCC00
#999966
#FFFFCC
#CCCC33
#FFFFFF
#336699
#CCCC33
#999999
#CCFFFF
#00CC00
#0066CC
#99CCCC
#99CC33
#FF9900
#FFCC00
#99CC33
#CCCCFF
#663300
#CCCC33
#993399
#000000
#CC6600
#999999
#CCCC33
#CC9933
#FFFF99
#99CC99
#669933
#CCCC33
#663300
#99CC33
#CCCCCC
#000000
#CC6600
#CCCC33
#336699
#666600
#CCCC66
#CCFFCC
#333366
#99CC33
#336699
#666666
#99CC33
#003366
#003333
#99CC33
#999999
#996633
#FFFF99
#99CC66

绿色 /  介于冷暖两中色彩的中间,显得和睦,宁静,健康,安全的感觉。它和金黄,淡白搭配,可以产生优雅,舒适的气氛

#009966
#FFFFFF
#FFFF00
#339933
#FFFFFF
#9933CC
#339933
#FFFFFF
#000000
#339933
#99CC00
#FFFFCC
#FFFFCC
#CCCC66
#336666
#99CC33
#FFFF66
#336600
#339933
#CC9900
#666666
#339966
#CCCCCC
#003366
#669933
#CCCCCC
#000000
#339933
#CCCCCC
#6699CC
#006633
#CCCC33
#CC9933
#339933
#666633
#CCCC66
#339933
#FFCC33
#336699
#006633
#669933
#99CC99
#336666
#996633
#CCCC33
#003300
#669933
#CCCC99
#006633
#990033
#FF9900
#006633
#333300
#CCCC99
#006633
#663300
#CCCC66
#993333
#CC9966
#003300

青绿色  / 

#CCFF99
#FFFFFF
#66CCCC
#339999
#FFFFFF
#99CCFF
#66CC99
#FFFFFF
#666699
#009999
#66CCCC
#CCFFFF
#66CCCC
#CCFF66
#FF99CC
#339999
#FFFF00
#336699
#CC9933
#339999
#FFCC33
#FFCC00
#009999
#CC3333
#669999
#CCCCCC
#CC99CC
#339999
#CCCCCC
#000000
#339999
#666699
#CCCCCC
#003333
#99CC99
#FFFFCC
#669999
#CCFFCC
#996699
#996699
#CCCC99
#669999
#999966
#CCCC99
#339999
#336666
#669999
#CCCC99
#999999
#003366
#669999
#663333
#339999
#CCCC66
#333333
#339999
#CCFFCC
#336666
#3399CC
#666666

蓝色 / 是最具凉爽,清新,专业的色彩。它和白色混合,能体现柔顺,淡雅,浪漫的气氛(象天空的色彩:)白色---具有洁白,明快,纯真,清洁的感受

#FFFFCC
#CCFFFF
#FFCCCC
#99CCCC
#FFFFFF
#3399CC
#CCFFCC
#99CCCC
#FFFFCC
#CCCCFF
#FFFFFF
#99CCFF
#FFCC99
#FFFFCC
#99CCFF
#336699
#FFFFFF
#99CCCC
#99CCCC
#FFFFFF
#CCFF99
#CCCCFF
#FFFFCC
#CCFFFF
#99CCCC
#FFFFFF
#336699
#99CCFF
#CCFFFF
#6699CC
#99CC33
#FFFFFF
#3399CC
#0099CC
#FFFFCC
#666699
#CCCCCC
#003366
#99CCFF
#0099CC
#FFFFFF
#666666
#CCCCCC
#6699CC
#666666
#336699
#CCCC99
#003366
#3399CC
#003366
#CCCCCC
#6699CC
#006699
#000000
#003366
#CCCCCC
#006699
#999933
#336699
#333333

蓝紫色  / 

#CCFFFF
#FFFFFF
#CCCCFF
#CCCCCC
#FFFFFF
#666699
#99CCFF
#FFFFFF
#333399
#6666CC
#FFFFFF
#FF9999
#9999FF
#FFCC33
#FFFFCC
#0099CC
#FFFFCC
#666699
#0000FF
#6699FF
#CCFFFF
#6666FF
#66CCFF
#CCFF66
#669999
#FFFFCC
#6666CC
#9999CC
#FF9999
#666699
#003399
#FFCCCC
#6699CC
#CC6666
#333399
#CCCC00
#000066
#6666FF
#CCCCCC
#003399
#CCFF99
#333333
#333366
#CC0033
#CCCCCC
#336699
#CCCC66
#333300
#003399
#FFFF99
#000000
#990066
#CCCC33
#003399
#CC3333
#000000
#003399
#333366
#999966
#333333

紫色  / 

#FFFFCC
#FFFF99
#CCCCFF
#9999CC
#99CC99
#FFFFFF
#FFCCCC
#CCCCFF
#CCCC99
#9999CC
#FFFFCC
#FFCCCC
#FFCCCC
#FF99CC
#CCCCFF
#660066
#FFFFFF
#663333
#CCCC99
#333333
#9966CC
#CCCC00
#FF9966
#663399
#996699
#FFCCCC
#CC99CC
#996666
#CC99CC
#FFCCCC
#FFCC99
#FF9933
#663366
#333399
#CCCCFF
#CC99CC
#663366
#CCCCCC
#CC99CC
#996699
#9999CC
#CCCCFF
#CC9966
#999999
#663366
#330033
#666666
#669999
#CCCCCC
#999999
#663366
#FF33CC
#CCCC99
#663366
#663366
#999999
#CCCCFF
#999966
#993333
#330033

紫红色 / 

#FFCCCC
#FFFFFF
#99CC00
#FF99CC
#FFFFFF
#993366
#66CC99
#FFFFFF
#CC6699
#CC9999
#FFCCCC
#CC99CC
#FFCCCC
#FFFF99
#CCCCFF
#FFFF99
#993399
#FF99CC
#66CCCC
#CCFF66
#FF99CC
#FF99CC
#003399
#CCCC00
#FFCCCC
#FF99CC
#CCCCFF
#FF9999
#FFCCCC
#FF99CC
#669966
#CC6699
#FFCCFF
#CCCCCC
#CC99CC
#CC3399
#CC3399
#FFCC99
#FF6666
#FF3399
#CCCC99
#663366
#663366
#FFFFCC
#FFCCCC
#663366
#CCCCCC
#CC99CC
#990066
#FFCC00
#CC0033
#990066
#CCCCCC
#006699
#999900
#990033
#000000
#990066
#000000
#009966

按印象的搭配分类

色彩搭配看似复杂,但并不神秘。既然每种色彩在印象空间中都有自己的位置,那么色彩搭配得到的印象可以用加减法来近似估算。如果每种色彩都是高亮度的,那么它们的叠加,自然会是柔和、明亮的;如果每种色彩都是浓烈的,那么它们叠加,就会是浓烈的。当然在实际设计过程中,设计师还要考虑到乘除法,比如同样亮度和对比度的色彩,在色环上的角度不同,搭配起来就会得到千变万化的感觉。因此本书除了要列举出按色相的搭配,也要将印象作为重点的搭配分类列举出来,以供读者参考。

柔和、明亮、温柔 /  亮度高的色彩搭配在一起就会得到柔和、明亮、温和的感觉。为了避免刺眼,设计师一般会用低亮度的前景色调和,同时色彩在色环之间的距离也有助于避免沉闷。

#FFFFCC
#CCFFFF
#FFCCCC
#FFCCCC
#FFFF99
#CCCCFF
#FF9966
#FF6666
#FFCCCC
#FFCC99
#CCFF99
#CCCCCC
#FFCCCC
#CCCCFF
#CCFFCC
#CCFFFF
#CCCCCC
#CCFF99
#FFCCCC
#FFFFFF
#99CC99
#99CCCC
#FFCC99
#FFCCCC
#CCCCFF
#FFCCCC
#CCFFFF
#FFCC99
#FFFFCC
#99CCCC

柔和、洁净、爽朗  / 对于柔和、清洁、爽朗的印象,色环中蓝到绿相邻的颜色应该是最适合的。并且亮度偏高。可以看到,几乎每个组合都有白色参与。当然在实际设计时,可以用蓝绿相反色相的高亮度有彩色代替白色。

#CCFF99
#FFFFFF
#99CCFF
#99CCCC
#FFFFFF
#CCFF99
#CCFFCC
#FFFFFF
#66CCCC
#CCCCFF
#FFFFFF
#99CCCC
#CCFFCC
#99CCCC
#FFFFCC
#CCFFFF
#FFFFFF
#CCCCFF
#CCFFFF
#FFFFFF
#99CCFF
#66CCFF
#FFFFFF
#CCFFFF
#6699CC
#FFFFFF
#99CCFF
#CCCCFF
#FFFFFF
#99CCFF

可爱、快乐、有趣  /  可爱、快乐、有趣印象中的色彩搭配特点是,色相分布均匀,冷暖搭配,饱和度高,色彩分辨度高。

#66CCCC
#CCFF66
#FF99CC
#FF9999
#FFFFFF
#FFCC99
#FF6666
#FFFF66
#99CC66
#666699
#FFFFFF
#FF9999
#99CC33
#FF9900
#FFCC00
#FF0033
#FFFFFF
#FF9966
#FF9900
#CCFF00
#CC3399
#99CC33
#FFFFFF
#FF6600
#993366
#CCCC33
#666633
#66CCCC
#FFFFFF
#666699

活泼、快乐、有趣  / 活泼、快乐、有趣相对前一种印象,色彩选择更加广泛,?最重要的变化是将纯白色用低饱和有彩色或者灰色取代。

#CC9999
#FFFF99
#666699
#FF9900
#FFFF00
#0099CC
#CCCC99
#CC3399
#99CC00
#FF6666
#FFFF00
#3399CC
#CC6600
#999999
#CCCC33
#FF9933
#FFFFCC
#009933
#0099CC
#CCCCCC
#FF6666
#FF6600
#FFFF66
#009966
#CC6633
#FFCC99
#CC6600
#CC0066
#009999
#FFCC33

运动型、轻快  /  运动的色彩要强化激烈、刺激的感受,同时还要体现健康、快乐、阳光。因此饱和度较高、亮度偏低的色彩在这类印象中经常登场。

#FF6666
#FFFF00
#006699
#FF9966
#FFFFFF
#0066CC
#339933
#FFCC33
#336699
#FF9900
#FFFFCC
#336699
#CC6600
#CCCC44
#336699
#99CC33
#FFFFFF
#0099CC
#99CC33
#FF6666
#336699
#336699
#FFFFFF
#99CCCC
#FF0033
#333399
#CCCC00
#33CC99
#FFFF00
#336699

轻快、华丽、动感 / 华丽的印象要求页面充斥有彩色,并且饱和度偏高,而亮度适当减弱则能强化这种印象。

#990066
#FFCC00
#CC0033
#FFCC33
#333399
#FF0033
#666699
#FFFF00
#FF0033
#FF0033
#006699
#FFFF33
#FFCC00
#009999
#CC3366
#FF0033
#CCCC00
#006699
#CCCC00
#FF9933
#663399
#FF9933
#FFFF00
#336699
#CC3333
#FFCCCC
#99CC00
#003399
#FFFF00
#FF6600

狂野、充沛、动感 / 狂野的印象空间中少不了低亮度的色彩,甚至可以用适当的黑色搭配。其他有彩色的饱和度高,对比强烈。

#990066
#FFFF00
#003399
#CC0033
#000000
#003399
#003399
#FFFF00
#F00000
#CC3333
#CCCCCC
#003366
#CC0033
#333333
#CCCC00
#000000
#99CC00
#CC0033
#FF0033
#333333
#FF9900
#990066
#000000
#009966
#666666
#FF6600
#333333
#993333
#CCCC00
#663366

华丽、花哨、女性化  / 女性化的页面中紫色和品红是主角、粉红、绿色也是常用色相。一般它们之间要进行高饱和的搭配。

#FFFF99
#993399
#FF99CC
#FF6666
#FFFFFF
#339999
#FF99CC
#003399
#CCFF00
#66CC99
#FFFFFF
#CC6699
#CC3399
#FFCC99
#FF6666
#FFCCCC
#FFFFFF
#993366
#CC6699
#FFFF00
#666699
#CC6699
#99CC66
#663366
#FF33CC
#CCCC99
#663366
#CC3399
#FFCC99
#FF6666

回味、女性化、优雅 / 优雅的感觉很奇特,色彩的饱和度一般要降下来。一般以蓝、红之间的相邻,调节亮度和饱和度进行搭配。

#CCCCCC
#CC99CC
#CC3399
#FFCCCC
#FF99CC
#CCCCFF
#CC3399
#9933CC
#CC99CC
#9999CC
#FFFFCC
#FFCCCC
#663366
#CCCCCC
#CC99CC
#FF9999
#FFCCCC
#FF99CC
#996666
#CC99CC
#FFCCCC
#CC9999
#CCCCCC
#FFCCCC
#FF9999
#996699
#FFCCCC
#996699
#FFCCCC
#CC99CC

高尚、自然、安稳 /  高尚一般要用低亮度的黄绿色,色彩亮度降下去,注意色彩的平衡,页面就会显得安稳。

#CCCC33
#FFFF99
#CC9933
#CC9966
#CCCC66
#669999
#FF9966
#996600
#CCCC00
#CCCC66
#660033
#CC6600
#CCCC00
#666600
#CCCCFF
#CC9933
#009999
#FFCC33
#999966
#CCCC99
#339999
#99CC99
#669933
#336633
#666633
#999933
#CC9966
#660000
#CC9900
#CCCC99

冷静、自然 /  绿色是冷静、自然印象的主角,但是绿色作为页面的主要色彩,容易陷入过于消极的感觉传达,因此应该特别重视图案的设计。

#FFFF99
#99CC99
#666600
#996633
#FFFF99
#99CC66
#006600
#66CC66
#CCFF99
#666600
#CCCC66
#CCFFCC
#669933
#CCCC33
#663300
#666633
#999933
#CC9966
#003300
#669933
#CCCC99
#006633
#663300
#CCCC66
#666600
#FFFFCC
#999999
#006633
#333300
#CCCC99

传统、高雅、优雅 / 传统的内容一般要降低色彩的饱和度,特别是棕色很适合。前面介绍紫色也是高雅和优雅印象的常用色相。

#999933
#FFFFCC
#CC99CC
#CC9966
#666666
#CC9999
#CCCC99
#333333
#9966CC
#CCCC99
#666666
#CC9999
#996699
#CCCC99
#669999
#CC9966
#999999
#666666
#339966
#CCCCCC
#996699
#663366
#999999
#CCCCFF
#996699
#9999CC
#CCCCFF
#CCCC99
#999999
#663300

传统、稳重、古典 / 传统、稳重、古典都是保守的印象,色彩的选择上应该尽量用低亮度的暖色,这种搭配符合成熟的审美。

#6699CC
#663366
#CCCC99
#990033
#CCFF66
#FF9900
#666699
#660033
#99CC99
#663300
#FF9933
#FFFF66
#990033
#006633
#CCCC00
#660033
#999933
#660099
#993366
#CCCC33
#666633
#996600
#CCCC66
#666600
#009933
#CC9900
#666666
#666633
#CCCC33
#CC3366

忠厚、稳重、有品位  / 亮度、饱和度偏低的色彩会给人忠厚、稳重的感觉。这样的搭配为了避免色彩过于保守,使页面僵化、消极,应当注重冷暖结合和明暗对比。

#FFFFCC
#CC9933
#336666
#336666
#996633
#CCCC33
#336633
#990033
#FFCC99
#333366
#669999
#996600
#993333
#CC9966
#003300
#336633
#CCCC99
#333366
#663300
#999933
#333333
#663366
#666666
#333366
#999900
#990033
#CC99CC
#333366
#990033
#CCCCCC

简单、洁净、进步  / 简单、洁净的色彩在色相上可以用蓝、绿表现,并大面积留白。而进步的印象可以多用蓝色,搭配低饱和甚至灰色。

#CCCCCC
#FFFFFF
#666699
#CCFF66
#FFFFFF
#003366
#99CCFF
#FFFFFF
#336699
#CCCC33
#FFFFFF
#336699
#0099FF
#FFFFCC
#666699
#99CC33
#CCCCCC
#000000
#CCCCCC
#003366
#99CCFF
#0099CC
#CCFF66
#666666
#3399CC
#003366
#CCCCCC
#ABCDEF
#ABCDEF
#ABCDEF

简单、时尚、高雅 / 灰色是最为平衡的色彩,并且是塑料金属质感的主要色彩之一,因而要表达高雅、时尚,可以适当使用,甚至大面积使用。但是要注重图案和质感的构造。

#99CCFF
#FFFF66
#666666
#336666
#FFFFFF
#999999
#0099CC
#FFFFFF
#666666
#999999
#CCCCCC
#336666
#CCCCCC
#999999
#663366
#666666
#CCCCCC
#6699CC
#999999
#FFFFFF
#333366
#669999
#CCCCCC
#666666
#999999
#CCCCCC
#333333
#ABCDEF
#ABCDEF
#ABCDEF

简单、进步、时尚 / 表现进步的色彩主要以蓝色为主,搭配灰色。而色彩的明度统一、色相相邻,在色彩上会显得简洁。

#333366
#99CC33
#336699
#999999
#003366
#669999
#003399
#CCFF99
#333333
#999933
#336699
#333333
#666666
#99CC33
#003366
#999999
#336699
#333333
#3366CC
#CCCC66
#333300
#6699CC
#006699
#000000
#003366
#CCCCCC
#006699
#000000
#999999
#003366

标题文字

C# 调用外部exe的三种方式 调用外部exe是常用的功能,本文主要介绍了C# 调用外部exe的三种方式,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧

方式一:直接调用Process类来实现:

using System.Diagnostics; Process p = Process.Start("program.exe"); p.WaitForExit();//本行代码不是必须,但是很关键,限制等待外部程序退出后才能往下执行 当exe程序需要传递参数时:

using System.Diagnostics; Process p = Process.Start("program.exe 参数"); p.WaitForExit();//本行代码不是必须,但是很关键,限制等待外部程序退出后才能往下执行 方式二:利用shell32.dll,调用ShellExecute方法

ShellExecute 方法可以打开一个已注册的文件、打开一个目录、打印一个文件等等,可以根据返回值判断是否调用成功。函数如下:

IntPtr ShellExecute(IntPtr hwnd, string lpOperation, string lpFile, string lpParameters, string lpDirectory, ShowCommands nShowCmd); 其中,各参数信息如下:

hwnd:指定父窗口句柄,未指定时可以为 null 或者为 0 lpOperation:指定操作,值可以为【open】、【print】、【explore】。open:执行由 lpFile 参数指定的程序,或打开由lpFile 参数指定的文件或文件夹;print :打印由 lpFile 参数指定的文件;explore:浏览由lpFile参数指定的文件夹。当参数设为 null 时,默认为 open。 lpFile:指定要打开的文件或程序 lpParameters:给要打开的程序指定参数;如果打开的是文件,值为 null lpDirectory:默认目录 nShowCmd:打开设置项,具体意义如下: SW_HIDE = 0; //隐藏 SW_SHOWNORMAL = 1; //用最近的大小和位置显示, 激活 SW_NORMAL = 1; //同 SW_SHOWNORMAL SW_SHOWMINIMIZED = 2; //最小化, 激活 SW_SHOWMAXIMIZED = 3; //最大化, 激活 SW_MAXIMIZE = 3; //同 SW_SHOWMAXIMIZED SW_SHOWNOACTIVATE = 4; //用最近的大小和位置显示, 不激活 SW_SHOW = 5; //同 SW_SHOWNORMAL SW_MINIMIZE = 6; //最小化, 不激活 SW_SHOWMINNOACTIVE = 7; //同 SW_MINIMIZE SW_SHOWNA = 8; //同 SW_SHOWNOACTIVATE SW_RESTORE = 9; //同 SW_SHOWNORMAL SW_SHOWDEFAULT = 10; //同 SW_SHOWNORMAL SW_MAX = 10; //同 SW_SHOWNORMAL 返回值说明:返回值大于 32 时,即执行成功。执行失败的返回值具体意义如下:

0 = 0 //内存不足 ERROR_FILE_NOT_FOUND = 2; //文件名错误 ERROR_PATH_NOT_FOUND = 3; //路径名错误 ERROR_BAD_FORMAT = 11; //EXE 文件无效 SE_ERR_SHARE = 26; //发生共享错误 SE_ERR_ASSOCINCOMPLETE = 27; //文件名不完全或无效 SE_ERR_DDETIMEOUT = 28; //超时 SE_ERR_DDEFAIL = 29; //DDE 事务失败 SE_ERR_DDEBUSY = 30; //正在处理其他 DDE 事务而不能完成该 DDE 事务 SE_ERR_NOASSOC = 31; //没有相关联的应用程序 代码实现如下:

// 引入库 [DllImport("shell32.dll")] static extern IntPtr ShellExecute(IntPtr hwnd, string lpOperation, string lpFile, string lpParameters, string lpDirectory, ShowCommands nShowCmd);

// 调用 string filepath = @"C:\Users\Administrator\Desktop\program.exe"; IntPtr result = ShellExecute(IntPtr.Zero, "open", filepath, "", "", ShowCommands.SW_SHOWNORMAL); 方式三:kernel32.dll,调用WinExec方法

WinExec方法仅能打开本地程序,可以根据返回值判断是否调用成功(<32表示出现错误)。

UINT WinExec(exePath,ShowCmd) 参数说明:

–xePath:命令行参数。注意,要用pChar转化一下。 –ShowCmd:外部程序的运行方式。其取值如下: ----SW_HIDE 隐藏    ----SW_MAXIMIZE 最大化 ----SW_MINIMIZE 最小化,并把Zorder顺序在此窗口之后(即窗口下一层)的窗口激活 ----SW_RESTORE 激活窗口并还原为初始化大小 SW_SHOW以当前大小和状态激活窗口 ----SW_SHOW 用当前的大小和位置显示一个窗口,同时令其进入活动状态 ----SW_SHOWDEFAULT 以默认方式运行 ----SW_SHOWMAXIMIZED 激活窗口并最大化 ----SW_SHOWMINIMIZED 激活窗口并最小化 ----SW_SHOWMINNOACTIVE最小化但不改变当前激活的窗口 ----SW_SHOWNA 以当前状态显示窗口但不改变当前激活的窗口 ----SW_SHOWNOACTIVATE 以初始化大小显示窗口但不改变当前激活的窗口 ----SW_SHOWNORMAL 激活并显示窗口,如果是最大(小)化,窗口将会还原。第一次运行程序 时应该使用这个值

如果调用成功,这个函数会返回一个大于等于32的值,否则调用失败,其返回值的意义如下:

–0 系统内存或资源不足 –ERROR_BAD_FORMAT .EXE文件格式无效(比如不是32位应用程序) –ERROR_FILE_NOT_FOUND 指定的文件设有找到 –ERROR_PATH_NOT_FOUND 指定的路径没有找到

// 引入库 [DllImport("kernel32.dll")] public static extern int WinExec(string programPath, int operType);

// 调用 string pathStr=@"C:\Users\Administrator\Desktop\program.exe"; var result = WinExec(pathStr, (int)ShowWindowCommands.SW_SHOW); C# 调用可执行exe文件几种方法小结 1.利用进程池方式启动 string exefile = "xxx.exe"; if (File.Exists(exefile)) { Process process = new Process();   // params 为 string 类型的参数,多个参数以空格分隔,如果某个参数为空,可以传入”” ProcessStartInfo startInfo = new ProcessStartInfo(exefile, params); process.StartInfo = startInfo; process.Start(); } 2.遮蔽CLI启动窗口 string exefile = "xxx.exe"; if (File.Exists(exefile)) { Process process = new Process(); ProcessStartInfo startInfo = new ProcessStartInfo(exefile, path); startInfo.UseShellExecute = false; startInfo.RedirectStandardOutput = true; startInfo.CreateNoWindow = true; process.StartInfo = startInfo; process.Start(); process.WaitForExit(2000); string output = process.StandardOutput.ReadToEnd(); rtb_analyze.Text = output; process.Close();
} 3.异步启动方式 public void exec(string exePath, string parameters) { Process process = new System.Diagnostics.Process(); process.StartInfo.FileName = exePath; process.StartInfo.Arguments = parameters; process.StartInfo.UseShellExecute = false; process.StartInfo.CreateNoWindow = true; process.StartInfo.RedirectStandardOutput = true; process.Start(); process.BeginOutputReadLine(); process.OutputDataReceived += new DataReceivedEventHandler(processOutputDataReceived); } 参考资料:

1、C#使用Process类调用外部exe程序_C#教程_脚本之家 2、https://www.cnblogs.com/daochangone/p/11364775.html 3、https://www.cnblogs.com/semth/p/10494685.html

Life is fantastic
🥕 More