←Select platform

UsePaintPalette Property

Summary
Enables or disables automatically using the Leadtools.RasterImage object palette when displaying the image.
Syntax
C#
C++/CLI
Python
public bool UsePaintPalette { get; set; } 
public: 
property bool UsePaintPalette { 
   bool get(); 
   void set (    bool ); 
} 
UsePaintPalette # get and set (RasterPaintProperties) 

Property Value

true to automatically use the Leadtools.RasterImage object palette, false to ignore it.

Remarks

Used only when PaintEngine is set to RasterPaintEngine.Gdi.

Set this to true to automatically cause the paint methods to use the Leadtools.RasterImage palette if it has any.

Example
C#
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Drawing; 
 
 
public void RasterPaintPropertiesExample() 
{ 
   // Create the form  
   PaintPropertiesForm f = new PaintPropertiesForm(); 
   f.ShowDialog(); 
} 
 
class PaintPropertiesForm : Form 
{ 
   private int index = 0; 
   private RasterImage rasterImage; 
   private RasterPaintProperties paintProperties; 
 
   public PaintPropertiesForm() 
   { 
      Text = "GDI paint engine - normal - Double click to show next RasterPaintProperties options"; 
      SetStyle(ControlStyles.ResizeRedraw, true); 
      SetStyle(ControlStyles.AllPaintingInWmPaint, true); 
      SetStyle(ControlStyles.OptimizedDoubleBuffer, true); 
      SetStyle(ControlStyles.UserPaint, true); 
 
      // Load an image  
      string fileName = Path.Combine(LEAD_VARS.ImagesDir, "Ocr1.tif"); 
 
      using (RasterCodecs codecs = new RasterCodecs()) 
      { 
         codecs.ThrowExceptionsOnInvalidImages = true; 
         rasterImage = codecs.Load(fileName); 
      } 
 
      paintProperties = RasterPaintProperties.Default; 
 
      // Start with GDI paint engine and normal paint scaling 
      paintProperties.PaintEngine = RasterPaintEngine.Gdi; 
      paintProperties.PaintDisplayMode = RasterPaintDisplayModeFlags.None; 
   } 
 
   protected override void Dispose(bool disposing) 
   { 
      if (disposing) 
      { 
         if (rasterImage != null) 
            rasterImage.Dispose(); 
      } 
 
      base.Dispose(disposing); 
   } 
 
   protected override void OnDoubleClick(EventArgs e) 
   { 
      switch (index) 
      { 
         case 0: 
            Text = "GDI paint engine - SourceAnd ROP - Double click to show next RasterPaintProperties options"; 
            paintProperties.RasterOperation = RasterPaintProperties.SourceAnd; 
            break; 
 
         case 1: 
            Text = "GDI paint engine - Scale to gray - Double click to show next RasterPaintProperties options"; 
            paintProperties.RasterOperation = RasterPaintProperties.SourceCopy; 
            paintProperties.PaintDisplayMode = RasterPaintDisplayModeFlags.ScaleToGray; 
            break; 
 
         case 2: 
            Text = "GDI+ paint engine - Double click to set the opacity"; 
            paintProperties.PaintEngine = RasterPaintEngine.GdiPlus; 
            break; 
 
         case 3: 
            Text = "GDI+ paint engine - Opacity set to 50% - Done"; 
            paintProperties.Opacity = 128; 
            break; 
 
         default: 
            break; 
      } 
 
      index++; 
      Invalidate(); 
      base.OnDoubleClick(e); 
   } 
 
   protected override void OnPaint(PaintEventArgs e) 
   { 
      // Paint the image  
      LeadRect destRect = LeadRect.FromLTRB(ClientRectangle.Left, ClientRectangle.Top, ClientRectangle.Right, ClientRectangle.Bottom); 
      destRect = RasterImage.CalculatePaintModeRectangle( 
         rasterImage.ImageWidth, 
         rasterImage.ImageHeight, 
         destRect, 
         RasterPaintSizeMode.Fit, 
         RasterPaintAlignMode.Center, 
         RasterPaintAlignMode.Center); 
 
      RasterImagePainter.Paint(rasterImage, e.Graphics, destRect, paintProperties); 
 
      base.OnPaint(e); 
   } 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 22.0.2023.3.31
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Drawing Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.