RTBlazorfied 1.0.203

There is a newer version of this package available.
See the version list below for details.
dotnet add package RTBlazorfied --version 1.0.203                
NuGet\Install-Package RTBlazorfied -Version 1.0.203                
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.203" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RTBlazorfied --version 1.0.203                
#r "nuget: RTBlazorfied, 1.0.203"                
#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.203

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

RT Blazorfied

Author: Ryan Kueter
Updated: July, 2024

About

RT Blazorfied 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 does not 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 styles from being polluted by existing page styles. Because of that, it applies some of its own styling to help the user to visualize the components. Users are also able to add CSS classes to many components allowing them to customize their appearance.

Targets:

  • .NET 8

Adding a Rich Textbox

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;

        // 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.253 105 8/18/2024
1.0.252 71 8/18/2024
1.0.251 69 8/18/2024
1.0.250 70 8/18/2024
1.0.249 74 8/18/2024
1.0.248 68 8/18/2024
1.0.247 72 8/15/2024
1.0.246 64 8/15/2024
1.0.245 65 8/14/2024
1.0.244 63 8/14/2024
1.0.243 72 8/13/2024
1.0.242 64 8/13/2024
1.0.241 60 8/13/2024
1.0.240 71 8/13/2024
1.0.239 46 8/4/2024
1.0.238 51 8/4/2024
1.0.237 40 8/3/2024
1.0.236 46 8/3/2024
1.0.235 41 8/3/2024
1.0.234 41 8/2/2024
1.0.233 55 8/2/2024
1.0.232 52 8/1/2024
1.0.231 53 8/1/2024
1.0.230 51 8/1/2024
1.0.229 48 7/31/2024
1.0.228 45 7/31/2024
1.0.227 42 7/31/2024
1.0.226 44 7/30/2024
1.0.225 36 7/30/2024
1.0.224 35 7/30/2024
1.0.223 26 7/29/2024
1.0.222 27 7/29/2024
1.0.221 30 7/29/2024
1.0.220 39 7/29/2024
1.0.219 39 7/29/2024
1.0.218 40 7/29/2024
1.0.217 43 7/28/2024
1.0.215 39 7/28/2024
1.0.214 42 7/28/2024
1.0.213 46 7/27/2024
1.0.212 47 7/26/2024
1.0.211 49 7/26/2024
1.0.210 53 7/26/2024
1.0.209 46 7/26/2024
1.0.208 44 7/26/2024
1.0.207 45 7/25/2024
1.0.206 45 7/25/2024
1.0.205 40 7/25/2024
1.0.204 40 7/25/2024
1.0.203 47 7/25/2024
1.0.202 45 7/25/2024
1.0.201 43 7/25/2024
1.0.200 45 7/25/2024
1.0.199 51 7/25/2024
1.0.198 45 7/24/2024
1.0.197 43 7/24/2024
1.0.196 46 7/24/2024
1.0.195 44 7/24/2024
1.0.194 46 7/24/2024
1.0.192 32 7/24/2024
1.0.191 59 7/23/2024
1.0.190 70 7/23/2024
1.0.189 65 7/23/2024
1.0.188 60 7/23/2024
1.0.187 60 7/23/2024
1.0.186 64 7/23/2024
1.0.185 63 7/22/2024
1.0.184 61 7/22/2024
1.0.183 84 7/22/2024
1.0.182 77 7/21/2024
1.0.181 74 7/21/2024
1.0.180 84 7/21/2024
1.0.179 74 7/21/2024
1.0.178 71 7/21/2024
1.0.177 82 7/21/2024
1.0.176 79 7/21/2024
1.0.175 79 7/21/2024
1.0.174 88 7/20/2024
1.0.173 88 7/20/2024
1.0.172 77 7/19/2024
1.0.171 73 7/19/2024
1.0.170 77 7/19/2024
1.0.169 73 7/18/2024
1.0.168 68 7/18/2024
1.0.167 66 7/18/2024
1.0.166 73 7/18/2024
1.0.165 67 7/18/2024
1.0.164 72 7/18/2024
1.0.163 67 7/18/2024
1.0.162 67 7/17/2024
1.0.161 81 7/17/2024
1.0.160 69 7/17/2024
1.0.159 69 7/17/2024
1.0.158 58 7/17/2024
1.0.157 70 7/17/2024
1.0.156 82 7/16/2024
1.0.155 70 7/16/2024
1.0.154 69 7/16/2024
1.0.153 68 7/16/2024
1.0.152 66 7/16/2024
1.0.151 67 7/16/2024
1.0.150 74 7/16/2024
1.0.149 71 7/15/2024
1.0.148 72 7/14/2024
1.0.147 74 7/14/2024
1.0.146 71 7/13/2024
1.0.145 69 7/13/2024
1.0.144 79 7/13/2024
1.0.143 74 7/13/2024
1.0.142 65 7/13/2024
1.0.141 72 7/13/2024
1.0.140 71 7/13/2024
1.0.139 70 7/13/2024
1.0.138 70 7/12/2024
1.0.137 68 7/11/2024
1.0.136 69 7/11/2024
1.0.135 72 7/11/2024
1.0.134 70 7/11/2024
1.0.133 72 7/10/2024
1.0.131 70 7/9/2024
1.0.130 73 7/7/2024
1.0.129 72 7/7/2024
1.0.128 67 7/7/2024
1.0.127 65 7/7/2024
1.0.126 79 7/7/2024
1.0.125 66 7/6/2024
1.0.124 72 7/6/2024
1.0.123 78 7/5/2024
1.0.122 75 7/5/2024
1.0.121 70 7/5/2024
1.0.120 66 7/5/2024
1.0.119 72 7/5/2024
1.0.118 70 7/5/2024
1.0.117 65 7/5/2024
1.0.116 60 7/5/2024
1.0.115 69 7/5/2024
1.0.114 67 7/5/2024
1.0.113 65 7/5/2024
1.0.112 69 7/5/2024
1.0.111 84 7/4/2024
1.0.110 72 7/4/2024
1.0.109 72 7/4/2024
1.0.108 73 7/4/2024
1.0.107 84 7/4/2024
1.0.106 83 7/4/2024
1.0.105 80 7/4/2024
1.0.104 76 7/4/2024
1.0.103 73 7/4/2024
1.0.102 75 7/4/2024
1.0.101 70 7/4/2024
1.0.100 80 7/3/2024
1.0.99 74 7/3/2024
1.0.98 80 7/3/2024
1.0.97 65 7/3/2024
1.0.96 86 7/3/2024
1.0.95 73 7/3/2024
1.0.94 71 7/3/2024
1.0.93 85 7/3/2024
1.0.92 81 7/3/2024
1.0.91 94 7/3/2024
1.0.90 80 7/2/2024
1.0.89 80 7/2/2024
1.0.88 68 7/2/2024
1.0.87 72 7/2/2024
1.0.86 70 7/2/2024
1.0.85 71 7/2/2024
1.0.84 83 7/2/2024
1.0.83 84 7/2/2024
1.0.82 83 7/2/2024
1.0.81 78 7/1/2024
1.0.80 81 7/1/2024
1.0.79 75 7/1/2024
1.0.78 89 6/30/2024
1.0.77 78 6/30/2024
1.0.76 78 6/30/2024
1.0.75 83 6/30/2024
1.0.74 91 6/28/2024
1.0.73 84 6/28/2024
1.0.72 79 6/28/2024
1.0.71 82 6/28/2024
1.0.70 72 6/27/2024
1.0.69 71 6/26/2024
1.0.68 83 6/26/2024
1.0.67 88 6/22/2024
1.0.66 88 6/22/2024
1.0.65 90 6/21/2024
1.0.64 82 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 70 6/16/2024
1.0.44 84 6/16/2024
1.0.43 77 6/16/2024
1.0.42 80 6/16/2024
1.0.41 79 6/16/2024
1.0.40 79 6/16/2024
1.0.39 82 6/16/2024
1.0.38 90 6/16/2024
1.0.37 94 6/16/2024
1.0.36 82 6/14/2024
1.0.35 70 6/13/2024
1.0.34 73 6/13/2024
1.0.33 72 6/13/2024
1.0.32 69 6/13/2024
1.0.31 69 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 66 6/10/2024
1.0.25 61 6/10/2024
1.0.24 67 6/10/2024
1.0.23 78 6/10/2024
1.0.22 81 6/10/2024
1.0.21 80 6/8/2024
1.0.20 84 6/8/2024
1.0.19 77 6/8/2024
1.0.18 82 6/8/2024
1.0.17 79 6/8/2024
1.0.16 76 6/7/2024
1.0.15 78 6/7/2024
1.0.14 86 6/7/2024
1.0.13 79 6/7/2024
1.0.12 81 6/7/2024
1.0.11 78 6/7/2024
1.0.9 86 6/6/2024
1.0.8 88 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 85 6/6/2024
1.0.3 82 6/6/2024
1.0.2 82 6/6/2024
1.0.1 84 6/6/2024

Removed a feature that embeds an image in the document using base-64 to prevent abuse and performance optimizations to improve the usability of the editor.