트레이닝 센터

리포트 생성과 문서 변환

C1FlashCanvas을 사용하여 Flash단일 프레임 화면 또는 배경작성

본문은 C1FlashCanvas 컨트롤이 Flash 단일 프레임 화면이나 배경을 어떻게 작성하는지 소개합니다. C1FlashCanvas는 .NET 도형 유형과 비슷한 모듈입니다. .NET Graphics 유형과 완전히 동일한 도형 작성방법과 속성을 포함합니다.


C1FlashCanvas 만들기

먼저, 도구상자에서 C1FlashCanvas를 창에 드래그합니다. 코드를 이용할 수도 있습니다.

예:

private C1.C1Flash.C1FlashCanvas c1FlashCanvas1 = new C1.C1Flash.C1FlashCanvas();

Flash단일 프레임 화면 작성

Flash단일 프레임 화면을 작성하기 전, C1FlashCanvas의Clear함수를 사용하여 canvas안의 모든 내용을 삭제합니다.

그리고 C1FlashCavas의Draw함수를 사용하여 필요한 도형을 작성합니다. 텍스트, 이미지, 선, 사각형, 타원, 부채꼴, 원호, 둥근 사각형, 다각형, Bezier 곡선 및 더 많은 것들을 작성할 수 있습니다. C1FlashCanvas의 DrawString, DrawImage, DrawLine등의 함수를 사용할 수 있습니다. 본문의Demo에서 각종 도형 생성에 대한 상세한 코드를 설명하고 있습니다. 아래의 예는 Rectangle로 어떻게 도형을 작성하는지 나타낸 것입니다.

코드를 사용하여 랜덤으로 Rectangle을 생성합니다. 아래의 코드 중에서 RandomRectangle함수를 사용합니다. 그리고 C1FlashCanvas의 DrawRectangle함수를 통해 canvas안에서 이 Rectangle을 작성합니다.


 private Pen _pen = new Pen(Color.Black);
_pen.Color = this.panel_DrawColor.BackColor;
_pen.Width = (int)this.upd_LineWidth.Value;
for(int i = 0; i < 20; i++)
this.c1FlashCanvas1.DrawRectangle(_pen, RandomRectangle());

private Rectangle RandomRectangle()
{
	int maxWidth = this.c1FlashCanvas1.Width;
	int maxHeight = this.c1FlashCanvas1.Height;
	Point pos = new Point(_rand.Next(_minSize, maxWidth), _rand.Next(_minSize, maxHeight));
	int width = _rand.Next(_minSize, maxWidth/2);
	int height = _rand.Next(_minSize, maxHeight/2);

	return new Rectangle(pos, new Size(width, height));
}

Flash배경작성

Flash배경을 작성하기 전, C1FlashCanvas의 Clear함수를 사용하여 canvas안의 모든 내용을 삭제합니다.

그리고 C1FlashCavas의 Fill함수를 사용하여 배경을 작성합니다. 사각형, 타원, 부채꼴 등의 배경을 작성할 수 있습니다. C1FlashCanvas의 FillPie, FillEllipse, FillRectangle등의 함수를 참고합니다. 본문의Demo에서 각종 도형 작성법의 상세한 코드를 설명하고 있습니다. 아래의 예는 Rectangle작성으로 어떻게 도형을 작성하는지 나타낸 것입니다.

코드를 사용하여 랜덤으로SolidBrush를 생성합니다. 아래의 코드 중에서 RandomColor함수를 참고합니다. 그리고 C1FlashCanvas의FillRectangle함수를 사용해canvas안에 이Rectangle배경을 작성합니다. 코드 속의 RandomRectangle함수는 전 단계에 코드의 정의가 있습니다.

SolidBrush brush = new SolidBrush(Color.Black);
for(int i = 0; i < 20; i++)
{
	brush.Color = RandomColor();
	this.c1FlashCanvas1.FillRectangle(brush, RandomRectangle());
}
brush.Dispose();

private Random _rand = new Random();
private Color RandomColor()
{
return Color.FromArgb(_rand.Next(255), _rand.Next(255), _rand.Next(255), _rand.Next(255));
}

SWF파일 생성

C1FlashCanvas의RenderToFile함수를 사용하여 Flash내용을 SWF파일로 작성할 수 있습니다. 코드는 다음과 같습니다. :

this.c1FlashCanvas1.RenderToFile(tempdir + @"\c1flash_canvas_bubbles.swf");

마지막으로 System.Diagnostics.Process.Start()을 사용하여 파일을 엽니다.

Draw함수로 다음과 같이 도형을 그립니다. :


Fill 함수로 다음과 같이 도형을 그립니다. :



본문 Demo의 소스코드는 다음과 같습니다. :


샘플 다운로드



한국 그레이프시티 공식카페에서 기술지원을 받으실 수 있습니다.
이메일을 통해서도 기술지원을 받으실 수 있습니다.