使用Delphi中的TImage组件将文件中的链接缩略图绘制成形状

问题描述

我正在尝试将运行时在圆形形状内创建的图像的缩略图链接到Firemonkey应用程序的timage组件,是否知道如何显示在形状上选择的图像?

解决方法

以下是在运行时创建TImageControl,将其加载图像并将其居中放置在TCircle形状上的代码:

    procedure TForm1.Button1Click(Sender: TObject);
var
    ImageControl : TImageControl;
    Previous     : TComponent;
begin
    Previous := FindComponent(Circle1.Name + '_ThumbImage');
    if Previous is TImageControl then
        ImageControl := TImageControl(Previous)
    else begin
        ImageControl              := TImageControl.Create(Self);
        ImageControl.Name         := Circle1.Name + '_ThumbImage';
        ImageControl.Size.Width   := Circle1.Size.Width / 2;
        ImageControl.Size.Height  := Circle1.Size.Height / 2;
        ImageControl.Parent       := Circle1;
        ImageControl.Position.X   := (Circle1.Size.Width - ImageControl.Size.Width) / 2;
        ImageControl.Position.Y   := (Circle1.Size.Height - ImageControl.Size.Height) / 2;
        ImageControl.Visible      := TRUE;
    end;
    ImageControl.Bitmap.LoadFromFile('MyThumbnail.jpg');
end;

当然,您可以加载创建的缩略图,而不是从文件加载图像。您没有说缩略图的存储位置,所以我认为它在文件中...