RTBlazorfied 1.0.225

dotnet add package RTBlazorfied --version 1.0.225                
NuGet\Install-Package RTBlazorfied -Version 1.0.225                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RTBlazorfied" Version="1.0.225" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RTBlazorfied --version 1.0.225                
#r "nuget: RTBlazorfied, 1.0.225"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install RTBlazorfied as a Cake Addin
#addin nuget:?package=RTBlazorfied&version=1.0.225

// Install RTBlazorfied as a Cake Tool
#tool nuget:?package=RTBlazorfied&version=1.0.225                

RT Blazorfied

Author: Ryan Kueter
Updated: July, 2024

About

RT Blazorfied HTML Editor is a free .NET library available from the NuGet Package Manager that allows Blazor developers to easily add a rich text box / html editor to their Blazor application. The editor uses Google's Font Icons. It doesn't reference the icon library. However, it does embed .svg versions of those icons so they are customizable. It also uses the shadow DOM to isolate the HTML from inheriting the existing page styles. Because of that, it provides a preview window for the user to view the live page if the style sheets are applied to the host application. Users are also able to add CSS classes to many components allowing them to customize their appearance.

Targets:

  • .NET 8

Features:

  • Shortcut Keys
  • Button Visibility
  • Copy and Taste Content and Tables
  • Highly Customized Appearance
  • Lists
  • Links
  • Tables
  • Colors and Highlighting
  • Images
  • Video
  • Audio
  • PDF Documents
  • HTML Pages
  • Code Blocks
  • Block Quotes

Adding the HTML Editor

Add the JavaScript Reference

Add the following reference to the end of your index.html file:

<script src="_content/RTBlazorfied/js/RTBlazorfied.js"></script>

Add the Element

In this example, the @Html is the html string. This height and width will override those specified in the configuration options.

@using RichTextBlazorfied

<RTBlazorfied @ref="box" @bind-Value="@Html" Height="500px" Width="1000px" />

The element reference provides another way to get the html or plaintext:

private RTBlazorfied? box { get; set; }

private async Task<string?> GetHtml() =>
        await box!.GetHtmlAsync();

private async Task<string?> GetPlainText() =>
        await box!.GetPlainTextAsync();

Configure the Options

RTBlazorfied was designed to allow developers to highly customize the appearance of the rich textbox with the following configuration options:

<RTBlazorfied @bind-Value="@Html" Options="@GetOptions()" />

CSS variables, e.g., var(--my-variable) are interchangeable with these styles. And omitting the ButtonVisibility options will display all the buttons.

public Action<IRTBlazorfiedOptions> GetOptions() => (o =>
{
    o.ToolbarStyles(o =>
    {
        o.BackgroundColor = "#00FF00";
        o.BorderColor = "var(--border-color)";
        o.BorderWidth = "1px";
        o.BorderStyle = "solid";
        o.BorderRadius = "10px 0px";
        o.DropdownBackgroundColor = "var(--background-color)";
        o.DropdownTextColor = "#FFFFFF";
        o.DropdownBackgroundColorHover = "#777777";
        o.DropdownTextColorHover = "#FFFFAA";
    });
    o.ModalStyles(o =>
    {
        o.RemoveCSSClassInputs();
        o.BackgroundColor = "#333333";
        o.TextColor = "#FFFFAA";
        o.TextSize = "20px";
        o.TextFont = "Comic Sans MS";
        o.TextboxBackgroundColor = "#333333"; // Texbox refers to inputs
        o.TextboxTextColor = "#FFFFAA";
        o.TextboxBorderColor = "#FFFFAA";
        o.CheckboxAccentColor = "#FFFFAA";
    });
    o.ButtonStyles(o =>
    {
        o.TextColor = "#ff0000";
        o.TextSize = "30px";
        o.TextFont = "Comic Sans MS";
        o.BackgroundColor = "#0000FF";
        o.BackgroundColorHover = "inherit";
        o.BackgroundColorSelected = "inherit";
        o.BorderColor = "#FFF000";
        o.BorderColorHover = "#FF0000";
        o.BorderColorSelected = "#0000FF";
        o.BorderStyle = "solid";
        o.BorderRadius = "0px";
        o.BorderWidth = "1px";
    });
    o.EditorStyles(o =>
    {
        o.Width = "500px";
        o.Height = "700px";
        o.BorderRadius = "10px";
        o.BoxShadow = "3px 3px 5px 6px #ccc";
        o.BorderStyle = "dotted";
        o.BorderWidth = "10px";
        o.BorderColor = "#FF0000";
    });
    o.ContentStyles(o =>
    {
        o.ContentBoxShadow = "inset 0 0 7px #eee";
        o.BackgroundColor = "#FFFF99";
        o.TextColor = "#FFFFAA";
        o.TextSize = "30px";
        o.TextFont = "Comic Sans MS";
    });
    o.ScrollbarStyles(o =>
    {
        o.Width = "5px";
        o.Opacity = "0.5";
        o.ThumbBackground = "#0000FF";
        o.ThumbBackgroundHover = "#00FFFF";
        o.BackgroundColor = "transparent";
        o.ThumbBorderRadius = "10px";
    });
    o.ButtonVisibility(o =>
    {
        o.ClearAll();
        o.Size = true;
        o.Font = true;
        o.Format = true;
        o.Bold = true;
        o.Italic = true;
        o.Underline = true;
        o.Strikethrough = true;
        o.Subscript = true;
        o.Superscript = true;
        o.TextColor = true;
        o.AlignLeft = true;
        o.AlignCenter = true;
        o.AlignRight = true;
        o.AlignJustify = true;
        o.Copy = true;
        o.Cut = true;
        o.Delete = true;
        o.SelectAll = true;
        o.Image = true;
        o.Link = true;
        o.OrderedList = true;
        o.UnorderedList = true;
        o.Indent = true;
        o.Undo = true;
        o.Redo = true;
        o.Quote = true;
        o.CodeBlock = true;
        o.EmbedMedia = true;
        o.ImageUpload = true;
        o.HtmlView = true;
        o.Preview = true;

        // Dividers
        o.TextStylesDivider = false;
        o.FormatDivider = false;
        o.TextColorDivider = false;
        o.AlignDivider = false;
        o.ActionDivider = false;
        o.ListDivider = false;
        o.MediaDivider = false;
        o.HistoryDivider = false;
    });
});

Shortcut Keys

Bold: Ctrl + B
Italic: Ctrl + I
Underline: Ctrl + U
Strikethrough: Ctrl + D
Subscript: Ctrl + =
Superscript: Ctrl + Shift + [+]
Text Color: Ctrl + Shift + C
Text Background Color: Ctrl + shift + B
Align Left: Ctrl + L
Align Center: Ctrl + E
Align Right: Ctrl + R
Align Justify: Ctrl + J
Cut: Ctrl + X
Copy: Ctrl + C
Paste: Ctrl + V
Select All: Ctrl + A
Ordered List: Ctrl + Shift + O
Unordered List: Ctrl + Shift + U
Increase Indent: Tab
Decrease Indent: Shift + Tab
Insert Link: Ctrl + Shift + K
Insert Image: Ctrl + Shift + I
Insert Quote: Ctrl + Shift + Q
Insert Media: Ctrl + Shift + M
Insert Table: Ctrl + Shift + L
Insert Code Block: Ctrl + Shift + [*]
Undo: Ctrl + Z
Redo: Ctrl + Y
Format: Ctrl + Shift + [D, P, 1, 2, 3, and so on]
Size: Ctrl + Shift + [<, >]
Toggle Code and HTML: Ctrl + Shift + A

Contributions

This project is being developed for free by me, Ryan Kueter, in my spare time. So, if you would like to contribute, please submit your ideas on the Github project page.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.225 0 7/30/2024
1.0.224 0 7/30/2024
1.0.223 0 7/29/2024
1.0.222 4 7/29/2024
1.0.221 10 7/29/2024
1.0.220 26 7/29/2024
1.0.219 25 7/29/2024
1.0.218 27 7/29/2024
1.0.217 34 7/28/2024
1.0.215 29 7/28/2024
1.0.214 33 7/28/2024
1.0.213 33 7/27/2024
1.0.212 35 7/26/2024
1.0.211 36 7/26/2024
1.0.210 40 7/26/2024
1.0.209 33 7/26/2024
1.0.208 32 7/26/2024
1.0.207 33 7/25/2024
1.0.206 32 7/25/2024
1.0.205 28 7/25/2024
1.0.204 28 7/25/2024
1.0.203 35 7/25/2024
1.0.202 35 7/25/2024
1.0.201 33 7/25/2024
1.0.200 35 7/25/2024
1.0.199 41 7/25/2024
1.0.198 35 7/24/2024
1.0.197 36 7/24/2024
1.0.196 35 7/24/2024
1.0.195 33 7/24/2024
1.0.194 40 7/24/2024
1.0.192 26 7/24/2024
1.0.191 53 7/23/2024
1.0.190 64 7/23/2024
1.0.189 60 7/23/2024
1.0.188 55 7/23/2024
1.0.187 55 7/23/2024
1.0.186 59 7/23/2024
1.0.185 58 7/22/2024
1.0.184 56 7/22/2024
1.0.183 79 7/22/2024
1.0.182 72 7/21/2024
1.0.181 68 7/21/2024
1.0.180 78 7/21/2024
1.0.179 69 7/21/2024
1.0.178 66 7/21/2024
1.0.177 77 7/21/2024
1.0.176 74 7/21/2024
1.0.175 74 7/21/2024
1.0.174 83 7/20/2024
1.0.173 83 7/20/2024
1.0.172 72 7/19/2024
1.0.171 69 7/19/2024
1.0.170 72 7/19/2024
1.0.169 68 7/18/2024
1.0.168 63 7/18/2024
1.0.167 61 7/18/2024
1.0.166 68 7/18/2024
1.0.165 62 7/18/2024
1.0.164 66 7/18/2024
1.0.163 62 7/18/2024
1.0.162 63 7/17/2024
1.0.161 76 7/17/2024
1.0.160 65 7/17/2024
1.0.159 65 7/17/2024
1.0.158 50 7/17/2024
1.0.157 65 7/17/2024
1.0.156 77 7/16/2024
1.0.155 65 7/16/2024
1.0.154 64 7/16/2024
1.0.153 63 7/16/2024
1.0.152 61 7/16/2024
1.0.151 62 7/16/2024
1.0.150 69 7/16/2024
1.0.149 65 7/15/2024
1.0.148 67 7/14/2024
1.0.147 69 7/14/2024
1.0.146 66 7/13/2024
1.0.145 65 7/13/2024
1.0.144 75 7/13/2024
1.0.143 69 7/13/2024
1.0.142 60 7/13/2024
1.0.141 67 7/13/2024
1.0.140 66 7/13/2024
1.0.139 65 7/13/2024
1.0.138 66 7/12/2024
1.0.137 64 7/11/2024
1.0.136 65 7/11/2024
1.0.135 68 7/11/2024
1.0.134 66 7/11/2024
1.0.133 68 7/10/2024
1.0.131 66 7/9/2024
1.0.130 69 7/7/2024
1.0.129 66 7/7/2024
1.0.128 63 7/7/2024
1.0.127 61 7/7/2024
1.0.126 75 7/7/2024
1.0.125 62 7/6/2024
1.0.124 68 7/6/2024
1.0.123 74 7/5/2024
1.0.122 71 7/5/2024
1.0.121 66 7/5/2024
1.0.120 62 7/5/2024
1.0.119 68 7/5/2024
1.0.118 66 7/5/2024
1.0.117 61 7/5/2024
1.0.116 56 7/5/2024
1.0.115 65 7/5/2024
1.0.114 63 7/5/2024
1.0.113 61 7/5/2024
1.0.112 64 7/5/2024
1.0.111 80 7/4/2024
1.0.110 68 7/4/2024
1.0.109 68 7/4/2024
1.0.108 69 7/4/2024
1.0.107 79 7/4/2024
1.0.106 79 7/4/2024
1.0.105 76 7/4/2024
1.0.104 72 7/4/2024
1.0.103 69 7/4/2024
1.0.102 71 7/4/2024
1.0.101 66 7/4/2024
1.0.100 75 7/3/2024
1.0.99 70 7/3/2024
1.0.98 76 7/3/2024
1.0.97 60 7/3/2024
1.0.96 81 7/3/2024
1.0.95 68 7/3/2024
1.0.94 64 7/3/2024
1.0.93 80 7/3/2024
1.0.92 76 7/3/2024
1.0.91 89 7/3/2024
1.0.90 75 7/2/2024
1.0.89 76 7/2/2024
1.0.88 65 7/2/2024
1.0.87 70 7/2/2024
1.0.86 66 7/2/2024
1.0.85 67 7/2/2024
1.0.84 79 7/2/2024
1.0.83 81 7/2/2024
1.0.82 79 7/2/2024
1.0.81 74 7/1/2024
1.0.80 76 7/1/2024
1.0.79 71 7/1/2024
1.0.78 85 6/30/2024
1.0.77 76 6/30/2024
1.0.76 76 6/30/2024
1.0.75 80 6/30/2024
1.0.74 89 6/28/2024
1.0.73 82 6/28/2024
1.0.72 77 6/28/2024
1.0.71 80 6/28/2024
1.0.70 70 6/27/2024
1.0.69 69 6/26/2024
1.0.68 81 6/26/2024
1.0.67 86 6/22/2024
1.0.66 86 6/22/2024
1.0.65 88 6/21/2024
1.0.64 80 6/20/2024
1.0.63 82 6/19/2024
1.0.62 77 6/19/2024
1.0.61 88 6/19/2024
1.0.60 80 6/18/2024
1.0.59 75 6/17/2024
1.0.58 71 6/17/2024
1.0.57 71 6/17/2024
1.0.56 69 6/17/2024
1.0.55 75 6/17/2024
1.0.54 71 6/17/2024
1.0.53 72 6/17/2024
1.0.52 70 6/17/2024
1.0.51 81 6/17/2024
1.0.50 76 6/17/2024
1.0.49 72 6/17/2024
1.0.48 82 6/17/2024
1.0.47 78 6/17/2024
1.0.46 76 6/16/2024
1.0.45 69 6/16/2024
1.0.44 83 6/16/2024
1.0.43 76 6/16/2024
1.0.42 79 6/16/2024
1.0.41 78 6/16/2024
1.0.40 78 6/16/2024
1.0.39 81 6/16/2024
1.0.38 89 6/16/2024
1.0.37 93 6/16/2024
1.0.36 81 6/14/2024
1.0.35 69 6/13/2024
1.0.34 72 6/13/2024
1.0.33 71 6/13/2024
1.0.32 68 6/13/2024
1.0.31 68 6/12/2024
1.0.30 66 6/12/2024
1.0.29 73 6/12/2024
1.0.28 68 6/11/2024
1.0.27 65 6/11/2024
1.0.26 65 6/10/2024
1.0.25 60 6/10/2024
1.0.24 66 6/10/2024
1.0.23 77 6/10/2024
1.0.22 80 6/10/2024
1.0.21 79 6/8/2024
1.0.20 75 6/8/2024
1.0.19 76 6/8/2024
1.0.18 81 6/8/2024
1.0.17 78 6/8/2024
1.0.16 75 6/7/2024
1.0.15 77 6/7/2024
1.0.14 85 6/7/2024
1.0.13 78 6/7/2024
1.0.12 80 6/7/2024
1.0.11 78 6/7/2024
1.0.9 86 6/6/2024
1.0.8 80 6/6/2024
1.0.7 84 6/6/2024
1.0.6 77 6/6/2024
1.0.5 83 6/6/2024
1.0.4 84 6/6/2024
1.0.3 81 6/6/2024
1.0.2 82 6/6/2024
1.0.1 83 6/6/2024

Added a preview window, upload image functionality, and improved cursor positioning.