`
176170847
  • 浏览: 95914 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

设置线条样式的参数

阅读更多

象房村

 

 

<?xml version="1.0" encoding="utf-8"?><application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" verticalalign="middle" backgroundcolor="white"><zoom id="zoom"></zoom><applicationcontrolbar dock="true"><button label="hide" click="panel.visible = false;" enabled="{panel.visible}"></button> <button label="show" click="panel.visible = true;" enabled="{!panel.visible}"></button> </applicationcontrolbar><panel id="panel" title="title" status="status" showeffect="{zoom}" hideeffect="{zoom}" width="100%" height="100%"><controlbar><label text="control bar"></label> </controlbar></panel></application> 如果你想加个easing 效果(Back, Bounce, Elastic, etc),只要指定Zoom的easingFunction就可以了,像上边第2个演示那样,只要加上下边的代码就可以了 <script></script><zoom id="zoom" easingfunction="Bounce.easeOut"></zoom>

 

可以设置线条样式的参数,以更改笔触的外观。可以使用参数来更改线条样式的粗细、颜色、Alpha、比例因子和其它属性。

设置线条粗细

通过 MovieClip.lineStyle() 方法的 thickness 参数可以用点数指定所绘制线条的粗细。可以绘制粗细在 0 到 255 点宽之间的任意线条,但将粗细设置为 0 将创建所谓的极细 线条,其中无论如何缩放 SWF 文件或调整其大小,笔触始终为 1 像素。

下面的过程演示标准的 1 像素粗细线条与极细线条之间的差别。

创建极细笔触:

  1. 创建一个新的 Flash 文档,并将它保存为 hairline.fla
  2. 将下面的 ActionScript 添加到时间轴中的第 1 帧:
    this.createEmptyMovieClip("drawing_mc", 10); // 创建一条红色的极细线条 drawing_mc.lineStyle(0, 0xFF0000, 100); drawing_mc.moveTo(0, 0); drawing_mc.lineTo(200, 0); drawing_mc.lineTo(200, 100); // 创建一条蓝色的粗细为 1 像素的线条 drawing_mc.lineStyle(1, 0x0000FF, 100); drawing_mc.lineTo(0, 100); drawing_mc.lineTo(0, 0); drawing_mc._x = 100; drawing_mc._y = 100;
    
    

      前面的代码使用 Drawing API 在舞台上绘制两条线。第一条线为红色,粗细为 0,表示极细,第二条线为蓝色,粗细为 1 像素。

  3. 保存 Flash 文档,然后选择"控制">"测试影片"对该 SWF 文件进行测试。

      最初,红色和蓝色线条看上去完全相同。如果在 SWF 文件中右击,并从上下文菜单中选择"放大",则红色线条始终显示为 1 像素宽的线条;但是,每当您在 SWF 文件中放大时,蓝色线条都将变粗。

设置线条颜色 (rgb)

通过 lineStyle() 方法中的第二个参数 rgb 可以将当前线条段的颜色作为数字来进行控制。默认情况下,Flash 将绘制黑色线条 (#000000),但您可以使用 0xRRGGBB 语法通过设置新的十六进制颜色值来指定不同颜色。在此语法中,RR 是红色值(在 00 和 FF 之间),GG 是绿色值(00 到 FF),BB 是蓝色值(00 到 FF)。

例如,可将红色线条表示为 0xFF0000,绿色线条表示为 0x00FF00,蓝色线条表示为 0x0000FF,紫色线条表示为0xFF00FF(红色和蓝色),白色线条表示为 #FFFFFF,灰色线条表示为 #999999,等等。

设置线条 Alpha

通过 lineStyle() 方法中的第三个参数 alpha 可以控制线条的透明度 (alpha) 级别。透明度是在 0 到 100 之间的一个值,其中 0 表示完全透明的线条,而 100 表示完全不透明(可见)的线条。

设置线条像素提示 (pixelHinting)

用于 strokes 参数的像素提示 pixelHinting 表示线条和曲线锚记在完全像素中设置。对于任何笔触粗细,笔触都在完全像素中,这表示您从来看不到模糊的垂直或水平线条。将 pixelHinting 参数设置为布尔值(true 或 false)。

设置线条缩放 (noScale)

通过使用 String 值设置 noScale 参数,可以为线条指定缩放模式。可以以水平模式或垂直模式使用不可缩放的笔触,缩放线条(普通),或不使用缩放。

提示

 

在用户放大时为用户界面元素启用缩放将很有用,但是只垂直或水平缩放影片剪辑时,则不能这样做。

可以使用四种不同的模式之一指定何时应进行缩放,何时不应进行缩放。下面是 noScale 属性的可能值:

  normal  始终缩放粗细(默认)。

  vertical 如果对象垂直缩放,则不缩放粗细。

horizontal 如果对象水平缩放,则不缩放粗细。

none 从不缩放粗细。

设置线条端点 (capsStyle) 和联接点 (jointStyle)

可以为 capsStyle 参数设置三种类型的端点样式:

  • round默认
  • square
  • none

下面的过程演示了这三种端点样式之间的差别。当您对 SWF 文件进行测试时,舞台上将出现每种端点样式的可视表示形式。

设置不同的端点样式:

  1. 创建一个新的 Flash 文档,并将它保存为 capsstyle2.fla
  2. 将下面的 ActionScript 添加到时间轴中的第 1 帧:
    var lineLength:Number = 100; // round this.createEmptyMovieClip("round_mc", 10); round_mc.lineStyle(20, 0xFF0000, 100, true, "none", "round"); round_mc.moveTo(0, 0); round_mc.lineTo(lineLength, 0); round_mc.lineStyle(0, 0x000000); round_mc.moveTo(0, 0); round_mc.lineTo(lineLength, 0); round_mc._x = 50; round_mc._y = 50; var lbl:TextField = round_mc.createTextField("label_txt", 10, 0, 10, lineLength, 20); lbl.text = "round"; var lineLength:Number = 100; // square this.createEmptyMovieClip("square_mc", 20); square_mc.lineStyle(20, 0xFF0000, 100, true, "none", "square"); square_mc.moveTo(0, 0); square_mc.lineTo(lineLength, 0); square_mc.lineStyle(0, 0x000000); square_mc.moveTo(0, 0); square_mc.lineTo(lineLength, 0); square_mc._x = 200; square_mc._y = 50; var lbl:TextField = square_mc.createTextField("label_txt", 10, 0, 10, lineLength, 20); lbl.text = "square"; // none this.createEmptyMovieClip("none_mc", 30); none_mc.lineStyle(20, 0xFF0000, 100, true, "none", "none"); none_mc.moveTo(0, 0); none_mc.lineTo(lineLength, 0); none_mc.lineStyle(0, 0x000000); none_mc.moveTo(0, 0); none_mc.lineTo(lineLength, 0); none_mc._x = 350; none_mc._y = 50; var lbl:TextField = none_mc.createTextField("label_txt", 10, 0, 10, lineLength, 20); lbl.text = "none";
    
    

    前面的代码使用 Drawing API 绘制三条线,每条具有不同的 capsStyle 值。

  3. 选择"控制">"测试影片"对该 Flash 文档进行测试。

可以为 jointStyle 参数设置三种不同类型的联接点样式:

  • round默认
  • miter
  • bevel

下面的示例演示这三种联接点样式之间的差别。

设置不同的联接点样式:

  1. 创建一个新的 Flash 文档,并将它保存为 jointstyles.fla
  2. 将下面的 ActionScript 添加到时间轴中的第 1 帧:
    var lineLength:Number = 100; // miter this.createEmptyMovieClip("miter_mc", 10); miter_mc.lineStyle(25, 0xFF0000, 100, true, "none", "none", "miter", 25); miter_mc.moveTo(0, lineLength); miter_mc.lineTo(lineLength / 2, 0); miter_mc.lineTo(lineLength, lineLength); miter_mc.lineTo(0, lineLength); miter_mc._x = 50; miter_mc._y = 50; var lbl:TextField = miter_mc.createTextField("label_txt", 10, 0, lineLength + 20, lineLength, 20); lbl.autoSize = "center"; lbl.text = "miter"; // round this.createEmptyMovieClip("round_mc", 20); round_mc.lineStyle(25, 0xFF0000, 100, true, "none", "none", "round"); round_mc.moveTo(0, lineLength); round_mc.lineTo(lineLength / 2, 0); round_mc.lineTo(lineLength, lineLength); round_mc.lineTo(0, lineLength); round_mc._x = 200; round_mc._y = 50; var lbl:TextField = round_mc.createTextField("label_txt", 10, 0, lineLength + 20, lineLength, 20); lbl.autoSize = "center"; lbl.text = "round"; // bevel this.createEmptyMovieClip("bevel_mc", 30); bevel_mc.lineStyle(25, 0xFF0000, 100, true, "none", "none", "bevel"); bevel_mc.moveTo(0, lineLength); bevel_mc.lineTo(lineLength / 2, 0); bevel_mc.lineTo(lineLength, lineLength); bevel_mc.lineTo(0, lineLength); bevel_mc._x = 350; bevel_mc._y = 50; var lbl:TextField = bevel_mc.createTextField("label_txt", 10, 0, lineLength + 20, lineLength, 20); lbl.autoSize = "center"; lbl.text = "bevel";
    
    

    Flash 使用 Drawing API 在舞台上创建三个三角形。每个三角形具有不同的联接点样式值。

  3. 保存 Flash 文档,然后选择"控制">"测试影片"对该文档进行测试。

设置线条尖角 (miterLimit)

miterLimit 属性是一个数值,它指示切断尖角联接点(请参见设置线条端点 (capsStyle) 和联接点 (jointStyle))时的限制。miterLimit 值通常是笔触值的倍数。例如,如果值为 2.5,则 miterLimit 在笔触大小的 2.5 倍处切断。有效值为 0 到 255(如果 miterLimit 的值为 undefined,则默认值为 3)。仅当 jointStyle 设置为 miter 时,才使用 miterLimit属性。

 

事件 引用 触发器名称 对应事件名称 事件描述 addedEffect added 当组件被添加到容器时触发 createCompleteEffect createComplete 当组件完成绘制时触发 focusInEffect focusIn 当组件获得光标焦点时触发 focusOutEffect focusOut 当组件失去光标焦点时触发 hideEffect hide 当组件变成不可见时触发 showEffect show 当组件变成可见时触发 mouseDownEffect mouseDown 当鼠标在组件上按下时触发 mouseUpEffect mouseUp 当鼠标在组件上松开时触发 rollOverEffect rollOver 当鼠标移动到组件上时触发 moveEffect move 当组件被移动时触发 resizeEffect resize 当组件改变大小时触发 Effect中 引用 <animateproperty>可实现拉伸效果 <blur>模糊效果 <dissolve>实现淡出淡入效果,与<fade>相似 <glow>外发光效果 <iris>以矩形方式出现或消失 <move>移动效果 <parallel>多种效果叠加 <pause>停止 mx.effects.easing.Bounce.easeOut可产生弹动效果 <resize>改变大小 <rotate>旋转角度 <soundeffect>声音效果 <wipedown>从上往下消失或出现 <wipeleft>从右往左消失或出现 <wiperight>从左往右消失或出现 <wipeup>从下往上消失或出现 <zoom>放大或缩小 不同state切换时的过渡效果 Charts(统计) <areachart>是一种以面积作为表示方式 <axisrenderer>是一种轴图,股票交易常以这种方式表示 <barchart>是柱状图 <bubblechart>气泡图 <candlestickchart>一种比较有趣的图,”涨”跟”跌”的颜色会不一样 <categoryaxis>跟AxisRenderer很像 <columnchart>跟<barchart>很像 <datetimeaxis>以日期为轴的折线图 <gridlines>多条线图 <hlocchart>跟AxisRenderer很像 <legend>图例,离散的点 <linearaxis>Axis系列 <linechart>折线图 <logaxis>Axis系列 <piechart>饼图 <plotchart>跟Legend很像 </plotchart></piechart></logaxis></linechart></linearaxis> </legend></hlocchart></gridlines></datetimeaxis></barchart></columnchart></categoryaxis></candlestickchart></bubblechart></barchart></axisrenderer></areachart></zoom></wipeup></wiperight></wipeleft></wipedown></soundeffect></rotate></resize></pause></parallel></move></iris></glow></fade></dissolve></blur></animateproperty>

 

 

 

sunjinxin@oraro.net   sunall@126.com

  • tu.rar (3.6 MB)
  • 下载次数: 4
分享到:
评论

相关推荐

    matlab开发-标签库标准线条样式

    MATLAB提供了多种预定义的线条样式,这些样式可以在绘制图形时通过设置`lineSpec`参数来选择。`lineSpec`可以是一个包含颜色、线型和标记符号的字符串,例如'--r'表示虚线红色,'*g'表示星形绿色。 `Standard_Line_...

    自己写的一个MFC画线程序,可以设置线条宽度,颜色和线形。

    该方法接受一个枚举值,如PS_SOLID(实线)、PS_DASH(虚线)等,用来改变线条的显示样式。 **6. 用户交互** 为了响应用户的交互,比如改变线条参数,程序可能包含了一些消息处理函数,如On_WM_LBUTTONDOWN、On_WM...

    html5 Canvas画图教程(2)—画直线与设置线条的样式如颜色/端点/交汇点

    总结来说,HTML5 Canvas提供了一系列方法和属性,使我们能够灵活地绘制直线、设置线条样式,并控制线条的连接和端点。通过熟练掌握这些技巧,可以创建出各种复杂的2D图形和动画效果,丰富网页的视觉表现。

    canvas 特效之变化线条

    4. 设置线条样式:如 `ctx.strokeStyle = '颜色';` 和 `ctx.lineWidth = 宽度;` 5. 绘制线条:`ctx.moveTo(x1, y1);`(移动到起点)后,`ctx.lineTo(x2, y2);`(画线到终点) 6. 关闭路径并绘制:`ctx.closePath();`...

    Direct2D绘制多种风格的线条

    代码中可能使用了CreateStrokeStyle方法创建自定义的线条样式,并使用DrawLine方法来绘制指定起点和终点的线条,同时传递颜色刷和线条样式作为参数。 在实际应用中,你可能会遇到以下关键知识点: 1. 设备上下文:...

    c++与Qt实现QChart使用样例,包含双纵坐标轴参数、样式设置,绘图曲线背景自定义,曲线实时刷新

    在绘图曲线背景自定义方面,除了基本的背景颜色,我们还可以通过创建自定义的QBrush和QPen来定义曲线的线条样式和填充效果。`QPen`用于设置线条颜色、宽度、风格等,而`QBrush`则控制填充颜色和模式。通过设置`...

    CAD尺寸标注样式的设置.doc

    当公共参数和各个子样式设置完成后,点击“确定”,新的尺寸样式将会保存并应用于图纸,使得尺寸标注规范化,提高图纸质量。 总的来说,CAD尺寸标注样式的设置是一项细致的工作,需要根据具体的设计领域和国家标准...

    qt绘图工具可以选择线型、线宽、以及颜色等

    QPainter提供了各种画笔(QPen)、刷子(QBrush)和字体(QFont)对象,用于控制线条样式、填充颜色和文本样式。 对于线型的选择,我们可以利用QPen类的setStyle()方法。这个方法接受Qt::PenStyle枚举值作为参数,...

    画图并实现线条变色

    在画图时,我们可以设置线条的颜色、宽度、样式等属性。在matplotlib中,可以通过传递额外的参数给`plot()`函数来实现。比如,要将线条颜色设为红色,可以这样做: ```python plt.plot(x, y, color='red') ``` ...

    33-绘图的样式.zip

    1. **线条样式**:在绘制线条时,我们可以设置线条的宽度、颜色、端点样式(如圆形、方形或箭头)以及连接点样式(如圆形、方形或贝塞尔曲线)。`CGContextSetLineWidth`用于设置线条宽度,`...

    自定义pb数据窗口线条颜色

    这里的参数分别代表线条ID(通常为1表示边框)、颜色(RGB值)、宽度和样式。 4. **绘制边框**:在数据窗口的`BeforePaint`事件中,调用`DrawBox`函数绘制边框。例如: ```pb dw_1.DrawBox(1, 0, dw_1.RowCount...

    html5 canvas五彩发光线条游走散开动画特效

    在CSS方面,可能涉及到对Canvas元素的样式设置,如尺寸、位置等,使其在页面上正确显示。此外,也可能有一些辅助的CSS动画,如背景颜色的过渡,来增强整体的视觉效果。 最后,JavaScript文件(可能命名为`js`)将...

Global site tag (gtag.js) - Google Analytics