对于手机、相机等设备拍摄的照片,由于手持方向的不同,拍出来的照片可能是旋转0°、90°、180°和270°。即使在电脑上利用软件将其转正,他们的exif信息中还是会保留方位信息。在用PIL读取这些图像时,读取的是原始数据,也就是说,即使电脑屏幕上显示是正常的照片,用PIL读进来后,也可能是旋转的图像,并且图片的size也可能与屏幕上的不一样。对于这种情况,可以利用PIL读取exif中的orientation信息,然后根据这个信息将图片转正后,再进行后续操作
系统 2019-09-27 17:47:47 2891
今天在做一个功能时,发现用IE时Iframe里面的app写不了Cookie.使用firefox,或者不用iframe的方式的话Cookie是可以写入的.这个问题搞了很久后发现原来是IEblockIframe里面的app生成Cookie.在一位高手的帮助下,可以通过增加一个responseheader解决这个问题.response.addHeader("P3P","CP=\"CAOPSAOUR\"");Reference:http://james.james
系统 2019-08-29 23:37:39 2891
“IT茶馆”开业,助西部IT腾飞文/王易见这两年IT业发展很快,包括北京、上海、深圳三地各式各样的IT活动搞得如火如荼,而身处西部,我却感受不到IT气氛的浓烈,西部作为大开发的重要基地,一直以来IT业却处于低潮,未免让人遗憾。最近获悉,在高新区领导大力支持下,由天府软件园公司和高新置业公司共同打造的线下IT茶馆于200
系统 2019-08-29 23:21:41 2891
我们在一些WEB项目中需要应用简单的地图,而且最好是可以自定义标注地点,最好是可以从本地数据库中读取并在地图上展示地点,那么谷歌地图插件Mapsed.js是比较好的选择,使用起来简单,无需注册地图接口之类的复杂过程,就能轻松的在网页上展示地图效果。查看演示DEMO下载源码Mappy.js是一款基于jQuery的地图插件,我们来看下如何使用它。准备工作首先需要将必要的js和css文件加载到html页面,当然这些文件在我们提供的下载包里已经打包好,请放心下载使
系统 2019-08-29 23:12:18 2891
转自网易:http://news.163.com/2004w12/12761/2004w12_1102556240778_3.html作者:刘鉴强12月1日,国家农业部的一个会议静悄悄地结束。官方没有公布会议内容,与会者也三缄其口。但股民作出了强烈的反应。第二天,一支名为“丰乐种业”的股票涨停。“有人要发财了。”一位业内人士说。刺激股民的,是这样一个强烈的信息:“中国将成为世界上第一个商业化种植转基因水稻的国家。”而“丰乐种业”,被有些股民称为“中国转基因
系统 2019-08-29 23:04:49 2891
本博客jacob列文章导读Java操作MicrosoftWord之jacobjacob使用入门及问题解析使用Jacob将Word转为Html或txt使用Jacob将Word转为PDFjava通过jacob调用word(根据Word模板生成动态内容)首先,大家先要了解一下jacob,官方的解释是JavaCOMBridge,即java和com组件间的桥梁(进一步了解com/dcom:http://docs.huihoo.com/com/)com一般表现为dll
系统 2019-08-29 22:26:03 2891
1、从oracle到PDM文件逆向工程中,需要注意去掉“”,这个百度下很多帖子,用于去掉引号2、从注释copy到name运行脚本会有个问题就是,有些注释太长,不美观解决方案,vb脚本判断注释中是否含有空格,如果含有去以空格spilt后的数组的第一个为name,要求写注释时描述性文字在字段名字后要以空格分开例如code:flag。库中comment:标志位:【1、有效】【0、无效】默认【1】这样逆向工程出来的效果3运行脚本如下[运行方法,选中pdm文件中的表
系统 2019-08-12 01:54:38 2891
软件应该是可以扩展的,但是不可以修改的。对扩展都是开放的,模块式可以扩展来满足新的行为,我们可以改变模块的功能。OCP的好处是,尽可能的减少修改模块的次数和范围,从而提高代码的可维护性,复用性。比如操作系统的升级补丁,在修复bug的情况下,肯定是越小越小。如果说OCP做的不好,每次修改需要修改大量的文件,那就会导致补丁很大。对于修改是封闭的,在扩展模块的时候,不必改动源代码的二进制文件,不管是.o文件还是.dll文件都不用改动。问题的核心是怎么样改变了模块
系统 2019-08-12 01:32:46 2891
vim查找替换功能总结1,简单替换表达式搜索并替换。输入:[range]s/from/to/[flags]命令可以搜索匹配的字符串并且替换为指定的字符串。这是一个稍微复杂的命令。其中[range]是一个可选项,用来指定搜索替换的范围。[flags]也是一个可选项,用来指定搜索替换的处理方式。所以这个命令的简单形式是:s/from/to/。搜索替换的范围。如果没有指定范围,则只在当前行进行搜索替换。在所有行进行搜索替换。范围符号%表示在所有行进行搜索替换。:
系统 2019-08-12 01:32:01 2891
——.NET设计模式系列之六Terrylee,2006年1月概述在软件系统中,有时候面临的产品类是动态变化的,而且这个产品类具有一定的等级结构。这时如果用工厂模式,则与产品类等级结构平行的工厂方法类也要随着这种变化而变化,显然不大合适。那么如何封装这种动态的变化?从而使依赖于这些易变对象的客户程序不随着产品类变化?意图用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。结构图Prototype模式结构图生活中的例子Prototype模式使用原型
系统 2019-08-29 23:53:11 2890