Leadtools.SpecialEffects Namespace > SpecialEffectsProcessor Class > PaintImage Method : PaintImage(IntPtr,RasterImage,Rectangle,Rectangle,Rectangle,Rectangle,SpecialEffectsType,Int32,Int32,Int32,Int32,Int32,Int32,Boolean,Color,Int32,Color,RasterPaintProperties,SpecialEffectsProgress) Method |
public void PaintImage( IntPtr hdc, RasterImage image, Rectangle src, Rectangle srcClip, Rectangle dest, Rectangle destClip, SpecialEffectsType effectType, int grain, int delay, int speed, int cycles, int pass, int maxPass, bool transparency, Color transparentColor, int wandWidth, Color wandColor, RasterPaintProperties paintProperties, SpecialEffectsProgress progressCallback )
'Declaration Public Overloads Sub PaintImage( _ ByVal hdc As IntPtr, _ ByVal image As RasterImage, _ ByVal src As Rectangle, _ ByVal srcClip As Rectangle, _ ByVal dest As Rectangle, _ ByVal destClip As Rectangle, _ ByVal effectType As SpecialEffectsType, _ ByVal grain As Integer, _ ByVal delay As Integer, _ ByVal speed As Integer, _ ByVal cycles As Integer, _ ByVal pass As Integer, _ ByVal maxPass As Integer, _ ByVal transparency As Boolean, _ ByVal transparentColor As Color, _ ByVal wandWidth As Integer, _ ByVal wandColor As Color, _ ByVal paintProperties As RasterPaintProperties, _ ByVal progressCallback As SpecialEffectsProgress _ )
'Usage Dim instance As SpecialEffectsProcessor Dim hdc As IntPtr Dim image As RasterImage Dim src As Rectangle Dim srcClip As Rectangle Dim dest As Rectangle Dim destClip As Rectangle Dim effectType As SpecialEffectsType Dim grain As Integer Dim delay As Integer Dim speed As Integer Dim cycles As Integer Dim pass As Integer Dim maxPass As Integer Dim transparency As Boolean Dim transparentColor As Color Dim wandWidth As Integer Dim wandColor As Color Dim paintProperties As RasterPaintProperties Dim progressCallback As SpecialEffectsProgress instance.PaintImage(hdc, image, src, srcClip, dest, destClip, effectType, grain, delay, speed, cycles, pass, maxPass, transparency, transparentColor, wandWidth, wandColor, paintProperties, progressCallback)
public: void PaintImage( IntPtr hdc, RasterImage^ image, Rectangle src, Rectangle srcClip, Rectangle dest, Rectangle destClip, SpecialEffectsType effectType, int grain, int delay, int speed, int cycles, int pass, int maxPass, bool transparency, Color transparentColor, int wandWidth, Color wandColor, RasterPaintProperties paintProperties, SpecialEffectsProgress^ progressCallback )
Use the grain and delay parameters to control the speed of the display. The grain parameter controls the size of the painting increment, and delay controls the time between increments.
The wand is a solid color bar that moves during an effect. Small grain sizes produce the best wand effects. Many of the effects listed in Effect Types can have a wand.
Use the pass and maxPass parameters to paint the image in more than one pass. For example, if you want a 3-pass paint, use maxPass of 3 and paint 3 times, once with pass = 1, once with pass = 2, and once with pass = 3.
Multipass painting for the PushClass is disabled.
If the effectType parameter is from the Twirl class, White Turnover class, Turnover class, Replace class, Laser class, Fade Normal class, Fade Black and White class, Fade Color class or Wave Class, the pass and maxPass parameters have no effect.
If the effectType parameter is from the Fade Normal class, Fade Black and White class or Fade Color class, the grain parameter has no effect. However, if the effectType parameter is from the Wave class, the grain parameter contains the wave size.
If the effectType parameter is from the White Turnover class, the Turnover class or the Replace class, the wandWidth and wandColor parameters have no effect. However, if the effectType parameter is from the Fade Color class, the wandColor parameter contains the bitmap color level.
The speed and cycles parameters have effect only if the effectType parameter is from the Wave class.
For general information, refer to Implementing Special Effects.
Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.SpecialEffects Imports Leadtools.Drawing Public Sub PaintImage(ByVal g As Graphics, ByVal destRect As Rectangle) Dim processor As SpecialEffectsProcessor = New SpecialEffectsProcessor() Dim properties As RasterPaintProperties = New RasterPaintProperties() properties.RasterOperation = RasterPaintProperties.SourceCopy Dim codecs As RasterCodecs = New RasterCodecs() Dim rasterImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")) processor.PaintImage(g, rasterImage, Rectangle.Empty, Rectangle.Empty, destRect, Rectangle.Empty, SpecialEffectsType.Wipe4LRTB, _ 5, 10, 0, 0, 1, 3, False, Color.Empty, 0, Color.Empty, properties, Nothing) 'MessageBox.Show("Continue to next effect"); processor.PaintImage(g, rasterImage, Rectangle.Empty, Rectangle.Empty, destRect, Rectangle.Empty, SpecialEffectsType.WipeRectangleIn, _ 5, 10, 0, 0, 2, 3, False, Color.Empty, 0, Color.Empty, properties, Nothing) 'MessageBox.Show("Continue to next effect"); processor.PaintImage(g, rasterImage, Rectangle.Empty, Rectangle.Empty, destRect, Rectangle.Empty, SpecialEffectsType.WipeRectangleOut, _ 5, 10, 0, 0, 3, 3, False, Color.Empty, 0, Color.Empty, properties, Nothing) 'MessageBox.Show("Continue to next effect"); rasterImage.Dispose() End Sub 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.SpecialEffects; using Leadtools.Drawing; public void PaintImage(Graphics g, Rectangle destRect) { SpecialEffectsProcessor processor = new SpecialEffectsProcessor(); RasterPaintProperties properties = new RasterPaintProperties(); properties.RasterOperation = RasterPaintProperties.SourceCopy; RasterCodecs codecs = new RasterCodecs(); RasterImage rasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")); processor.PaintImage(g, rasterImage, Rectangle.Empty, Rectangle.Empty, destRect, Rectangle.Empty, SpecialEffectsType.Wipe4LRTB, /* effect to apply when painting the transition */ 5, /* graining size */ 10, /* delay between graining steps */ 0, /* speed of the wave */ 0, /* number of cycles or repetitions */ 1, /* step number for the pattern brush */ 3, /* maximum steps for the pattern brush */ false, /* do not use transparency */ Color.Empty,/* no transparent color */ 0, /* wand width */ Color.Empty,/* no wand color */ properties, null); //MessageBox.Show("Continue to next effect"); processor.PaintImage(g, rasterImage, Rectangle.Empty, Rectangle.Empty, destRect, Rectangle.Empty, SpecialEffectsType.WipeRectangleIn, /* effect to apply when painting the transition */ 5, /* graining size */ 10, /* delay between graining steps */ 0, /* speed of the wave */ 0, /* number of cycles or repetitions */ 2, /* step number for the pattern brush */ 3, /* maximum steps for the pattern brush */ false, /* do not use transparency */ Color.Empty,/* no transparent color */ 0, /* wand width */ Color.Empty,/* no wand color */ properties, null); //MessageBox.Show("Continue to next effect"); processor.PaintImage(g, rasterImage, Rectangle.Empty, Rectangle.Empty, destRect, Rectangle.Empty, SpecialEffectsType.WipeRectangleOut, /* effect to apply when painting the transition */ 5, /* graining size */ 10, /* delay between graining steps */ 0, /* speed of the wave */ 0, /* number of cycles or repetitions */ 3, /* step number for the pattern brush */ 3, /* maximum steps for the pattern brush */ false, /* do not use transparency */ Color.Empty,/* no transparent color */ 0, /* wand width */ Color.Empty,/* no wand color */ properties, null); //MessageBox.Show("Continue to next effect"); rasterImage.Dispose(); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }