#silverlight #drawing
#silverlight #рисование
Вопрос:
Я пытаюсь отобразить некоторые объекты формы (линию, прямоугольник) в Silverlight и использую WriteableBitmap.Render (MyShape, transform). Проблема в том, что в функции рендеринга, похоже, отсутствует сглаживание. Я что-то упускаю или это невозможно с помощью WriteableBitmap?
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
bmp = new WriteableBitmap(800, 600);
testImage.Source = bmp;
line = new Line() { X1 = 10, X2 = 500, Y1 = 10, Y2 = 300 };
line.Stroke = new SolidColorBrush(Colors.Red);
line.StrokeStartLineCap = PenLineCap.Round;
line.StrokeEndLineCap = PenLineCap.Round;
line.StrokeLineJoin = PenLineJoin.Round;
line.StrokeThickness = 1;
CompositionTarget.Rendering = new EventHandler(CompositionTarget_Rendering);
}
private void CompositionTarget_Rendering(object sender, EventArgs e)
{
bmp.Render(line, line.GeometryTransform);
bmp.Invalidate();
}
Комментарии:
1. Можете ли вы просто вставить свой фрагмент кода, который вы делали до сих пор. И еще, не могли бы вы, пожалуйста, уточнить, чего вы хотите достичь?
2. Я добавил код, который выполняет рендеринг.
3. хорошо, как я вижу, в коде, который вы делаете, нет ничего неправильного, в чем проблема здесь. Используя WriteableBitmap, вы можете легко визуализировать линии или любые фигуры. Отредактированный вами фрагмент кода отображает строку, и она работает нормально.