HotXLS Docs

TXLSXImage and TXLSXImages classes

TXLSXImages is the worksheet image collection exposed by TXLSXWorksheet.Images and each TXLSXImage carries image bytes, format, anchor geometry, crop, image adjustments, fill mode, rotation, and edit-safe imported DrawingML

Declarations

type
  TXLSXImageFillMode = (xlsxImageFillStretch, xlsxImageFillTile);

  TXLSXImage = class
    procedure Assign(Source: TXLSXImage);
    procedure Scale(APercent: Double; AKeepAspect: Boolean = True);
    procedure ClearPreservedXml;
    property Row, Col: Integer;
    property WidthEMU, HeightEMU: Integer;
    property WidthInch, HeightInch: Double;
    property WidthCM, HeightCM: Double;
    property WidthPt, HeightPt: Double;
    property Format: TXLSXImageFormat;
    property Data: AnsiString;
    property AnchorType: TXLSXAnchorEditAs;
    property CropLeft, CropTop, CropRight, CropBottom: Double;
    property Transparency, Brightness, Contrast: Double;
    property Rotation: Double;
    property AltText: WideString;
    property AltTextTitle: WideString;
    property FillMode: TXLSXImageFillMode;
    property HasPreservedXml: Boolean;
  end;

  TXLSXImages = class
    function Add: TXLSXImage; overload;
    function Add(Source: TXLSXImage): Integer; overload;
    function FindAt(ARow, ACol: Integer): TXLSXImage;
    function DeleteAt(ARow, ACol: Integer): Boolean;
    function DeleteInRange(ARow1, ACol1, ARow2, ACol2: Integer): Integer;
    property Items[Index: Integer]: TXLSXImage; default;
  end;

Key members

Row and ColOne-based top-left anchor cell
WidthEMU and HeightEMUNative drawing dimensions in English Metric Units
WidthInch, WidthCM and WidthPtConvenience geometry views that update the underlying EMU dimensions
AnchorTypeSelects move and size with cells, move only, or absolute drawing behaviour
CropLeft, CropTop, CropRight and CropBottomSource-image crop edges as percentages from 0 to 100
TransparencyUniform image transparency from 0 to 100 percent
Brightness and ContrastLuminance adjustments from -100 to 100 percent
RotationClockwise shape rotation in degrees, clamped to -360 through 360
AltTextAccessibility alt text for the picture, consumed by screen readers and assistive tools
AltTextTitleAccessible title for the picture
FillModeStretches the picture once or tiles it across the shape
HasPreservedXml and ClearPreservedXmlInspect or discard edit-safe imported DrawingML for one picture
FindAtFinds the image anchored at a one-based cell coordinate

Example

var Image: TXLSXImage;
begin
  Image := Sheet.Images.Add;
  Image.Row := 2;
  Image.Col := 4;
  Image.Data := PngBytes;
  Image.Format := xlsxImagePng;
  Image.WidthCM := 6;
  Image.AnchorType := xaOneCell;
  Image.CropLeft := 12.5;
  Image.Transparency := 20;
  Image.Brightness := 10;
  Image.Contrast := -5;
  Image.FillMode := xlsxImageFillStretch;
  Image.Rotation := 15;
end;

See also