Hiện tại tôi có một hình ảnh trên canvas mà tôi có thể tự do di chuyển trong ứng dụng của mình mà trên đó tôi có 6 lớp DrawingVisual được hiển thị nhưng có vẻ khá chậm. Tôi đang sử dụng RenderTargetBitmap để hiển thị hình ảnh. Có cách nào nhanh hơn để hiển thị hình ảnh trên hình ảnh hoặc trên bất kỳ phần tử khung nào khác mà tôi có thể tự do di chuyển trên canvas không?Hiển thị bản vẽ nhanh trong WPF
XAML:
<Canvas>
<Image Height="505" HorizontalAlignment="Left" Margin="0,0,0,0" Name="_MapImage" Stretch="Fill" VerticalAlignment="Top" Width="700" MouseLeftButtonDown="_MapImage_MouseDown" MouseWheel="_MapImage_MouseWheel" MouseLeftButtonUp="_MapImage_MouseUp" MouseMove="_MapImage_MouseMove" />
</Canvas>
mã:
_renderRoutesBitmap = new RenderTargetBitmap((int)(_MapImage.Width), (int)(_MapImage.Height), 96, 96, PixelFormats.Default);
for (int i = 6; i < 8; ++i)
{
if((layerCode/(int)Math.Pow(10,i) % 2) == 1)
_renderRoutesBitmap.Render(_layers[i]); //takes too much time
}
_RouteImage.Source = _renderRoutesBitmap;
bạn có thể mô tả chi tiết những gì bạn có trong _layers không? –
mảng _layers chứa các bản vẽ, đó thực sự là các loại đường khác nhau của bản đồ tôi đang vẽ, được hiển thị trên một hình ảnh. –