4.2 通过轨迹使用描边和填充绘制形状
The following is a list of the available commands and their usage. Specifying the uppercase version of a command causes the drawing procedure to treat the parameter values as absolute, while specifying the lowercase version causes it to consider them as relative:
下面是列出了有效的指令和他们的用法。指定指令的大写字母则绘图程序将参数值是为绝对定位,指定小写字母则作为相对位置来考虑。
M/m
Moves the pen to the specified position to begin drawing
将画笔移动到指定位置并开始绘图
L/l
Draws a line segment from the current position to the specified coordinate
绘制一条从当前位置到指定坐标的线段
C/c
Draws a curve segment to the specified coordinate based on supplied control points
绘制一条到指定坐标的曲线段,它基于多个指定的控制点
Q/q
Draws a curve segment to the specified coordinate based on a single control point
绘制一条到指定坐标的曲线段,它基于一个指定的控制点
H/h
Draws a horizontal line
绘制水平线
V/v
Draws a vertical line
绘制垂直线
Z/z
Closes the path
结束路径
The following is an example of drawing a simple polygon using line segments:
下面是用线段绘制的简单多边形示例
<s:Path data="M 0 0
L 100 0
L 100 100
L 0 100
Z">
<s:stroke>
<s:SolidColorStroke color="#333333"
caps="square"
joints="miter"/>
</s:stroke>
<s:fill>
<s:SolidColor color="#00CCFF"/>
</s:fill>
</s:Path>
指定重叠区域的填充规则
<!-- 建立奇偶缠绕类型 -->
<s:Path winding="{GraphicsPathWinding.EVEN_ODD}"/>
<!-- 建立非零缠绕类型 -->
<s:Path winding="{GraphicsPathWinding.NON_ZERO}"/>
4.3 在图形中显示文本
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Script>
<![CDATA[
import spark.utils.TextFlowUtil;
[Bindable]
public var txt:String = "<div>" +
"<img source='assets/icon.png' width='20' height='20' />" +
"<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit," +
"<span fontWeight='bold'>sed diam nonummy nibh euismod tincidunt ut" +
"laoreet dolore</span>" +
"magna aliquam erat volutpat.</p></div>";
]]>
</fx:Script>
<s:Graphic x="10" y="10">
<s:RichText width="400" height="60"
columnCount="4"
fontFamily="Helvetica"
textFlow="{TextFlowUtil.importFromString(txt)}"/>
</s:Graphic>
</s:Application>
4.4 图形中显示位图图片
<s:BitmapImage id="img" width="450" height="400"
source="@Embed('assets/icon.jpg')" />
<s:Ellipse id="imgEllipse" width="450" height="400">
<s:fill>
<s:BitmapFill id="imgFill"
fillMode="{BitmapFillMode.REPEAT|BitmapFillMode.CLIP|BitmapFillMode.SCALE}"
source="@Embed('assets/icon.jpg')" />
</s:fill>
</s:Ellipse>
运行期间加载图像
private function handleCreationComplete():void {
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, handleLoadComplete);
loader.load(new URLRequest('http://covers.oreilly.com/images/9780596529857/bkt.gif'));
}
private function handleLoadComplete(evt:Event):void {
var bmp:Bitmap = (evt.target as LoaderInfo).content as Bitmap;
img.source = bmp;
}
4.5 显示渐变文本(蒙板)
<s:Graphic maskType="{MaskType.ALPHA|MaskType.CLIP|MaskType.LUMINOSITY}">
<s:Rect width="{textMask.width}" height="{textMask.height}">
<s:fill>
<s:LinearGradient rotation="90">
<s:entries>
<s:GradientEntry color="#000000" />
<s:GradientEntry color="#FFFFFF" />
</s:entries>
</s:LinearGradient>
</s:fill>
</s:Rect>
<s:mask>
<s:RichText id="textMask" fontFamily="Arial" fontSize="20">
<s:content>Hello World!</s:content>
</s:RichText>
</s:mask>
</s:Graphic>
4.6 位图蒙板
<s:Graphic id="group" maskType="{maskList.selectedItem}">
<s:Rect width="320" height="320">
<s:fill>
<s:LinearGradient>
<s:entries>
<s:GradientEntry color="#000000" />
<s:GradientEntry color="#DDDDDD" />
</s:entries>
</s:LinearGradient>
</s:fill>
</s:Rect>
<s:mask>
<s:Group>
<s:BitmapImage source="@Embed('/assets/alpha_bitmap.png')" />
</s:Group>
</s:mask>
</s:Graphic>
// 控制计算由发光度蒙版设置蒙版的图形元素的 RGB 颜色值的属性。
// 如果为 true,则蒙版中的相应区域将反转并乘以源内容中像素的 RGB 颜色值。
// 如果为 false,则直接使用源内容中像素的 RGB 颜色值。
spark.components.supportClasses.GroupBase.luminosityInvert():Boolean
// 控制发光度蒙版是否剪辑设置了蒙版的内容的属性。
// 只有图形元素应用了类型为 MaskType.LUMINOSITY 的蒙版,此属性才会起作用。
spark.components.supportClasses.GroupBase.luminosityClip():Boolean
分享到:
相关推荐
在调用`__soapCall`时,将SOAP头作为第四个参数传递。 接下来,我们看看服务端的实现。`SOAPServer`类用于创建SOAP服务。在例子中,服务类`pc_SOAP_return_time`定义了一个名为`return_time`的方法,该方法返回当前...
Apache Solr 4 Cookbook Apache Solr 4 Cookbook Apache Solr 4 Cookbook Apache Solr 4 Cookbook Apache Solr 4 Cookbook
WF4 Cookbook中文版是针对Microsoft Windows Workflow Foundation 4.0(WF4)的一份技术指南,旨在帮助开发者更好地理解和利用WF4进行工作流应用的开发。Windows Workflow Foundation是一个.NET Framework的一部分,...
《iOS Cookbook 7 第19章代码》是一个关于iOS应用开发的资源集合,主要涵盖了第19章中的各种编程实践和示例代码。这个压缩包很可能是为了帮助开发者理解和实现iOS应用中的特定功能或者技术。从文件名"cookbook7_19_1...
Flex 4 Cookbook
### iOS 4 Programming Cookbook #### 书本概览与核心知识点 《iOS 4 Programming Cookbook》是一本专门针对iOS 4开发的技术书籍,由Vandad Nahavandipoor撰写,于2011年1月由O'Reilly Media出版。本书主要面向iOS...
Unreal Engine 4 Scripting with C++Cookbook Get the best out of your games by scripting them using UE4 William Sherif Stephen Whittle 2016版
**Redis 4.x Cookbook中文版**是一本专为学习和参考设计的图书,旨在帮助读者深入理解并熟练运用Redis 4.x版本。Redis,全名Remote Dictionary Server,是一款开源、高性能、支持网络、键值存储的数据结构服务器。...
Mysql 8 读书笔记,原文为英文版的Mysql 8 cookBook 。这个是md文档,支持markdown语法,可浏览,可编辑。
### Swift 4 Programming Cookbook 关键知识点解析 #### 标题:Swift 4 Programming Cookbook(高清彩版) **Swift 4 Programming Cookbook** 是一本专注于Swift 4编程语言的实用指南。这本书旨在通过一系列实用的...
《C# 6.0 Cookbook 4th Edition》是C#编程领域的一本经典实例教程,专注于解决实际问题。此书由O'Reilly出版,旨在帮助开发者熟练掌握C# 6.0版本的新特性和最佳实践。以下是该书及其配套代码中涉及的一些重要知识点...
Swift 4 Programming Cookbook 英文azw3 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
Lucene 4 Cookbook is a practical guide that shows you how to build a scalable search engine for your application, from an internal documentation search to a wide-scale web implementation with millions...
2. **0423_09_codes**:这代表了第9章的示例代码,可能涵盖了光照、阴影、材质和纹理的使用,或者是图形渲染技术,如粒子系统和后期处理效果。在Unity中,视觉效果是非常重要的一环,这部分代码将帮助开发者理解和...
OpenGL 4 Shading Language Cookbook(2nd) 是一本专注于利用OpenGL 4的着色语言(GLSL)进行图形编程的实战指南。这本书的第二版针对现代GPU编程进行了更新,为开发者提供了实现各种视觉效果和高性能图形计算的实用...