коробка изображения в форме круга
Уважаемый господин,
Я хочу создать круговое поле изображения в c#.Можно ли нарисовать картинку коробки.
как я могу это сделать?
Самый простой способ-установить регион:
myPictureBox.Image = Image.FromFile(@"D:\Temp\MyPic.jpg"); GraphicsPath gp = new GraphicsPath(); gp.AddEllipse(myPictureBox.DisplayRectangle); myPictureBox.Region = new Region(gp);
public class CirclePictureBox : PictureBox { public CirclePictureBox () { } protected override void OnPaint(PaintEventArgs e) { System.Drawing.Brush brushImege; try { Bitmap Imagem = new Bitmap(this.Image); //get images of the same size as control Imagem = new Bitmap(Imagem, new Size(this.Width - 1, this.Height - 1)); brushImege = new TextureBrush(Imagem); } catch { Bitmap Imagem = new Bitmap(this.Width - 1, this.Height - 1, PixelFormat.Format24bppRgb); using (Graphics grp = Graphics.FromImage(Imagem)) { grp.FillRectangle( Brushes.White, 0, 0, this.Width - 1, this.Height - 1); Imagem = new Bitmap(this.Width - 1, this.Height - 1, grp); } brushImege = new TextureBrush(Imagem); } e.Graphics.SmoothingMode = SmoothingMode.AntiAlias; GraphicsPath path = new GraphicsPath(); path.AddEllipse(0, 0, this.Width - 1, this.Height - 1); e.Graphics.FillPath(brushImege, path); e.Graphics.DrawPath(Pens.Black, path); } }
Очень, очень заранее спасибо...! где я должен написать этот код, я имею в виду, в каком случае какого контроля.
Это полностью зависит от вас. Может быть, нагрузка на форму?
у меня есть проблема есть некоторая пикселизация на границах которая
выглядит очень плохо, я не могу добавить сглаживание. может помочь?
Почему "заранее"? Как будто ответ вам еще не дан...
--СА
Tnx заранее! у дал мне ценный намек.
:-)
спасибо!:)
Всегда пожалуйста!
Правильно, 5. Но есть хорошее изменение, что сам PictureBox не нужен-это обычная ошибка злоупотреблять им.
--СА
но я хочу его как коробку с картинкой в логотипе Microsoft office можно ли это сделать
- Простите?
Я не понимаю, о чем вы спрашиваете.
когда я выполняю приложение , оно показывает ошибку = "изображение не существует в контексте".
что это значит? вы можете мне помочь?
Вы должны были бы уже знать, что это не вопрос!
Нам нужен контекст для сообщения об ошибке, прежде чем мы сможем начать отвечать!
- Сэр ! я хочу создать picturebox в круглой форме, так как логотип microsoft разработан в mmicrosoft word 2007 над меню file. Я хочу творить именно так. как это вообще возможно сделать?...
Я не использую Word 2007, я использую 2010, поэтому я не могу так легко понять, что вы имеете в виду, но быстрый взгляд на Google и грубое изучение изображений рабочего экрана, и я бы сказал, что это квадратный значок с круглым изображением в нем.
Что имеет смысл, конечно, легче притвориться, чем сделать это...
Большое спасибо;
очень полезно
Большое вам спасибо! Сработало как по волшебству
Всегда пожалуйста!
Может быть, мы поболтаем или что-то еще, хотели бы, чтобы вы задали вам несколько вопросов на WordPress
Извините - я ничего не знаю о WordPress - я им не пользуюсь!
Напишите вопрос - я уверен, что кто-то здесь это делает!
http://www.codeproject.com/Questions/ask.aspx
кто-нибудь знает, как это сделать в vb?
Это было бы то же самое, только в синтаксисе VB.
В интернете есть несколько инструментов (которые можно найти в Google), многие из них также бесплатны, которые могут конвертировать фрагменты кода C# в VB.
Возможно, вы попробуете это сделать с помощью поискового запроса Google ...