Applies an emboss effect to an image, letting you specify the depth and shift of the effect.
public class EmbossEffect : ShaderEffect
Public Class EmbossEffect
Inherits System.Windows.Media.Effects.ShaderEffect
Implements System.Windows.Media.Animation.IAnimatable
public ref class EmbossEffect : public System.Windows.Media.Effects.ShaderEffect, System.Windows.Media.Animation.IAnimatable
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";
}
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
c#[Silverlight C# Example]
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);
}
}
vb[Silverlight VB Example]
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
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.