ImageEn

Preview of Other Methods


The "Every Method" editing demo allows you to preview 300 editing, analysis and effects methods.


Image Editing Methods
Analysis Methods
Color Adjustment Methods
Color Depth Methods
Detection Methods
Effects Methods
Filter Methods
Geometric Methods
Painting and Alpha Methods
Smoothing Methods
Other Methods
Interactive Tools

 Test Images

ImageEnView1.IO.LoadFromFile( 'D:\ImageTest1.jpg' );

  


 CreateTransitionBitmap

// Random transition from fully black to an image
bmpOut := TIEBitmap.Create( 'D:\TestImage.jpg' );
bmpIn := TIEBitmap.Create( bmpOut.Width, bmpOut.Height, clBlack );

// Prepare transition
trans := TIETransitionType( 1 + Random( ord( High( TIETransitionType )) - 2 ));
ImageEnView1.Proc.PrepareTransitionBitmaps( bmpIn, bmpOut, trans );

// Get transition image
ImageEnView1.Proc.CreateTransitionBitmap( percentage, ImageEnView1.IEBitmap );

  

  

  


 AdvancedDrawLine

// Draw a line pointer with a label
ImageEnView1.IEBitmap.IECanvas.Font.Name  := 'Tahoma';
ImageEnView1.IEBitmap.IECanvas.Font.Size  := 8;
ImageEnView1.IEBitmap.IECanvas.Font.Style := [fsBold];
ImageEnView1.IEBitmap.IECanvas.Font.Color := clBlack;
ImageEnView1.IEBitmap.IECanvas.AdvancedDrawLine( 140, 30, 240, 100,
                                                 clBlack, 2,
                                                 ieesArrow, ieesNone,
                                                 20, clRed,
                                                 ielpAtEnd, 'Label',
                                                 nil, True,
                                                 iesRectangle, clRed, clYellow,
                                                 gpgVertical );
ImageEnView1.Update();

  


 AdvancedDrawShape

// Draw a shape to the current the image
ImageEnView1.IEBitmap.IECanvas.AdvancedDrawShape( 50, 50, 150, 150,
                                                  iesHeart, 0, 0,                    // Shape Props
                                                  clBlack, 2, 1.0,                   // Border Props
                                                  clYellow, clRed, gpgVertical, 1.0, // Fill Props
                                                  True );
ImageEnView1.Update();

  


 AdvancedDrawText

ImageEnView1.IEBitmap.IECanvas.Font.Name  := 'Tahoma';
ImageEnView1.IEBitmap.IECanvas.Font.Size  := 14;
ImageEnView1.IEBitmap.IECanvas.Font.Style := [fsBold];
ImageEnView1.IEBitmap.IECanvas.AdvancedDrawText( 100, 100, 250, 100,
                                                 'EXPLOSION!', nil,
                                                 0, iejCenter, ielCenter,
                                                 iesExplosion, 1, clBlack,
                                                 clRed, clYellow, gpgVertCenter );
ImageEnView1.Update();

  


 createStitcher (IEVision)

// Stitch images together to create a panorama
var
  images: TIEVisionVectorImageRef;
  pano: TIEVisionImage;
  status: TIEVisionStitchingStatus;
begin
  images := IEVisionLib.createVectorImageRef();
  images.push_back(IEVisionLib.createImage('image1.jpg'));
  images.push_back(IEVisionLib.createImage('image2.jpg'));
  images.push_back(IEVisionLib.createImage('image3.jpg'));

  pano := IEVisionLib.createStitcher().stitch(images, status);

  if status = ievSSOK then
    ImageEnView1.IEBitmap.AssignIEVisionImage(pano);
end;



 Encrypt

// Encrypt the image
ImageEnView1.Proc.Encrypt( 'MyPassword', ieeaTEA2 );

  


 MakeTile

// Repeat the image 3 times horizontally and vertically
ImageEnView1.Proc.MakeTile( 3, 3 );




 Merge

// Merge image with a horizontally flipped version of itself
bmp.Assign( ienOriginal.IEBitmap );
bmp.Flip( fdHorizontal );
ImageEnView1.Proc.Merge( bmp, 50 );

  


 ProjectDraw

// Project Draw image at 200, 200 (center), inside a box of 150x150, depth 400, rotating by 30° on Y axis, with specular effect
ImageEnView1.IEBitmap.Allocate( 600, 600, clBlack );
ImageEnView1.Proc.ProjectDraw( bmp,        // Source
                               300, 160,   // Dest pos (Center)
                               300, 300,   // Dest size
                               400,        // Depth
                               0, 0,       // Translation (offset)
                               0, 30       // Rotation
                               0, 100 );   // Alpha Min/Max




 RemoveRedEyes

// Load test image
ImageEnView1.IO.LoadFromFile( 'D:\TestImage.jpg' );



// Remove "Red-Eyes" within image (should only be applied to a selection)
ImageEnView1.Proc.RemoveRedEyes();




 TextOut

// Draw text over the image
ImageEnView1.Proc.TextOut( Align_Text_Horz_Center, Align_Text_Near_Top, 'Wedding', 'Arial', 32, clYellow, [fsBold] );

  


 DrawText

// Draw gradient text over the image
ImageEnView1.IEBitmap.IECanvas.Font.Height := 54;
ImageEnView1.IEBitmap.IECanvas.Font.Style  := [fsBold];
ImageEnView1.IEBitmap.IECanvas.Font.Color  := clRed;
ImageEnView1.IEBitmap.IECanvas.TextStyling.FillGradient := gpgVertical;
ImageEnView1.IEBitmap.IECanvas.TextStyling.FillColor2   := clYellow;
ImageEnView1.IEBitmap.IECanvas.TextStyling.BorderColor  := clWhite;
ImageEnView1.IEBitmap.IECanvas.TextStyling.BorderWidth  := 6;
tw := ImageEnView1.IEBitmap.IECanvas.TextWidth( 'Wedding' );
ImageEnView1.IEBitmap.IECanvas.DrawText( 'Wedding', ( ImageEnView1.IEBitmap.Width - tw ) div 2, 0 );
ImageEnView1.Update();

  


 FillWithShape

// Create a shaped image by drawing an ImageEn shape to the alpha channel
ImageEnView1.IEBitmap.FillWithShape( iesHeart, -1, -1, clNone, 0, -2 { Keep Content } );

  



See Also

Analysis Methods
Color Adjustment Methods
Color Depth Methods
Detection Methods
Effects Methods
Filter Methods
Geometric Methods
Painting and Alpha Methods
Smoothing Methods
Other Methods
Interactive Tools