<IsabyteImageEditor
Width="100%"
Height="80vh"
BannerTemplateFormats="@_customFormats"
BannerTemplateFormatsMode="BannerFormatsMode.AddToDefaults"
OnExport="HandleExport"
OnFullscreenChange="HandleFullscreenChange"
OnNotice="HandleNotice"
OnAiRequest="HandleAiRequest"
OnSave="HandleOnSave" />
@code {
@using Isabyte.PowerTools.Components.Tools
// Fields
private string _width = "100%";
private string _height = "80vh";
private bool _enableLayers = true;
private bool _enableAdjustments = true;
// Custom banner formats
private List<BannerFormatPreset> _customFormats = new()
{
new() { Name = "Company Badge", Width = 400, Height = 400, Category = BannerCategory.Custom },
new() { Name = "Email Signature", Width = 600, Height = 200, Category = BannerCategory.Custom },
new() { Name = "Event Ticket", Width = 1200, Height = 500, Category = BannerCategory.Custom },
};
// Event handlers
private void HandleExport(ImageEditorExportResult result)
{
// result.Data, result.MimeType, result.Format, result.Width, result.Height
}
private void HandleFullscreenChange(bool fullscreen) { }
private void HandleNotice(ImageEditorNotice notice)
{
// notice.Kind ("warning"), notice.Message
}
private void HandleAiRequest(ImageEditorAiRequest request)
{
// request.Prompt, request.Images (PNG data URLs), request.LayerContextMode, request.ResultTarget
}
private void HandleOnSave(ImageEditorSaveResult result)
{
// result.Data, result.FileName, result.FileId, result.IsNew, result.FileExtension
}
}