Win7下的MSPaint是Ribbon的典型运行.这种SDI程序对于图像处理来说是很适合的.利用春节时间,基于之前的积累,我实现GreenOpenPaint,主要就是模拟MSPaint的界面,实现出现处理的结果. 知识要点: 1.MFC下SDI程序设计: 2.Opencv和MFC SDI的融合: 3.标尺: 4.图像缩放.   一.界面设计.功能设计 下面两图是mspaint的界面 其中: 红框是图像和区域的选择和粘贴.这个对于图像处理可能有用.但是现在不实现: 绿框是画图的操作,对于图像处理…
一.项目概述 类似Windows系统下面的画图程序,但是已经从底层全部重新实现,改造成为"图像处理"类程序的基本运行框架. 由于是demo界面,较为简陋,但是因为框架已经搭建完善,所以修改起来会很快.大概分为4个部分:部分1是Ribbon的菜单栏,可以方便地添加菜单按钮.也能够折叠起来:部分2是图像快速选择区,通过两个级联list,实时显示当前的目录下的图像(也可以获取摄像头采集的图片):部分3是主要操作区域:部分4是侧边栏,主要用于放置一些控制.配置选项的. 二.特点功能 1.可以打…
想显示一副图片相对来说比较容易.但是想在SDI中显示一个可以拖拽的矩形框,并且在滚动和缩放下都不变形,是很困难的. MFC应该说在这个方面提供了强大的支持,但是也有一些是由于历史的原因需要去除的地方,特别是在缩放的这个地方还存在一些问题. 我认为关键是形成知识的框架,这样面对未来的需求就能够灵活应变. 这里,我结合GreenOpenPaint的具体实现进行总结. 我总结了一下,有几点: 1.肯定是要为这个矩形生成专门的类.这个类的实现,需要在DOC中,因为DOC就是用来管理所有的模型的:那么注意…
如果只是直接的图片保存和打开,是没有很多内容的.但是我这里,将EXIF的信息融入其中,使得图像处理的结果能够保存下来.这样就非常有价值意义了. 所有的操作都放在DOC中进行处理. 我之前已经对EXIF的操作进行总结,这里进行引入 #include "Exif.h" /*读取 EXIFINFO m_exifinfo; FILE* hFile=fopen(FilePathName.c_str(),"rb"); if (hFile){ memset(&m_exif…
一懒起来就好久没更新文章了,其实懒也还是因为忙,今年上半年的加班赶上了去年一年的加班,加班不息啊,好了吐槽完就写写一直打算继续的自动化开发 目前各种UI测试框架层出不穷,但是万变不离其宗,驱动PC浏览器的基本上底层都是selenium,驱动无线app和浏览器基本是appium.monkey之类的,底层都是基于官方支持的自动化测试框架开发而来,然后上层又做了各种封装 首先在开始计划开发自动化时,第一步是了解目前已有的自动化开发技术,上面说了,最底层的就那几种,根据实际要去测试的业务需求选择合适的自…
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从python到Node.js,了解过设计模式,也跟风了微信公众号开发.然而却浅尝辄止,未曾深入.买了一本本的技术书籍,没完整的翻完一本.屯了一部部的pdf,却只是在手机里占着内存.想过改变,却从未曾着手改变. 以上算是我程序猿生涯的真实写照. 现在我要尝试改变,从基础的helloworld开始,记下学习…
在上一篇<<旺财速啃H5框架之Bootstrap(四)>>做了基本的框架,<<旺财速啃H5框架之Bootstrap(二)>>篇里也大体认识了bootstrap.css样式,下面我们来学习常见的CSS操控内容篇幅.... 一.响应式图片 基本样式: <img src="..." class="img-responsive" alt="响应式图片"> Bootstrap.css 937行 .…
1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-Seed项目来开发,本文首先分析angular-seed项目的目录结构.以及AngularJS团队为我们做了什么事情,提供了我们真实开发最需要的框架结构. 这个项目仅仅是一个典型的AngularJS网络应用程序的应用程序骨架. 您可以使用它来快速引导您的Angular webapp项目和搭建开发环境.…
关于Scrapy如何安装部署的文章已经相当多了,但是网上实战的例子还不是很多,近来正好在学习该爬虫框架,就简单写了个Spider Demo来实践.作为硬件数码控,我选择了经常光顾的中关村在线的手机页面进行爬取,大体思路如下图所示. # coding:utf-8 import scrapy import re import os import sqlite3 from myspider.items import SpiderItem class ZolSpider(scrapy.Spider):…
一.PATHINFO功能简述 搞PHP的都知道ThinkPHP是一个免费开源的轻量级PHP框架,虽说轻量但它的功能却很强大.这也是我接触学习的第一个框架.TP框架中的URL默认模式即是PathInfo模式.这个模式很强大,每当你访问一个网站必然带有一长串参数,但是太长又显得不太友好.对于访问一个以MVC模式搭建的网站,必然带有M.C.A三个参数即module.controller.action,这些参数需要还需要用&符号隔开,假若参数量很多,就显得特别的不友好啦.然而PathInfo模式功能就是…