浅谈使用CSS遮罩与CSS线性渐变实现图片的斜线拼接

css mask的原理:只会把遮罩图里透明像素所对应的原图部分进行隐藏。 渐变图作为mask,置于另一张图片上面。 #mask { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: url("images/img2.jpg"); background-size: cover; -webkit-mask-image: linear-gradient(120deg, transparent 50%, white 50%); }

Java web项目 在线网络考试考生找回密码部分代码

<%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> 网络在线考试 当前位置:→ 找回密码 >>> 输入准考证号 准考证号: * <%@ include file="copyright.jsp"%> <%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> 网络在线考试 当前位置:→ 找回密码 >>> 输入密码提示问题答案 密码提示问题: (只读) 密码提示答案: * <%@ include file="copyright.jsp"%> <%@ page contentType="text/html; charset=gb2312"

玩转linux主机–centos设置宽带pppoe上网

安装好linux后拨号上网是个问题,首先我们将笔记本连接到路由器的端口上使其可以连接网络 安装 yum install rp-pppoe -y 配置PPPoE连接 pppoe-setup 输入pppoe账号 输入以太网卡号,可以用ifconfig获取 长时间连线,会被自动中断(我选了no) 配置主DNS服务器,配置次DNS服务器 我这里使用的是学校的移动,所以去网上搜了浙江移动的DNS,共有两个211.140.13.188 211.140.188.188 输入宽带密码 配置防火墙(没有特殊需求选0) 配置是否开机自动拨号连接 确认刚填写的配置信息 开启 /sbin/ifup ppp0(此处为对应的网络配置号)

react native 抽屉效果

在react native中,我们如果想要实现android的抽屉效果其实挺简单的,因为react-native为我们提供了DrawerLayoutAndroid这个api,使我们可以用几行代码就能实现酷炫吊炸天的动画效果,我们先来看看官网的介绍 这里主要就是介绍了drawerlayoutandroid有几个重要的方法,一个使设置宽度,一个是设置动画完成的时间,另一个是设置是否要支持手势操作,由于比较简单,直接上代码: render() { const { drawer, navigator } = this.state; const navView = React.createElement(LeftNavigtor); return ( 200} drawerLockMode='locked-closed' drawerPosition={DrawerLayoutAndroid.positions.Left} renderNavigationView={() => { if (drawer && navigator) { return navView; } return null; }} ref={(drawer) => { !this.state.drawer ? this.setDrawer(drawer) : null }} > { drawer && paddingTop:55,backgroundColor:'#FFFFFF'}} initialRoute={{ id: 'homepage', params: {} }} ref={(navigator) => { !this.state.navigator ? this.setNavigator(navigator) : null }} navigationBar={} configureScene={this.configureScene} renderScene={this._renderRoute.bind(this)} /> } ); } } 这里有几点要注意,如果你的视图只允许点击时才出现,那么你要配置drawerLockMode='locked-closed'这个属性,并且必须使 ref={(drawer) => { !

百度地图开发时:只显示灰色的网格而不显示具体地图信息的解决办法

最近在开发百度地图时遇到只显示灰色的框框,不显示具体的地图信息: 查阅资料后,自己的解决办法是: 1、百度地图API key的申请 在申请key的时候需要注意的是安全码的设置,安全码的组成为:数字签名+;+包名,其中数字签名不是随便给出就行的,获取数字签名的方法: 方法一:如果使用adt 22,可以在eclipse中直接查看:winows -> preferance -> Android -> build,然后在该页面中有个SHA1 fingerprint值,这个值就是上面的数字签名; 方法二:如果使用的是adt21及以下的,可以在default debug keystore项目里找到该文件,然后运行cmd命令: keytool -list -v -keystoreC:Usersuser.androiddebug.keystore 然后输入密码,这里密码一般为空,直接按回车就行。即可看到sha1码! 包名可以是你任意给出的包名(但是你一定要记者这个包名),在新建功能的时候,自己创建的工程包名就必须和这个包名一致了。也就是说该key只能在该包位置下使用。(PS:在不同的工程下如果给出相同的包名,这种情况我就没有试验了,但是我想应该也是可以的,因为在申请key的时候只给定了包名,而没有限定你的项目工程名) 1、创建工程工程部分目录如下: 如图中包名和上面百度key值申请时候所定义的包名一致。另外,有些人新建了工程后,刚开始建的包名和百度key申请时的包名不一致的时候,有些人将包名改过来,但是却忘记了一件事,那就是AndroidManifest.xml文件中还有个需要改的地方,如图:要将该包名同样修改一下。 到此,问题应该可以解决

Wireshark抓包详解

简述 wireshark是非常流行的网络封包分析工具,功能十分强大。可以截取各种网络封包,显示网络封包的详细信息。使用wireshark的人必须了解网络协议,否则就看不懂wireshark了。 为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发送封包。 wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内容,总结,如果是处理HTTP,HTTPS 还是用Fiddler, 其他协议比如TCP,UDP 就用wireshark. 1、wireshark 开始抓包 开始界面 wireshark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。 点击Caputre->Interfaces.. 出现下面对话框,选择正确的网卡。然后点击”Start“按钮, 开始抓包 Wireshark 窗口介绍 2、WireShark 主要分为这几个界面 1> Display Filter(显示过滤器), 用于过滤 2> Packet List Pane(封包列表), 显示捕获到的封包, 有源地址和目标地址,端口号。 颜色不同,代表信息不同 3> Packet Details Pane(封包详细信息), 显示封包中的字段 4> Dissector Pane(16进制数据) 5> Miscellanous(地址栏,杂项) 显示过滤器: 使用过滤是非常重要的, 初学者使用wireshark时,将会得到大量的冗余信息,在几千甚至几万条记录中,以至于很难找到自己需要的部分。搞得晕头转向,过滤器会帮助我们在大量的数据中迅速找到我们需要的信息。过滤器有两种:一种是显示过滤器,就是主界面上那个,用来在捕获的记录中找到所需要的记录,一种是捕获过滤器,用来过滤捕获的封包,以免捕获太多的记录。 在Capture -> Capture Filters中设置保存过滤,在Filter栏上,填好Filter的表达式后,点击Save按钮, 取个名字。比如”Filter 102″。 Filter栏上就多了个”Filter 102″ 的按钮。 过滤表达式 用途 http 只查看Http协议的记录 ip.src ==192.168.1.102 or ip.dst==192.168.1.102 源地址或者目标地址是192.168.1.102 封包列表(Packet List Pane) 封包列表的面板中显示,编号,时间戳,源地址,目标地址,协议,长度,以及封包信息。 你可以看到不同的协议用了不同的颜色显示。你也可以修改这些显示颜色的规则, View ->Coloring Rules。 封包详细信息 (Packet Details Pane)

阻止屏幕变暗进入休眠状态

阻止屏幕变暗进入休眠状态 //阻止屏幕变暗,慎重使用,缺省为no [UIApplication sharedApplication].idleTimerDisabled = YES; 慎重使用本功能,因为非常耗电。

sublime配置及使用技巧

如果需要 vim 配置,可以移步 面向 web 前端及 node 开发人员的 vim 配置 sublime 3 配置和使用技巧 第一步,设置settings 一下是我个人喜欢的格式配置,在perferences -> settings { "color_scheme": "Packages/User/SublimeLinter/MarkdownEditor-Dark (SL).tmTheme", //颜色风格 "font_size": 16, //字体大小 "indent_using_spaces": true, //使用空格缩进 "tab_size": 2, //一次缩进2个空格 "translate_tabs_to_spaces": true, //tab自动转化为空格 "trim_trailing_white_space_on_save": true, //保存时去除尾部多余空格 "expand_tabs_on_save": true, //保存时重写tab设置 "shift_tab_unindent": true, //使 shift+tab 等效为 command+{快捷键 "spell_check": true, //开启拼写检查 "line_numbers": true, //显示行号 "folder_exclude_patterns": [".svn", ".git", ".hg", "CVS", "node_modules"], //忽略查找元素 "ignored_packages": ["Vintage"], //忽略使用的插件 "ensure_newline_at_eof_on_save": true, //确保文件结尾有一个空行 "save_on_focus_lost": true, //失去焦点时储存 "atmic_save": true //自动存储 } 关于expand_tabs_on_save,我们需要额外添加python代码,方法如下: 1.

骰子点数识别之图像分割

链接1:利用卷积神经网络识别骰子点数 链接1:利用神经网络识别骰子点数 前言 前段时间借用神经网络和卷积神经网络实现了骰子点数的识别,但是一个很严重的问题一直困扰我,那就是当两个骰子叠在一起的时候,将两个骰子分开并不是一件简单的事情。 下图是我在识别过程中产生的不能识别的,叠加在一起的图片素材。 面对这些形态各异的图片,有的时候是两个骰子一个角连在一起,有的是一条边,有的是三个骰子叠在一起。所以,很难找到一个满意的办法解决这个问题。 第一思路就是从原始的RGB图像着手,通过调整二值化阈值,希望能够将骰子对象分割开来,但是遗憾的是我试了好几种方法,都是不行的,原因在于原图像在交接的地方本来就很模糊,颜色变化很小,所以使用二值化阈值调整很难得到完美的解决方案。 期间我尝试了不同的方法 1. 分水岭 close all clc figure(1) subplot(231) RGB_img=imread('161220S010129.jpg'); imgsize =size(RGB_img); RGB_img = imcrop(RGB_img,[imgsize(1,2)*0.418 imgsize(1,1)*0.655 215 134]);%大部分图像布局固定 imshow(RGB_img) %% subplot(232) %imhist(A(:,:,1)); bw=im2bw(rgb2gray(RGB_img)); bw=medfilt2(bw); planes=bwareaopen(bw,100); imshow(planes) %% subplot(233) D=bwdist(imcomplement(planes)); D=mat2gray(D); imshow(D) figure subimage(D) hold on [C,h]=imcontour(D,0.2:0.2:0.8); set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2) text_handle = clabel(C,h,'color','g'); figure(1) %% subplot(234) M=imimposemin(imcomplement(D),D>.8); imshow(M); %% subplot(236) L=watershed(M); r=L & planes; imshow(r) %%%%%%%%%%%% stats=regionprops(r,'BoundingBox','Centroid'); hold on c=cat(1,stats.Centroid); plot(c(:,1),c(:,2),'r*') bb={stats.BoundingBox}; cellfun(@(x) rectangle('Position',x,'EdgeColor','y'),bb) %% subplot(235) L(r)=5; imshow(L,[]) 2.

路由信息

网络路由信息可以帮助测试人员了解自己的主机到目标主机的网络通信路径,进而理解目标主机的网络情况。保护目标主机的防火墙信息,往往也暗藏在路由信息中。 tcptraceroute 传统的traceroute程序在其发送的UDP和ICMP echo 数据包,设置特定的TTL标志位。它吧TTL从1开始递增,直到到达目标主机为止。而tcptarceroute则是使用TCP数据包进行测试,它利用了TCP SYN 数据包进行路由信息的探测。 tcptraceroute example.com tctrace 同样可以使用tctrace 程序分析路由信息 tctrace -i<device> -d<targethost> 参数中device 是指网卡的借口,tagerhost 则是被测试的目标主机