二维码彩色广告招牌的切割制作问题(C#.net下对彩色二维码圆角样式及改进)
原文:二维码彩色广告招牌的切割制作问题(C#.net下对彩色二维码圆角样式及改进)
我们知道,目前二维码还很少用于广告招牌的制作。但随着智能手机越来越普及,互联网等网络的应用也越来越广泛,作为连接物理世界与网络世界的桥梁——二维码必定会大显身手。二维码为什么这么有用?其中一个重要原因是它可以通过图像来描述计算机信息数据,并通过手机、平板电脑等终端直接与互联网相连。
在此,讲一讲二维码广告招牌的简化制作及美化的问题。
一般类型的二维码样式为矩形块状样式,如下图A所示:

图A 图B
(图B对图A的样式做了加色及圆角化处理)

图C 黑白矩形块状二维码(未做任何修饰)
由图C可知,如果招牌制作时采用图C进行制作时,会遇到制作中的零碎化,不易拼接和安装的问题——还记得有人将英文字母S和B上下反装吗?甚至有人会将6和9装倒了!更要命的是,上面这个还不够美观,客户说它不够好看!

图1 分为多个彩色块的二维码
对比图1和图C,很明显图1的制作方式会更容易加工些,安装也相对容易些。
可以看到,图1对上图C做了圆角化处理,将多余的棱角给“磨平”了,在无法磨圆的地方,补上了圆角进行填充,加上不同颜色后,由此也显得更美观些。
关于相关的编程思路,笔者之前已有专文进行论述,在此不再重复。有兴趣的童鞋可以看看这两篇:
1、 关于二维码分块上色(彩色二维码)的算法研究 http://blog.csdn.net/johnsuna/article/details/7987821
2、《C#彩色艺术化二维码样式设计(仅说思路)》http://blog.csdn.net/johnsuna/article/details/7933619

图2 简洁彩色块的二维码(绝大部分连接在一起)
图2与图1相比,连贯性更强,采用了能连优先的原则,使用深度优先算法进行程序处理。
哇,这个使用计算机切割更加容易,而且安装更简单了。

图3 加背景的二维码(多块式)

图4 加背景色的二维码(简洁式)

图5 LOGO的二维码(同时突出定位块)

图6 带LOGO的简洁式二维码(看看,这个像不像用防滑钢板做出来的?)
为什么要连在一起,尽量简洁成块呢?
这样做有几个好处:想想看,今后将二维码用于门店招牌时,广告公司更易制作和安装。同时,由于一大块相互连接,做成底图和背景图时,也会显得整齐划一。当然,还有材料综合利用的问题,比如制作废料。观察上面图3与图6可知,如果在广告招牌制作前,如果做好统一规划,开料时使用正方形料时,制作完成后还可以将剩下的废料再试制作成另一个“镂空”的二维码招牌,无疑,图6远比图3更方便制作。
如果你是广告业者,需要与我交流,可加QQ:329325120(加时请注明“二维码招牌”),我们也可以考虑一起来开拓相关的业务,呵呵。
关于上面所写的简化美观后的二维码,还有什么其他方面的用处吗?留待列位去思考。
二维码彩色广告招牌的切割制作问题(C#.net下对彩色二维码圆角样式及改进)的更多相关文章
- iOS系统原生 二维码的生成、扫描和读取(高清、彩色)
由于近期工作中遇到了个需求:需要将一些固定的字段 在多个移动端进行相互传输,所以就想到了 二维码 这个神奇的东东! 现在的大街上.连个摊煎饼的大妈 都有自己的二维码来让大家进行扫码支付.可见现在的二维 ...
- 日常运维中的相关日志切割处理方法总结 [Logrotate、python、shell脚本实现 ]
对于Linux系统安全来说,日志文件是极其重要的工具.不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本,大家似乎遗忘了Logrotate,争相发明自己的轮 ...
- Linux下USB suspend/resume源码分析【转】
转自:http://blog.csdn.net/aaronychen/article/details/3928479 Linux下USB suspend/resume源码分析 Author:aaron ...
- Redis源码阅读(六)集群-故障迁移(下)
Redis源码阅读(六)集群-故障迁移(下) 最近私人的事情比较多,没有抽出时间来整理博客.书接上文,上一篇里总结了Redis故障迁移的几个关键点,以及Redis中故障检测的实现.本篇主要介绍集群检测 ...
- flask的debug模式下,网页输入pin码进行调试
网站后端Python+Flask .FLASK调试模式之开启DEBUG与PIN使用? 自动加载: # 方式一 1 2 if __name__ == '__main__': app.run(ho ...
- 在Visual Studio 中使用git——同步到远程服务器-下(十二)
在Visual Studio 中使用git--什么是Git(一) 在Visual Studio 中使用git--给Visual Studio安装 git插件(二) 在Visual Studio 中使用 ...
- linux下hadoop2.6.1源码64位的编译
linux下hadoop2.6.1源码64位的编译 一. 前言 Apache官网上提供的hadoop本地库是32位的,如果我们的Linux服务器是64位的话,就会现问题.我们在64位服务器执行Hado ...
- linux下MySQL 5.6源码安装
linux下MySQL 5.6源码安装 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件 ...
- 源码来袭!!!基于jquery的ajax分页插件(demo+源码)
前几天打开自己的博客园主页,无意间发现自己的园龄竟然有4年之久了.可是看自己的博客列表却是空空如也,其实之前也有写过,但是一直没发布(然而好像并没有什么卵用).刚开始学习编程时就接触到博客园,且在博客 ...
随机推荐
- windows cmd 查看文件目录树
windows + R ⇒ 输入 cmd ⇒ 进入 windows 命令行界面: tree/?:命令提示: tree:不输入任何参数,输出一棵目录树 不显示文件,只显示目录: tree/F:递归显示目 ...
- 为什么 qt 成为 c++ 界面编程的第一选择?
为什么qt成为c++界面编程的第一选择 一.前言 为什么现在QT越来越成为界面编程的第一选择,笔者从事qt界面编程已经有接近8年,在这之前我做C++界面都是基于MFC,也做过5年左右.当时为什么会从M ...
- 结构体(struct)与类(class)
在 C++ 的范畴里,除了 struct 结构体不支持访问权限修饰符(private.protected.public)外,已不再区分二者的其他方面语法上的差异. 因此,在 C++ 编程中,如果一个类 ...
- [Angular] Reactive Form -- FormControl & formControlName, FormGroup, formGroup & formGroupName
First time dealing with Reactive form might be a little bit hard to understand. I have used Angular- ...
- python启动应用程序和终止应用程序
python启动应用程序和终止应用程序 1. 目的 每天上班,工作需要,电脑上需要每天开机启动一些软件,下班时候,需要关掉一些软件.一个一个打开和关闭貌似是很繁琐的,于是乎,这个脚本产生了. 2. 环 ...
- .net core ——微服务内通信Thrift和Http客户端响应比较
原文:.net core --微服务内通信Thrift和Http客户端响应比较 目录 1.Benchmark介绍 2.测试下微服务访问效率 3.结果 引用链接 1.Benchmark介绍 wiki中有 ...
- DotNetty编写跨平台网络通信
DotNetty编写跨平台网络通信 长久以来,.Net开发人员都非常羡慕Java有Netty这样,高效,稳定又易用的网络通信基础框架.终于微软的Azure团队,使用C#实现的Netty的版本发布.不但 ...
- NET媒体文件操作组件TagLib
开源的.NET媒体文件操作组件TagLib#解析 人生得意须尽欢 莫使金樽空对月.写博客都会在吃饭后,每次吃饭都要喝上二两小酒,写博客前都要闲扯,这些都是个人爱好,改不掉了,看不惯的人,还望多多包 ...
- events(事件): 基础1
1 所有能触发事件的对象都是 EventEmitter 类的实例. 这些对象开放了一个 eventEmitter.on() 函数,允许将一个或多个函数绑定到会被对象触发的命名事件上. 事件名称通 ...
- Smali相关的基础知识点
通过本篇博客的学习,相信你可以无压力的读懂Smali语言文件,并可以将Smali还原成java!!! 其实Smali语言并不是很难,如果你有一些汇编指令的基础,学习Smali就更加简单了,有兴趣的可以 ...