Image: IGxImage;
Image: Prognoz.Platform.Interop.Drawing.GxImage;
Свойство Image определяет изображение, которое используется в качестве фона легенды.
Для определения способа размещения изображения в качестве фона легенды используйте IMapBackground.ImageDrawStyle.
Для выполнения примера в репозитории предполагается наличие формы, содержащей компоненты:
ReportBox с идентификатором «ReportBox1»;
UiReport с идентификатором «UiReport1», который является источником данных для «ReportBox1».
Также необходимо наличие регламентного отчета, содержащего карту с включенной легендой, и который является источником данных для «UiReport1». В файловой системе необходимо наличие изображения «C:\Image.png».
Добавьте ссылки на системные сборки: Drawing, Map, Report, Tab.
Sub UserProc;
Var
regrep: IPrxReport;
sheet: IPrxSheet;
table: IPrxTable;
objects: ITabObjects;
map: IMap;
legend: IMapLegend;
background: IMapBackground;
image: IGxImage;
Begin
// Получим регламентный отчет
regrep := UiReport1.Report;
// Получим карту из регламентного отчета
sheet := regrep.Activesheet;
table := sheet As IPrxTable;
objects := table.TabSheet.Objects;
map := objects.Item(0).Extension As IMap;
// Получим легенду карты
legend := map.View.Legend;
// Получим фон легенды на карте
background := legend.Background;
// Установим тип заливки - изображение
background.Type := MapBackgroundType.Picture;
// Создадим изображение из файла
Image := New GxImage.CreateFromFile("C:\Image.png");
// Зададим изображение
background.Image := image;
// Зададим способ размещения изображения - растянуть
background.ImageDrawStyle := MapBackgroundImageDrawStyle.Stretch;
// Обновим карту
map.Refresh;
End Sub UserProc;
После выполнения примера в качестве фона легенды на карте установится изображение, которое займет всю область легенды.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore. Вместо компонентов Fore используйте их Fore.NET аналоги.
Imports Prognoz.Platform.Interop.Drawing;
Imports Prognoz.Platform.Interop.Map;
Imports Prognoz.Platform.Interop.Report;
Imports Prognoz.Platform.Interop.Tab;
…
Public Sub UserProc();
Var
regrep: IPrxReport;
sheet: IPrxSheet;
table: IPrxTable;
objects: ITabObjects;
map: IMap;
legend: IMapLegend;
background: IMapBackground;
image: GxImageClass_2 = New GxImageClass_2();
Begin
// Получим регламентный отчет
regrep := UiReportNet1.ReportUi.Report;
// Получим карту из регламентного отчета
sheet := regrep.Activesheet;
table := sheet As IPrxTable;
objects := table.TabSheet.Objects;
map := objects.Item[0].Extension As IMap;
// Получим легенду карты
legend := map.View.Legend;
// Получим фон легенды на карте
background := legend.Background;
// Установим тип заливки - изображение
background.Type := MapBackgroundType.mbtPicture;
// Создадим изображение из файла
Image.CreateFromFile("C:\\Image.png");
// Зададим изображение
background.Image := image;
// Зададим способ размещения изображения - растянуть
background.ImageDrawStyle := MapBackgroundImageDrawStyle.mbidsStretch;
// Обновим карту
map.Refresh();
End Sub UserProc;
См. также: