缩略图优化

This commit is contained in:
艾竹
2024-02-08 23:00:50 +08:00
parent f5e0275a8b
commit bbb5809790
8 changed files with 33 additions and 15 deletions

View File

@@ -346,6 +346,11 @@ namespace AIStudio.Wpf.DiagramDesigner
}
}
public bool GenerateThumbnail
{
get;set;
}
public bool ShowMenuOptions
{
get
@@ -873,7 +878,7 @@ namespace AIStudio.Wpf.DiagramDesigner
DiagramOption.LayoutOption.PageBackground = diagramItem.PageBackground;
DiagramOption.LayoutOption.AllowDrop = diagramItem.AllowDrop;
Thumbnail = diagramItem.Thumbnail.ToBrush((int)DiagramOption.LayoutOption.PageSize.Width / 4, (int)DiagramOption.LayoutOption.PageSize.Height / 4);
Thumbnail = diagramItem.Thumbnail?.ToBrush((int)DiagramOption.LayoutOption.PageSize.Width, (int)DiagramOption.LayoutOption.PageSize.Height);
Init(true);
}
@@ -1025,11 +1030,16 @@ namespace AIStudio.Wpf.DiagramDesigner
public void SaveThumbnail()
{
if (Thumbnail is VisualBrush visualBrush)
if (GenerateThumbnail)
{
var size = ((UIElement)visualBrush.Visual).DesiredSize;
var image = visualBrush.ToBitmap(new Rect(size)).ToBitmapSource((int)size.Width / 4, (int)size.Height / 4);
Thumbnail = new ImageBrush(image) { Stretch = Stretch.Uniform };
if (Thumbnail is VisualBrush visualBrush)
{
var size = ((UIElement)visualBrush.Visual).DesiredSize;
var image = visualBrush.ToBitmap(new Rect(size)).ToBitmapSource((int)size.Width, (int)size.Height);
var brush = new ImageBrush(image) { Stretch = Stretch.Uniform };
//brush.SetCurrentValue(RenderOptions.BitmapScalingModeProperty, BitmapScalingMode.HighQuality);
Thumbnail = brush;
}
}
}