Визуализация фигур BITMAP для записи

#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, вы можете легко визуализировать линии или любые фигуры. Отредактированный вами фрагмент кода отображает строку, и она работает нормально.