2012-10-19 3 views
1

내용이 동적으로 추가되고 이미지 파일로 내 보낸 패널이 있습니다. 아래 코드를 사용하여 이미지를 이미지로 내 보냅니다.내용을 이미지로 내보낼 때 RichTextBox가 나타나지 않습니다.

Bitmap tempBmp = new Bitmap(pnlCanvas.Width, pnlCanvas.Height); 
pnlCanvas.DrawToBitmap(tempBmp, new Rectangle(0, 0, pnlCanvas.Width, pnlCanvas.Height)); 
tempBmp.Save(fileName); 

특정 경우에는 패널에 RichTextBox 컨트롤이 추가되어 있습니다. 컨트롤을 내보낼 때 보이지 않는 것으로 나타났습니다.

나는 무엇이 잘못되는지 잘 모릅니다. 끝내야 할 일을 안내해주세요. 컨트롤이 실제로 존재하는 경우 사전에

감사합니다, K

답변

2

명시된대로 MSDN DrawToBitmap은 RichTextBox과 작동하지 않습니다. GDI +을 수동으로 사용하여 그림을 그려보십시오.

0

확인, 그것은 배치하거나 보이지 않습니다. 그것에 약간의 값을 추가해보고 변수로 값을 반환하는지 확인하거나 오류가 발생했는지 확인하십시오 (사라진 경우). 그게 내 아이디어 야 :)

+0

예 컨트롤이 존재하며 동일한 수정을 할 수 있습니다. 그러나 이미지 파일로 내보낼 때 RichTextBox 컨트롤의 윤곽 만보고 내용은 보이지 않습니다. – user1417294

0

내가 찾고있는 것만으로 성공했습니다. 나는 내 자신의 질문에 답하고 있기 때문에 같은 것을 찾는 누군가를 도울 수있다.

ActiveX 컨트롤을 캡처하고 이미지로 내보내기 예제 코드입니다.

Rectangle ctrlRect = myControl.RectangleToScreen(myControl.ClientRectangle); 
Bitmap myImage = new Bitmap(ctrlRect.Width,ctrlRect.Height,PixelFormat.Format32bppArgb); 
Graphics myGraphics = Graphics.FromImage(myImage); 
myGraphics.CopyFromScreen(ctrlRect.Location, Point.Empty, myControl.Size); 
myImage.Save("sample.png"); 
관련 문제