原文:WPF图形/文字特别效果之一:交叉效果探讨

为了说明问题,先看下图:

图1  完全重叠的单一颜色文字
它是2008几个字的叠加,并且颜色为单一的红色。如果不仔细分辨,你或许无法一下子看出是2008。

再看下图:

图2  重叠的且颜色交叉的文字2008
它仍是2008几个数字的叠加,不过有两种颜色交替叠加,这次,很容易看出2008四个数字。

接着看下图:

图3  文字2008及颜色的交替叠加
它与图2不同之处在于,每个数字与上一数字在颜色上也交替叠加,看上去更有艺术效果。好象链条一样一环扣一环。

再看下面效果:

图4  文字2008及颜色的交替叠加
如果你不仔细看,或许你会说不是与图3一样吗?其实不是!你不妨需要仔细对比一下,看看有何不同?

说了这么多,我的目的是要探讨如何在WPF中实现任意文字的交替叠加问题

为了说明问题,我们必须对每个细节做深入的研究,这样才能达到尽量的艺术化效果。
由于前面两种效果简单之极,因此不在本文的探讨范围内,本文只说后面两种情况。

为了更好地说明问题,我先将文字进行分块并标上序号:


图5  上图3的分块

注意序号为⑦的那一块,由于太小,或许你看不太清楚,但它实实在在存在,看看上图4相应的区域就知道了。


图6  上图4的分块

下面分析一下如何进行调整各块的颜色:


图7(a)   分块未加编号(数字2为顺时针走势,后面的两个0均为逆时针走势)


图7(b)    分块加了编号(数字2为顺时针走势,后面的两个0均为逆时针走势)
以上是一种叠加方式(注意箭头所示的走向及序号排法)

说明:
(1)对于数字2来说,序号为2的块在上,显示为红色,4在下,即被遮住,6在上。(总结:单次交叉在上,双次交叉在下)
(2)对于第一个数字0来说,第一次相交的编号为2的块在下,第二次相交的编号为4的块在上,第三次相交编号为6的块在下,但考虑到第11为上,第9块黄色被遮(在下)。


图8(a)   走势图(未加序号)


图8(b)   走势图(加序号)

   以上是另一种方式(注意箭头所示的走向及序号排法)

WPF图形/文字特别效果之一:交叉效果探讨的更多相关文章

  1. WPF图形/文字特别效果之一:交叉效果探讨(续)

    原文:WPF图形/文字特别效果之一:交叉效果探讨(续) 在"WPF图形/文字特别效果之一:交叉效果探讨"(http://blog.csdn.net/johnsuna/archive ...

  2. 调整 FMX Android 文字显示「锯齿」效果

    说明:调整 Firemonkey Android 显示文字有「锯齿」效果 适用:Firemonkey Android 平台 修改方法: 请将源码 FMX.FontGlyphs.Android.pas  ...

  3. jquery 单行滚动、批量多行滚动、文字图片翻屏滚动效果代码

    jquery单行滚动.批量多行滚动.文字图片翻屏滚动效果代码,需要的朋友可以参考下. 以下代码,运行后,需要刷新下,才能加载jquery,要不然看不到效果.一.单行滚动效果 <!DOCTYPE ...

  4. 在WPF中使用PlaneProjection模拟动态3D效果

    原文:在WPF中使用PlaneProjection模拟动态3D效果 虽然在WPF中也集成了3D呈现的功能,在简单的3D应用中,有时候并不需要真实光影的3D场景.毕竟使用3D引擎会消耗很多资源,有时候使 ...

  5. 让TextView里面的文字逐个显示的动画效果实现(1)

    最近使用TextView时想要实现里面的文字逐个显示的动画效果,就如同打字一样. 主要实现思想:新建一个TextView的派生类,先将要逐个显示的字符串保存变量 mOriginalStr 中,然后启动 ...

  6. WPF中,如何将Vista Aero效果扩展到整个窗口

    原文:WPF中,如何将Vista Aero效果扩展到整个窗口   WPF中,如何将Vista Aero效果扩展到整个窗口                                         ...

  7. jQuery鼠标悬停文字渐隐渐现动画效果

    jQuery鼠标悬停文字渐隐渐现动画效果 当时是做项目的时候用到的所以图片有些大,九张,真正要做图片不需要这么大 css样式 <style> *{ margin: 0; padding: ...

  8. javaScript实现选中文字提示新浪微博分享的效果

    <!DOCTYPE html> <html xmlns:wb="http://open.weibo.com/wb"> <head> <me ...

  9. C# WPF QQ新消息托盘悬浮窗效果实现

    原文:C# WPF QQ新消息托盘悬浮窗效果实现 今天在做一个项目的时候需要这么一个效果,但是网上找了一会发现并没有现成的给我参考(复制),但是呢,我千(到)辛(处)万(抄)苦(袭)想(复)破(制)头 ...

随机推荐

  1. [Nuxt] Build a Navigation Component in Vue.js and Use in a Nuxt Layout

    You can isolate parts of templates you want to re-use into components, but you can also reuse those ...

  2. 使用maven进行测试设置断点调试的方法

    在Maven中配置测试插件surefire来进行单元测试,默认情况下,surefire会执行文件名以Test开头或结尾的测试用例,或者是以TestCase结尾的测试用例.               ...

  3. C++利用SOAP开发WebService

    // soapconsole.cpp : Defines the entry point for the console application.// #include "stdafx.h& ...

  4. ArcSDE:C#打开SDE数据库的几种方式总结

    转自原文 ArcSDE:C#打开SDE数据库的几种方式总结 1.通过指定连接属性参数打开数据库 /// <param name="server">数据库服务器名< ...

  5. 一个自己主动依据xcode中的objective-c代码生成类关系图的神器

    https://github.com/kimsungwhee/KSHObjcUML 安装方法: 1.下载项目 2.执行 3.会又一次开启一个新的xcode 4.选择一个项目,点击 Objc-UML 会 ...

  6. 【搜索引擎Jediael开发笔记】V0.1完整代码 2014-05-26 15:16 443人阅读 评论(0) 收藏

    详细代码请见 E:\Project\[重要]归档代码\SearchEngine归档代码 或 https://code.csdn.net/jediael_lu/jediael/tree/10991c83 ...

  7. 【PHP】php 递归、效率和分析(转)

    递归的定义 递归(http:/en.wikipedia.org/wiki/Recursive)是一种函数调用自身(直接或间接)的一种机制,这种强大的思想可以把某些复杂的概念变得极为简单.在计算机科学之 ...

  8. [Compose] 8. A curated collection of Monoids and their uses

    const { List } = require('immutable-ext'); const Right = x => ({ chain : f => f(x), ap : other ...

  9. ios开发日期的NSDate,NSCalendar分类

    #import <Foundation/Foundation.h> @interface NSDate (XMGExtension) /** */ // @property (nonato ...

  10. ios开发之多线程---GCD

    一:基本概念 1:进程:正在运行的程序为进程. 2:线程:每个进程要想执行任务必须得有线程,进程中任务的执行都是在线程中. 3:线程的串行:一条线程里任务的执行都是串行的,假如有一个进程开辟了一条线程 ...