Adobe ColdFusion 8

ImageDrawRoundRect

Description

Draws a rectangle with rounded corners.

Returns

Nothing.

Category

Image functions

Function syntax

ImageDrawRoundRect(name, x, y, width, height, arcWidth, arcHeight [, filled])

See also

ImageDrawBeveledRect, ImageDrawCubicCurve, ImageDrawLine, ImageDrawLines, ImageDrawOval, ImageDrawQuadraticCurve, ImageDrawRect, ImageSetAntialiasing, ImageSetDrawingColor, ImageSetDrawingStroke, IsImageFile

History

ColdFusion 8: Added this function.

Parameters

Parameter

Description

name

Required. The ColdFusion image on which this operation is performed.

x

Required. The x coordinate of the rectangle.

y

Required. The y coordinate of the rectangle.

width

Required. The width of the rectangle.

height

Required. The height of the rectangle.

arcWidth

Required. The horizontal diameter of the arc at the four corners.

arcHeight

Required. The vertical diameter of the arc at the four corners.

filled

Optional. Specify whether the rectangle is filled:

  • yes: The rectangle is filled with the specified drawing color.
  • no: Only the outline of the rectangle is drawn (default).

Usage

The left and right edges of the rectangle are at x and x plus width, respectively. The upper and lower edges are at y and y plus height, respectively.

Set the filled parameter to yes to fill the rectangle with the current drawing color.

Use the ImageSetDrawingColor and ImageSetDrawingStroke functions to control the color and line attributes of the rectangle. Use the ImageSetAntialiasing function to improve the quality of the rendered image.

Example

Example 1

<!--- This example shows how to draw a square with rounded corners. --->
<!--- Create a 200x200-pixel image. --->
<cfset myImage=ImageNew("",200,200)>
<!--- Set the drawing color for the image to blue. --->
<cfset ImageSetDrawingColor(myImage,"blue")>
<!--- Turn on antialiasing to improve image quality. --->
<cfset ImageSetAntialiasing(myImage,"on")>
<!--- Draw a blue filled square with round corners of arcWidth=10 and arcHeight=2. --->
<cfset ImageDrawRoundRect(myImage,5,5,190,190,"yes",10,2)>
<!--- Display the image in a browser. --->
<cfimage source="#myImage#" action="writeToBrowser">

Example 2

<!--- Create an image. --->
<cfset myImage = imageNew("",100,100,"argb")>
<!--- Create a text attribute collection. --->
<cfset textStruct = structNew()>
<cfset textStruct.size=16>
<cfset textStruct.style="bold">
<cfset textStruct.font="Trebuchet MS">

<cfoutput>
<cfloop from="1" to="20" index="i">
    <!--- Turn on antialiasing to improve the quality of the rendered image. --->
    <cfset ImageSetAntialiasing(myImage,"on")>
    <!--- Set the background color. --->
    <cfset ImageSetBackgroundColor(myImage,"cyan") />
    <cfset ImageClearRect(myImage,0,0,myImage.getwidth(),myImage.getheight())>
    <!--- Set the drawing color. --->
    <cfset ImageSetDrawingColor(myImage,"black") />
    <!--- Draw a rectangle with rounded corners. --->
    <cfset ImageDrawRoundRect(myImage,10,10,myImage.width-20, myImage.height-20,i,i,"yes")>
    <!--- Set the text arc value. --->
    <cfset ImageSetDrawingColor(myImage,"##cccccc")>
    <cfset ImageDrawText(myImage, "#i#",30,30,textStruct)>
    <!--- Write the image to a file. --->
    <cfset imageWrite(myImage,"#expandPath("#i#.png")#")>
    <!--- Display the image. --->
    <img src="#i#.png">
</cfloop>
</cfoutput>