2016年1月

Python中在图片的右上角标上数字

Talk is cheap,show me your code

环境:python2.7和内置的PIL库
Debian 8.2

#!/usr/bin/env python
# encoding: utf-8
from PIL import Image,ImageFont,ImageDraw
class addnumber(object):
    def __init__(self):
        pass
    def open(self,filePath):
        # global img
        self.img = Image.open(filePath)
    def draw(self,filePath):
        # 不应该用global  面向对象!应该用self.img
        # global img
        draw = ImageDraw.Draw(self.img)
        # img.size 返回一个元组,分别为横像素和纵像素
        self.FontSize = min(self.img.size)/8
        # 把size打出来看一下,看一下图片的大小,再确定后面的数字的偏移量
        # print 是python里最好的debug方式
        print self.img.size
        font = ImageFont.truetype("/home/panda/python/lib/MONACO.TTF",self.FontSize)
        # draw.text ((x,y),“text,"RGB值”,字体)
        # 如果这里不-50的x坐标,那么整个“5”就处于图片的界外了,所以需要减一个数值
        # Y坐标可以设为0,这样顶部就对齐最上
        draw.text((self.img.size[0]-50,0),"5",(256,0,0),font = font)
        self.img.save("./output.jpg","jpeg")

test = addnumber()
Path=raw_input("filePath\n")
test.open(Path)
test.draw(Path)

总结:在编写过程中,错误的用了global img 的方式,实际上这是把面向过程和面向对象搞混了,虽然也能运行,但是这样就写的一塌糊涂了。

Git 编辑器从Nano 切换到 Vim

Git commit 时经常弹出nano的界面,但是我完全不会nano

不知道linus当时怎么想的,居然选择nano作为编辑器,习惯vim后nano简直反人类。 所以修改编辑器为vim是必须的~

git config --global core.editor vim
或者打开.git/config文件,在core中添加 editor=vim

这样就可以切换到vim了

shadowsocks 非专业 原理分析

什么是 ShadowSocks (影梭)

ShadowSocks 是由@clowwindy所开发的一个开源 Socks5 代理。如其官网所言 ,它是 “A secure socks5 proxy, designed to protect your Internet traffic” (一个安全的 Socks5 代理)。其作用,亦如该项目主页的 wiki中文版) 中所说,“A fast tunnel proxy that helps you bypass firewalls” (一个可穿透防火墙的快速代理)。

- 阅读剩余部分 -