LEADTOOLS WPF and Silverlight (Leadtools.Windows.Media.Effects assembly)

EmbossEffect Class

Show in webframe
Example 





Members 
Applies an emboss effect to an image, letting you specify the depth and shift of the effect.
Object Model
Syntax
Example
Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.Windows.Controls
Imports Leadtools.Windows.Media
Imports Leadtools.Windows.Media.Effects

Class EmbossEffectExampleWindow
   Inherits Window
   Public Sub New()
      Dim sp As New StackPanel()
      Content = sp
      Dim theViewer As New ImageViewer()

      theViewer.HorizontalAlignment = HorizontalAlignment.Center
      theViewer.VerticalAlignment = VerticalAlignment.Top
      theViewer.ImageHorizontalAlignment = HorizontalAlignment.Left
      theViewer.ImageVerticalAlignment = VerticalAlignment.Top

      sp.Children.Add(theViewer)

      ' Create the sliders
      Dim tb As New TextBlock()
      tb.HorizontalAlignment = HorizontalAlignment.Center
      tb.Text = "Amount:"
      sp.Children.Add(tb)

      Dim amountSlider As New Slider()
      amountSlider.Minimum = 0.0
      amountSlider.Maximum = 1.0
      amountSlider.Width = 400
      amountSlider.Orientation = Orientation.Horizontal
      amountSlider.IsSnapToTickEnabled = True
      amountSlider.TickPlacement = System.Windows.Controls.Primitives.TickPlacement.BottomRight
      amountSlider.TickFrequency = 0.1
      amountSlider.AutoToolTipPrecision = 2
      amountSlider.AutoToolTipPlacement = System.Windows.Controls.Primitives.AutoToolTipPlacement.BottomRight

      sp.Children.Add(amountSlider)

      tb = New TextBlock()
      tb.HorizontalAlignment = HorizontalAlignment.Center
      tb.Text = "Width:"
      sp.Children.Add(tb)

      Dim widthSlider As New Slider()
      widthSlider.Minimum = 0.0
      widthSlider.Maximum = 1.0
      widthSlider.Width = 400
      widthSlider.Orientation = Orientation.Horizontal
      widthSlider.IsSnapToTickEnabled = True
      widthSlider.TickPlacement = System.Windows.Controls.Primitives.TickPlacement.BottomRight
      widthSlider.TickFrequency = 0.1
      widthSlider.AutoToolTipPrecision = 2
      widthSlider.AutoToolTipPlacement = System.Windows.Controls.Primitives.AutoToolTipPlacement.BottomRight

      sp.Children.Add(widthSlider)

      ' Load an image into the viewer
      theViewer.Source = New BitmapImage(New Uri(System.IO.Path.Combine(LEAD_VARS.ImagesDir, "Cannon.jpg")))

      ' Create the effect
      Dim effect As New EmbossEffect()
      effect.Amount = 0.5
      effect.Width = 0.003
      theViewer.ImageEffect = effect

      ' Bind the properties
      Dim bind As New Binding()
      bind.Source = effect
      bind.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged
      bind.Path = New PropertyPath("Amount")
      amountSlider.SetBinding(Slider.ValueProperty, bind)

      bind = New Binding()
      bind.Source = effect
      bind.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged
      bind.Path = New PropertyPath("Width")
      widthSlider.SetBinding(Slider.ValueProperty, bind)

      Title = "Using EmbossEffect"
   End Sub
End Class

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.Windows.Controls;
using Leadtools.Windows.Media;
using Leadtools.Windows.Media.Effects;

class EmbossEffectExampleWindow : Window
{
   public EmbossEffectExampleWindow()
   {
      StackPanel sp = new StackPanel();
      Content = sp;
      ImageViewer theViewer = new ImageViewer();

      theViewer.HorizontalAlignment = HorizontalAlignment.Center;
      theViewer.VerticalAlignment = VerticalAlignment.Top;
      theViewer.ImageHorizontalAlignment = HorizontalAlignment.Left;
      theViewer.ImageVerticalAlignment = VerticalAlignment.Top;

      sp.Children.Add(theViewer);

      // Create the sliders
      TextBlock tb = new TextBlock();
      tb.HorizontalAlignment = HorizontalAlignment.Center;
      tb.Text = "Amount:";
      sp.Children.Add(tb);

      Slider amountSlider = new Slider();
      amountSlider.Minimum = 0.0;
      amountSlider.Maximum = 1.0;
      amountSlider.Width = 400;
      amountSlider.Orientation = Orientation.Horizontal;
      amountSlider.IsSnapToTickEnabled = true;
      amountSlider.TickPlacement = System.Windows.Controls.Primitives.TickPlacement.BottomRight;
      amountSlider.TickFrequency = 0.1;
      amountSlider.AutoToolTipPrecision = 2;
      amountSlider.AutoToolTipPlacement = System.Windows.Controls.Primitives.AutoToolTipPlacement.BottomRight;

      sp.Children.Add(amountSlider);

      tb = new TextBlock();
      tb.HorizontalAlignment = HorizontalAlignment.Center;
      tb.Text = "Width:";
      sp.Children.Add(tb);

      Slider widthSlider = new Slider();
      widthSlider.Minimum = 0.0;
      widthSlider.Maximum = 1.0;
      widthSlider.Width = 400;
      widthSlider.Orientation = Orientation.Horizontal;
      widthSlider.IsSnapToTickEnabled = true;
      widthSlider.TickPlacement = System.Windows.Controls.Primitives.TickPlacement.BottomRight;
      widthSlider.TickFrequency = 0.1;
      widthSlider.AutoToolTipPrecision = 2;
      widthSlider.AutoToolTipPlacement = System.Windows.Controls.Primitives.AutoToolTipPlacement.BottomRight;

      sp.Children.Add(widthSlider);

      // Load an image into the viewer
      theViewer.Source = new BitmapImage(new Uri(System.IO.Path.Combine(LEAD_VARS.ImagesDir,"Cannon.jpg")));

      // Create the effect
      EmbossEffect effect = new EmbossEffect();
      effect.Amount = 0.5;
      effect.Width = 0.003;
      theViewer.ImageEffect = effect;

      // Bind the properties
      Binding bind = new Binding();
      bind.Source = effect;
      bind.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged;
      bind.Path = new PropertyPath("Amount");
      amountSlider.SetBinding(Slider.ValueProperty, bind);

      bind = new Binding();
      bind.Source = effect;
      bind.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged;
      bind.Path = new PropertyPath("Width");
      widthSlider.SetBinding(Slider.ValueProperty, bind);

      Title = "Using EmbossEffect";
   }
}

static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.Windows.Media;
using Leadtools.Windows.Media.Effects;
using Leadtools.Windows.Controls;

class EmbossEffectExampleWindow : UserControl
{
   public EmbossEffectExampleWindow()
   {
      StackPanel sp = new StackPanel();
      Content = sp;
      ImageViewer theViewer = new ImageViewer();

      theViewer.HorizontalAlignment = HorizontalAlignment.Center;
      theViewer.VerticalAlignment = VerticalAlignment.Top;
      theViewer.ImageHorizontalAlignment = HorizontalAlignment.Left;
      theViewer.ImageVerticalAlignment = VerticalAlignment.Top;

      sp.Children.Add(theViewer);

      // Create the sliders
      TextBlock tb = new TextBlock();
      tb.HorizontalAlignment = HorizontalAlignment.Center;
      tb.Text = "Amount:";
      sp.Children.Add(tb);

      Slider amountSlider = new Slider();
      amountSlider.Minimum = 0.0;
      amountSlider.Maximum = 1.0;
      amountSlider.Width = 400;
      amountSlider.Orientation = Orientation.Horizontal;

      sp.Children.Add(amountSlider);

      tb = new TextBlock();
      tb.HorizontalAlignment = HorizontalAlignment.Center;
      tb.Text = "Width:";
      sp.Children.Add(tb);

      Slider widthSlider = new Slider();
      widthSlider.Minimum = 0.0;
      widthSlider.Maximum = 1.0;
      widthSlider.Width = 400;
      widthSlider.Orientation = Orientation.Horizontal;

      sp.Children.Add(widthSlider);

      // Load an image into the viewer
      theViewer.Source = new BitmapImage(new Uri(LeadtoolsExamples.Common.ImagesPath.Path + "Cannon.jpg"));

      // Create the effect
      EmbossEffect effect = new EmbossEffect();
      effect.Amount = 0.5;
      effect.Width = 0.003;
      theViewer.ImageEffect = effect;

      // Bind the properties
      Binding bind = new Binding();
      bind.Source = effect;
      bind.UpdateSourceTrigger = UpdateSourceTrigger.Default;
      bind.Path = new PropertyPath("Amount");
      amountSlider.SetBinding(Slider.ValueProperty, bind);

      bind = new Binding();
      bind.Source = effect;
      bind.UpdateSourceTrigger = UpdateSourceTrigger.Default;
      bind.Path = new PropertyPath("Width");
      widthSlider.SetBinding(Slider.ValueProperty, bind);
   }
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.Windows.Controls
Imports Leadtools.Windows.Media
Imports Leadtools.Windows.Media.Effects

Class EmbossEffectExampleWindow
   Inherits UserControl
   Public Sub New()
      Dim sp As New StackPanel()
      Content = sp
      Dim theViewer As New ImageViewer()

      theViewer.HorizontalAlignment = HorizontalAlignment.Center
      theViewer.VerticalAlignment = VerticalAlignment.Top
      theViewer.ImageHorizontalAlignment = HorizontalAlignment.Left
      theViewer.ImageVerticalAlignment = VerticalAlignment.Top

      sp.Children.Add(theViewer)

      ' Create the sliders
      Dim tb As New TextBlock()
      tb.HorizontalAlignment = HorizontalAlignment.Center
      tb.Text = "Amount:"
      sp.Children.Add(tb)

      Dim amountSlider As New Slider()
      amountSlider.Minimum = 0.0
      amountSlider.Maximum = 1.0
      amountSlider.Width = 400
      amountSlider.Orientation = Orientation.Horizontal

      sp.Children.Add(amountSlider)

      tb = New TextBlock()
      tb.HorizontalAlignment = HorizontalAlignment.Center
      tb.Text = "Width:"
      sp.Children.Add(tb)

      Dim widthSlider As New Slider()
      widthSlider.Minimum = 0.0
      widthSlider.Maximum = 1.0
      widthSlider.Width = 400
      widthSlider.Orientation = Orientation.Horizontal

      sp.Children.Add(widthSlider)

      ' Load an image into the viewer
      theViewer.Source = New BitmapImage(New Uri(LeadtoolsExamples.Common.ImagesPath.Path + "Cannon.jpg"))

      ' Create the effect
      Dim effect As New EmbossEffect()
      effect.Amount = 0.5
      effect.Width = 0.003
      theViewer.ImageEffect = effect

      ' Bind the properties
      Dim bind As New Binding()
      bind.Source = effect
      bind.UpdateSourceTrigger = UpdateSourceTrigger.Default
      bind.Path = New PropertyPath("Amount")
      amountSlider.SetBinding(Slider.ValueProperty, bind)

      bind = New Binding()
      bind.Source = effect
      bind.UpdateSourceTrigger = UpdateSourceTrigger.Default
      bind.Path = New PropertyPath("Width")
      widthSlider.SetBinding(Slider.ValueProperty, bind)
   End Sub
End Class
<Window x:Class="EmbossEffectExample"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:leadControls="clr-namespace:Leadtools.Windows.Controls;assembly=Leadtools.Windows.Controls"
xmlns:leadEffects="clr-namespace:Leadtools.Windows.Media.Effects;assembly=Leadtools.Windows.Media.Effects"
Height="600" Width="800">
   <StackPanel>
      <leadControls:ImageViewer
            HorizontalAlignment="Center" VerticalAlignment="Top"
            ImageHorizontalAlignment="Left" ImageVerticalAlignment="Top"
            Source="file:///c:\users\Public\Documents\LEADTOOLS Images\cannon.jpg">
         <leadControls:ImageViewer.ImageEffect>
            <leadEffects:EmbossEffect
               Amount="{Binding Value, ElementName=AmountSlider, UpdateSourceTrigger=PropertyChanged}"
               Width="{Binding Value, ElementName=WidthSlider, UpdateSourceTrigger=PropertyChanged}">
            </leadEffects:EmbossEffect>
         </leadControls:ImageViewer.ImageEffect>
      </leadControls:ImageViewer>
      <TextBlock HorizontalAlignment="Center" Text="Amount:"/>
      <Slider x:Name="AmountSlider"
            Minimum="0.0" Maximum="1.0" TickFrequency="0.1"
            Width="400" Orientation="Horizontal"
            IsSnapToTickEnabled="True" TickPlacement="BottomRight"
            AutoToolTipPrecision="2" AutoToolTipPlacement="BottomRight">
      </Slider>
      <TextBlock HorizontalAlignment="Center" Text="Width:"/>
      <Slider x:Name="WidthSlider"
            Minimum="0.0" Maximum="1.0" TickFrequency="0.1"
            Width="400" Orientation="Horizontal"
            IsSnapToTickEnabled="True" TickPlacement="BottomRight"
            AutoToolTipPrecision="2" AutoToolTipPlacement="BottomRight">
      </Slider>
   </StackPanel>
</Window>
Requirements

Target Platforms

See Also

Reference

EmbossEffect Members
Leadtools.Windows.Media.Effects Namespace
Introduction

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.