当前位置: 编程技术>综合
本页文章导读:
▪iOS 已经 实现 单指 旋转 缩放 位移 等操作,Transform的应用
经过了3天的时间努力,终于把这个demo做好了。
目前可以实现蓝色区域内的缩放,位移,旋转,取消编辑状态等操作。
已经写成了一个UIVIew,可以任意添加到Controller中使用(需继承ARC)
http:.........
▪nginx日志切割和记录cookie #!/bin/bash
#日志文件存放目录
logs_path="/data/Service/nginx/logs"
# 日志文件的名字,多个需要空格隔开
logs_names=(dm_access)
mkdir -p ${logs_path}/$(date -d "yesterday" +"%Y")/$(date -d "yeste.........
▪C#版本Windows消息定义 C#版本Windows消息定义,花时间整理的,需要的人拿去用。
public static class NativeConst
{
public const int WM_CREATE = 0x0001;
public const int WM_DESTROY = 0x0002;
p.........
[1]iOS 已经 实现 单指 旋转 缩放 位移 等操作,Transform的应用
来源: 互联网 发布时间: 2013-11-05
经过了3天的时间努力,终于把这个demo做好了。
目前可以实现蓝色区域内的缩放,位移,旋转,取消编辑状态等操作。
已经写成了一个UIVIew,可以任意添加到Controller中使用(需继承ARC)
http://blog.csdn.net/a21064346/article/details/8468056
转载请说明出处:点击打开链接
目前正在做 内部区域的字体的实现,可能还要添加一个右下角和左下角的Button。这样,就能和美图秀秀的效果一样,而且,比它的更精确,不会出现单击发生偏移等错误效果。
效果更加精确。
其中用到的 核心技术是:Transform,通过仿射矩阵的计算,得到新的位移,新的scale,新的坐标
然后直接计算 Transform即可。将得到的Transform赋 给你的UIView的Transform属性即可。而且得到新Transform的同时View会自动的生成动画,这样,你也动画入门了:)
Transform不仅可以制作2D,3D的动画也可以完好的实现。大家一起摸索吧:)
作者:a21064346 发表于2013-1-5 11:46:11 原文链接
阅读:8 评论:0 查看评论
[2]nginx日志切割和记录cookie
来源: 互联网 发布时间: 2013-11-05
#!/bin/bash
#日志文件存放目录
logs_path="/data/Service/nginx/logs"
# 日志文件的名字,多个需要空格隔开
logs_names=(dm_access)
mkdir -p ${logs_path}/$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/
num=${#logs_names[@]}
for((i=0;i<num;i++))
do
#chown 和 chmod需要用到也要对当前用户给权限,因为80端口下nginx需要sudo启动,产生的文件所有者是root
#chown ppstat:users ${logs_path}/${logs_names[i]}.log
#chmod 755 ${logs_path}/${logs_names[i]}.log
mv -f ${logs_path}/${logs_names[i]}.log \
${logs_path}/$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/${logs_names[i]}_$(date -d "yesterday" +"%Y-%m-%d").log
done
#让nginx重新打开日志文件,在/etc/sudoer中对当前用户添加kill权限
sudo kill -USR1 `cat $logs_path/nginx.pid`
记录整个请求的cookie
#设置log中显示所有cookie
set $dm_cookie "";
if ($http_cookie ~* "(.+)(?:;|$)") {
set $dm_cookie $1;
}
log_format srvmain '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" "$dm_cookie" $request_time';
作者:chlaws 发表于2013-1-5 11:45:18 原文链接
阅读:0 评论:0 查看评论
[3]C#版本Windows消息定义
来源: 互联网 发布时间: 2013-11-05
C#版本Windows消息定义,花时间整理的,需要的人拿去用。
public static class NativeConst
{
public const int WM_CREATE = 0x0001;
public const int WM_DESTROY = 0x0002;
public const int WM_MOVE = 0x0003;
public const int WM_SIZE = 0x0005;
public const int WM_ACTIVATE = 0x0006;
public const int WM_SETFOCUS = 0x0007;
public const int WM_KILLFOCUS = 0x0008;
public const int WM_ENABLE = 0x000A;
public const int WM_SETREDRAW = 0x000B;
public const int WM_SETTEXT = 0x000C;
public const int WM_GETTEXT = 0x000D;
public const int WM_GETTEXTLENGTH = 0x000E;
public const int WM_PAINT = 0x000F;
public const int WM_CLOSE = 0x0010;
public const int WM_QUERYENDSESSION = 0x0011;
public const int WM_QUIT = 0x0012;
public const int WM_QUERYOPEN = 0x0013;
public const int WM_ERASEBKGND = 0x0014;
public const int WM_SYSCOLORCHANGE = 0x0015;
public const int WM_ENDSESSION = 0x0016;
public const int WM_SHOWWINDOW = 0x0018;
public const int WM_ACTIVATEAPP = 0x001C;
public const int WM_FONTCHANGE = 0x001D;
public const int WM_TIMECHANGE = 0x001E;
public const int WM_CANCELMODE = 0x001F;
public const int WM_SETCURSOR = 0x0020;
public const int WM_MOUSEACTIVATE = 0x0021;
public const int WM_CHILDACTIVATE = 0x0022;
public const int WM_QUEUESYNC = 0x0023;
public const int WM_GETMINMAXINFO = 0x0024;
public const int WM_PAINTICON = 0x0026;
public const int WM_ICONERASEBKGND = 0x0027;
public const int WM_NEXTDLGCTL = 0x0028;
public const int WM_SPOOLERSTATUS = 0x002A;
public const int WM_DRAWITEM = 0x002B;
public const int WM_MEASUREITEM = 0x002C;
public const int WM_VKEYTOITEM = 0x002E;
public const int WM_CHARTOITEM = 0x002F;
public const int WM_SETFONT = 0x0030;
public const int WM_GETFONT = 0x0031;
public const int WM_SETHOTKEY = 0x0032;
public const int WM_GETHOTKEY = 0x0033;
public const int WM_QUERYDRAGICON = 0x0037;
public const int WM_COMPAREITEM = 0x0039;
public const int WM_COMPACTING = 0x0041;
public const int WM_WINDOWPOSCHANGING = 0x0046;
public const int WM_WINDOWPOSCHANGED = 0x0047;
public const int WM_POWER = 0x0048;
public const int WM_COPYDATA = 0x004A;
public const int WM_CANCELJOURNA = 0x004B;
public const int WM_NOTIFY = 0x004E;
public const int WM_INPUTLANGCHANGEREQUEST = 0x0050;
public const int WM_INPUTLANGCHANGE = 0x0051;
public const int WM_TCARD = 0x0052;
public const int WM_HELP = 0x0053;
public const int WM_USERCHANGED = 0x0054;
public const int WM_NOTIFYFORMAT = 0x0055;
public const int WM_CONTEXTMENU = 0x007B;
public const int WM_STYLECHANGING = 0x007C;
public const int WM_STYLECHANGED = 0x007D;
public const int WM_DISPLAYCHANGE = 0x007E;
public const int WM_GETICON = 0x007F;
public const int WM_SETICON = 0x0080;
public const int WM_NCCREATE = 0x0081;
public const int WM_NCDESTROY = 0x0082;
public const int WM_NCCALCSIZE = 0x0083;
public const int WM_NCHITTEST = 0x0084;
public const int WM_NCPAINT = 0x0085;
public const int WM_NCACTIVATE = 0x0086;
public const int WM_GETDLGCODE = 0x0087;
public const int WM_NCMOUSEMOVE = 0x00A0;
public const int WM_NCLBUTTONDOWN = 0x00A1;
public const int WM_NCLBUTTONUP = 0x00A2;
public const int WM_NCLBUTTONDBLCLK = 0x00A3;
public const int WM_NCRBUTTONDOWN = 0x00A4;
public const int WM_NCRBUTTONUP = 0x00A5;
public const int WM_NCRBUTTONDBLCLK = 0x00A6;
public const int WM_NCMBUTTONDOWN = 0x00A7;
public const int WM_NCMBUTTONUP = 0x00A8;
public const int WM_NCMBUTTONDBLCLK = 0x00A9;
public const int WM_KEYFIRST = 0x0100;
public const int WM_KEYUP = 0x0101;
public const int WM_CHAR = 0x0102;
public const int WM_DEADCHAR = 0x0103;
public const int WM_SYSKEYDOWN = 0x0104;
public const int WM_SYSKEYUP = 0x0105;
public const int WM_SYSCHAR = 0x0106;
public const int WM_SYSDEADCHAR = 0x0107;
public const int WM_INITDIALOG = 0x0110;
public const int WM_COMMAND = 0x0111;
public const int WM_SYSCOMMAND = 0x0112;
public const int WM_TIMER = 0x0113;
public const int WM_HSCROLL = 0x0114;
public const int WM_VSCROLL = 0x0115;
public const int WM_INITMENU = 0x0116;
public const int WM_INITMENUPOPUP = 0x0117;
public const int WM_MENUSELECT = 0x011F;
public const int WM_MENUCHAR = 0x0120;
public const int WM_ENTERIDLE = 0x0121;
public const int WM_CTLCOLORMSGBOX = 0x0132;
public const int WM_CTLCOLOREDIT = 0x0133;
public const int WM_CTLCOLORLISTBOX = 0x0134;
public const int WM_CTLCOLORBTN = 0x0135;
public const int WM_CTLCOLORDLG = 0x0136;
public const int WM_CTLCOLORSCROLLBAR = 0x0137;
public const int WM_CTLCOLORSTATIC = 0x0138;
public const int WM_SHARED_MENU = 0x01E2;
public const int WM_MOUSEFIRST = 0x0200;
public const int WM_MOUSEMOVE = 0x0200;
public const int WM_LBUTTONDOWN = 0x0201;
public const int WM_LBUTTONUP = 0x0202;
public const int WM_LBUTTONDBLCLK = 0x0203;
public const int WM_RBUTTONDOWN = 0x0204;
public const int WM_RBUTTONUP = 0x0205;
public const int WM_RBUTTONDBLCLK = 0x0206;
public const int WM_MBUTTONDOWN = 0x0207;
public const int WM_MBUTTONUP = 0x0208;
public const int WM_MBUTTONDBLCLK = 0x0209;
public const int WM_MOUSEWHEEL = 0x020A;
public const int WM_PRINT = 0x0317;
public const int HC_ACTION = 0;
public const int WH_CALLWNDPROC = 4;
public const int GWL_WNDPROC = -4;
public const int GW_HWNDFIRST = 0;
public const int GW_HWNDLAST = 1;
public const int GW_HWNDNEXT = 2;
public const int GW_HWNDPREV = 3;
public const int GW_OWNER = 4;
public const int GW_CHILD = 5;
public const int SC_RESTORE = 0xF120; //还原
public const int SC_MOVE = 0xF010; //移动
public const int SC_SIZE = 0xF000; //大小
public const int SC_MINIMIZE = 0xF020; //最小化
public const int SC_MAXIMIZE = 0xF030; //最大化
public const int SC_CLOSE = 0xF060; //关闭
//WM_NCHITTEST消息处理返回值
public const int HTERROR = -2;
public const int HTTRANSPARENT = -1;
public const int HTNOWHERE = 0;
public const int HTCLIENT = 1;
public const int HTCAPTION = 2;
public const int HTSYSMENU = 3;
public const int HTGROWBOX = 4;
public const int HTSIZE = HTGROWBOX;
public const int HTMENU = 5;
public const int HTHSCROLL = 6;
public const int HTVSCROLL = 7;
public const int HTMINBUTTON = 8;
public const int HTMAXBUTTON = 9;
public const int HTLEFT = 10;
public const int HTRIGHT = 11;
public const int HTTOP = 12;
public const int HTTOPLEFT = 13;
public const int HTTOPRIGHT = 14;
public const int HTBOTTOM = 15;
public const int HTBOTTOMLEFT = 16;
public const int HTBOTTOMRIGHT = 17;
public const int HTBORDER = 18;
public const int HTREDUCE = HTMINBUTTON;
public const int HTZOOM
最新技术文章: