I'm writing an inking UWP app in C#/XAML and would like to implement a Microsoft Whiteboard-like zooming inkCanvas and Canvas for shape/text recognition. I have a Grid with an ImageBrush background with the Canvas and InkCanvas, but I'm not sure how to go about a zooming function.
My code for context:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel x:Name="HeaderPanel"
Orientation="Horizontal"
Grid.Row="0">
<TextBlock x:Name="Header"
Text="Basic ink analysis sample"
Style="{ThemeResource HeaderTextBlockStyle}"
Margin="10,0,0,0" />
<InkToolbar TargetInkCanvas="{x:Bind inkCanvas}"/>
<Button x:Name="recognize"
Content="Recognize"
Margin="50,0,10,0"/>
</StackPanel>
<Grid x:Name="drawingCanvas" Grid.Row="1">
<Grid.Background>
<ImageBrush ImageSource="/Assets/isoPaper.png" AlignmentY="Top" AlignmentX="Center"/>
</Grid.Background>
<!-- The canvas where we render the replacement text and shapes. -->
<Canvas x:Name="recognitionCanvas" />
<!-- The canvas for ink input. -->
<InkCanvas x:Name="inkCanvas"/>
</Grid>
</Grid>