Print Scaled Visual : Print « Windows Presentation Foundation « VB.Net






Print Scaled Visual

Print Scaled Visual
     
<Window x:Class="Printing.PrintScaledVisual"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="PrintScaledVisual" Height="184" Width="269">
  <StackPanel>
    <Button Click="cmdPrint_Click">Print</Button>
  </StackPanel>
</Window>

//File:Window.xaml.vb
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Data
Imports System.Windows.Documents
Imports System.Windows.Input
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Imports System.Windows.Shapes

Namespace Printing
  Public Partial Class PrintScaledVisual
    Inherits System.Windows.Window
    Public Sub New()
      InitializeComponent()
    End Sub

    Private Sub cmdPrint_Click(sender As Object, e As RoutedEventArgs)
      Dim printDialog As New PrintDialog()
      If printDialog.ShowDialog() = True Then
        Dim run As New Run("This is a test.")
        Dim visual As New TextBlock(run)
        visual.Margin = New Thickness(15)
        visual.TextWrapping = TextWrapping.Wrap

        Dim zoom As Double = 2
        visual.LayoutTransform = New ScaleTransform(zoom / 100, zoom / 100)
        Dim pageSize As New Size(printDialog.PrintableAreaWidth, printDialog.PrintableAreaHeight)
        visual.Measure(pageSize)
        visual.Arrange(New Rect(0, 0, pageSize.Width, pageSize.Height))
        printDialog.PrintVisual(visual, "A Scaled Drawing")
      End If
    End Sub
  End Class
End Namespace

   
    
    
    
    
  








Related examples in the same category

1.Print Custom PagePrint Custom Page
2.Print Without User InterventionPrint Without User Intervention