Skip to content

Commit eaeb006

Browse files
Merge pull request #805 from Syncfusion-Content/hotfix/hotfix-v29.1.33
DOCINFRA-2341_merged_using_automation
2 parents 3c9940b + 14b30d1 commit eaeb006

22 files changed

+1320
-77
lines changed

ej2-angular-toc.html

Lines changed: 53 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -2347,60 +2347,72 @@
23472347
RichTextEditor
23482348
<ul>
23492349
<li><a href="/ej2-angular/rich-text-editor/getting-started">Getting Started</a></li>
2350-
<li><a href="/ej2-angular/rich-text-editor/module">Feature Modules</a></li>
2351-
<li><a href="/ej2-angular/rich-text-editor/editor-value">Editor Value</a></li>
2352-
<li><a href="/ej2-angular/rich-text-editor/editor-mode">Editor Modes</a></li>
2353-
<li><a href="/ej2-angular/rich-text-editor/toolbar">Toolbar</a></li>
2354-
<li><a href="/ej2-angular/rich-text-editor/inline-editing">Inline Editing</a></li>
2355-
<li><a href="/ej2-angular/rich-text-editor/iframe">IFrame Editing Mode</a></li>
2356-
<li><a href="/ej2-angular/rich-text-editor/style-encapsulation">Style Encapsulation</a></li>
2357-
<li><a href="/ej2-angular/rich-text-editor/resizable-editor">Resizable Editor</a></li>
2358-
<li><a href="/ej2-angular/rich-text-editor/read-only-mode">Read-only Mode</a></li>
2359-
<li><a href="/ej2-angular/rich-text-editor/disable-editor">Disabling the Rich Text Editor</a></li>
2360-
<li><a href="/ej2-angular/rich-text-editor/character-count">Character Count</a></li>
2361-
<li><a href="/ej2-angular/rich-text-editor/code-view-support">Code View Support</a></li>
2362-
<li><a href="/ej2-angular/rich-text-editor/placeholder-text">Placeholder Text</a></li>
2363-
<li><a href="/ej2-angular/rich-text-editor/basic-text-styling">Basic Text Styling</a></li>
2364-
<li><a href="/ej2-angular/rich-text-editor/font-styling">Font Family, Size and Color</a></li>
2365-
<li><a href="/ej2-angular/rich-text-editor/indent-and-outdent">Increase and Decrease Indent</a></li>
2366-
<li><a href="/ej2-angular/rich-text-editor/text-alignments">Text Alignments</a></li>
2367-
<li><a href="/ej2-angular/rich-text-editor/headings">Heading Styles</a></li>
2368-
<li><a href="/ej2-angular/rich-text-editor/quotation-formatting">Quotation Formatting</a></li>
2369-
<li><a href="/ej2-angular/rich-text-editor/code-block-formatting">Code Block Formatting</a></li>
2370-
<li><a href="/ej2-angular/rich-text-editor/list-formatting">List Formatting</a></li>
2371-
<li><a href="/ej2-angular/rich-text-editor/link">Link</a></li>
2372-
<li><a href="/ej2-angular/rich-text-editor/insert-images">Images</a></li>
2373-
<li><a href="/ej2-angular/rich-text-editor/audio">Audios</a></li>
2374-
<li><a href="/ej2-angular/rich-text-editor/video">Videos</a></li>
2375-
<li><a href="/ej2-angular/rich-text-editor/table">Table</a></li>
2376-
<li><a href="/ej2-angular/rich-text-editor/remove-formatting">Remove Formatting</a></li>
2377-
<li><a href="/ej2-angular/rich-text-editor/format-painter">Format Painter</a></li>
2378-
<li><a href="/ej2-angular/rich-text-editor/emoji-picker">Emoji Picker</a></li>
2379-
<li><a href="/ej2-angular/rich-text-editor/paste-cleanup">Paste Cleanup</a></li>
2350+
<li><a href="/ej2-angular/rich-text-editor/module">Feature Module Injection</a></li>
2351+
<li><a href="/ej2-angular/rich-text-editor/editor-value">Managing Editor Value</a></li>
2352+
<li>Toolbar
2353+
<ul>
2354+
<li><a href="/ej2-angular/rich-text-editor/toolbar/toolbar-types">Toolbar Types</a></li>
2355+
<li><a href="/ej2-angular/rich-text-editor/toolbar/quick-toolbar">Quick Toolbar</a></li>
2356+
</ul>
2357+
</li>
2358+
<li>Tools
2359+
<ul>
2360+
<li><a href="/ej2-angular/rich-text-editor/tools/built-in-tools">Built-in Tools</a></li>
2361+
<li><a href="/ej2-angular/rich-text-editor/tools/custom-tools">Custom Tools</a></li>
2362+
<li><a href="/ej2-angular/rich-text-editor/tools/text-formatting">Text formatting and structural</a></li>
2363+
<li><a href="/ej2-angular/rich-text-editor/tools/styling-tools">Styling Tools</a></li>
2364+
</ul>
2365+
</li>
2366+
<li>Editor Types
2367+
<ul>
2368+
<li><a href="/ej2-angular/rich-text-editor/editor-types/editor-mode">Editor Render Mode</a></li>
2369+
<li><a href="/ej2-angular/rich-text-editor/editor-types/iframe">Iframe Editor</a></li>
2370+
<li><a href="/ej2-angular/rich-text-editor/editor-types/inline-editing">Inline Editor</a></li>
2371+
<li><a href="/ej2-angular/rich-text-editor/editor-types/resizable-editor">Resizable Editor</a></li>
2372+
</ul>
2373+
</li>
2374+
<li>Insert Image and Media
2375+
<ul>
2376+
<li><a href="/ej2-angular/rich-text-editor/insert-image-media/insert-images">Insert Image</a></li>
2377+
<li><a href="/ej2-angular/rich-text-editor/insert-image-media/audio">Insert Audio</a></li>
2378+
<li><a href="/ej2-angular/rich-text-editor/insert-image-media/video">Insert Video</a></li>
2379+
<li><a href="/ej2-angular/rich-text-editor/insert-image-media/file-browser">File Browser Support</a></li>
2380+
</ul>
2381+
</li>
2382+
<li><a href="/ej2-angular/rich-text-editor/link">Link Manipulation</a></li>
2383+
<li><a href="/ej2-angular/rich-text-editor/table">Table Manipulation</a></li>
2384+
<li><a href="/ej2-angular/rich-text-editor/paste-cleanup">Paste Clean-up</a></li>
2385+
<li>Smart Editing
2386+
<ul>
2387+
<li><a href="/ej2-angular/rich-text-editor/smart-editing/mentions">Mention Integration</a></li>
2388+
<li><a href="/ej2-angular/rich-text-editor/smart-editing/slash-menu">Slash Commands</a></li>
2389+
<li><a href="/ej2-angular/rich-text-editor/smart-editing/emoji-picker">Emoji Picker</a></li>
2390+
</ul>
2391+
</li>
2392+
<li>Validation and Security
2393+
<ul>
2394+
<li><a href="/ej2-angular/rich-text-editor/validation-security/form-validation">Forms Support</a></li>
2395+
<li><a href="/ej2-angular/rich-text-editor/validation-security/xhtml-validation">Content Validation and Security in XHTML</a></li>
2396+
<li><a href="/ej2-angular/rich-text-editor/validation-security/read-only-mode">Controlling Editor Access</a></li>
2397+
</ul>
2398+
</li>
23802399
<li><a href="/ej2-angular/rich-text-editor/enter-key-configuration">Enter Key Configuration</a></li>
2381-
<li><a href="/ej2-angular/rich-text-editor/undo-redo">Undo Redo</a></li>
2382-
<li><a href="/ej2-angular/rich-text-editor/mentions">Mentions</a></li>
2383-
<li><a href="/ej2-angular/rich-text-editor/form-validation">Forms Support</a></li>
2384-
<li><a href="/ej2-angular/rich-text-editor/xhtml-validation">XHTML validation</a></li>
2385-
<li><a href="/ej2-angular/rich-text-editor/prevent-cross-site-scripting">Preventing Cross-Site Scripting (XSS)</a></li>
2386-
<li><a href="/ej2-angular/rich-text-editor/style">Style Appearance Customization</a></li>
2400+
<li><a href="/ej2-angular/rich-text-editor/undo-redo">Undo and Redo</a></li>
23872401
<li><a href="/ej2-angular/rich-text-editor/import-and-export">Content Import/Export</a></li>
2402+
<li><a href="/ej2-angular/rich-text-editor/exec-command">Execute Command</a></li>
2403+
<li><a href="/ej2-angular/rich-text-editor/style">Style and Appearance Customization</a></li>
2404+
<li><a href="/ej2-angular/rich-text-editor/style-encapsulation">Style Encapsulation</a></li>
23882405
<li><a href="/ej2-angular/rich-text-editor/spell-grammar-check">Spell and Grammar Check</a></li>
23892406
<li><a href="/ej2-angular/rich-text-editor/third-party-integration">Third-Party Integration</a></li>
23902407
<li><a href="/ej2-angular/rich-text-editor/globalization">Globalization</a></li>
2391-
<li><a href="/ej2-angular/rich-text-editor/file-browser">File Browser</a></li>
2392-
<li><a href="/ej2-angular/rich-text-editor/slash-menu">Slash Menu</a></li>
2393-
<li><a href="/ej2-angular/rich-text-editor/exec-command">ExecuteCommand in Rich Text Editor</a></li>
23942408
<li><a href="/ej2-angular/rich-text-editor/keyboard-support">Keyboard shortcuts</a></li>
23952409
<li><a href="/ej2-angular/rich-text-editor/accessibility">Accessibility</a></li>
23962410
<li>How To
23972411
<ul>
23982412
<li><a href="/ej2-angular/rich-text-editor/how-to/richtexteditor-inside-dialog">Integrating Rich Text Editor in Dialog Components</a></li>
23992413
<li><a href="/ej2-angular/rich-text-editor/how-to/richtexteditor-inside-tab">Integrating Rich Text Editor in Tab Components</a></li>
2400-
<li><a href="/ej2-angular/rich-text-editor/how-to/add-google-fonts">Add Google fonts</a></li>
24012414
<li><a href="/ej2-angular/rich-text-editor/how-to/change-default-font-family">Change default font-family</a></li>
24022415
<li><a href="/ej2-angular/rich-text-editor/how-to/check-image-size">Check image size</a></li>
2403-
<li><a href="/ej2-angular/rich-text-editor/how-to/customize-placeholder-style">Customize placeholder style</a></li>
24042416
<li><a href="/ej2-angular/rich-text-editor/how-to/positioning-cursor-at-the-end-of-the-content">Positioning Cursor at Content End in Rich Text Editor</a></li>
24052417
<li><a href="/ej2-angular/rich-text-editor/how-to/capture-ctrls-to-update-the-value">Implementing Ctrl+s Shortcut for Value Updates</a></li>
24062418
<li><a href="/ej2-angular/rich-text-editor/how-to/set-the-cursor-at-the-specific-range">Setting Cursor at Specific Range in Editor</a></li>

ej2-angular/rich-text-editor/editor-mode.md renamed to ej2-angular/rich-text-editor/editor-types/editor-mode.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ The third-party library such as `Marked` or any other library is used to convert
7171
* The Supported Selection Tags are `Bold`, `Italic`, `StrikeThrough`, `InlineCode`, `SubScript`, `SuperScript`, `UpperCase`, `LowerCase`.
7272
* The supported insert commands are `Image`, `Link` and `Table`.
7373

74-
For further details on Markdown editing, refer to the [`Markdown`](../rich-text-editor/markdown)
74+
For further details on Markdown editing, refer to the [`Markdown`](../../markdown-editor/getting-started)
7575

7676
```typescript
7777

ej2-angular/rich-text-editor/resizable-editor.md renamed to ej2-angular/rich-text-editor/editor-types/resizable-editor.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,4 +62,4 @@ For example, add the following to the `app.component.css` file:
6262
## See Also
6363

6464
* [Working with IFrame Editing Mode](./iframe)
65-
* [Using the Markdown Editor](./markdown)
65+
* [Using the Markdown Editor](../../markdown-editor/getting-started)

ej2-angular/rich-text-editor/audio.md renamed to ej2-angular/rich-text-editor/insert-image-media/audio.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ You can insert audio from either the hosted link or the local machine, by clicki
5858

5959
By default, the audio tool opens the audio dialog, allowing you to insert audio from an online source. Inserting the URL will be added to the `src` attribute of the `<source>` tag.
6060

61-
![Angular Rich Text Editor Audio insert](./images/angular-richtexteditor-audio-web.png)
61+
![Angular Rich Text Editor Audio insert](../images/angular-richtexteditor-audio-web.png)
6262

6363
## Uploading Audio from Local Machine
6464

@@ -374,15 +374,15 @@ public void SaveFiles(IList<IFormFile> UploadFiles)
374374

375375
Once an audio file has been inserted, you can change it using the Rich Text Editor [quickToolbarSettings](https://ej2.syncfusion.com/angular/documentation/api/rich-text-editor/quickToolbarSettings/#quicktoolbarsettings) `audioReplace` option. You can replace the audio file using the web URL or the browse option in the audio dialog.
376376

377-
![Angular Rich Text Editor Audio replace](./images/angular-richtexteditor-audio-replace.png)
377+
![Angular Rich Text Editor Audio replace](../images/angular-richtexteditor-audio-replace.png)
378378

379379
## Deleting Audios
380380

381381
To remove audio from the Rich Text Editor content, select the audio and click the `audioRemove` button from the quick toolbar. It will delete the audio from the Rich Text Editor content as well as from the service location if the [insertAudioSettings.removeUrl](https://ej2.syncfusion.com/angular/documentation/api/rich-text-editor/audioSettingsModel/#removeurl) is given.
382382

383383
Once you select the audio from the local machine, the URL for the audio will be generated. You can remove the audio from the service location by clicking the cross icon.
384384

385-
![Angular Rich Text Editor Audio delete](./images/angular-richtexteditor-audio-del.png)
385+
![Angular Rich Text Editor Audio delete](../images/angular-richtexteditor-audio-del.png)
386386

387387
## Configuring Audio Display Position
388388

ej2-angular/rich-text-editor/insert-images.md renamed to ej2-angular/rich-text-editor/insert-image-media/insert-images.md

Lines changed: 90 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,92 @@ Configure [insertImageSettings.removeUrl](https://ej2.syncfusion.com/angular/doc
100100

101101
Set the [insertImageSettings.saveFormat](https://ej2.syncfusion.com/angular/documentation/api/rich-text-editor/imageSettingsModel/#saveformat) property to determine whether the image should be saved as Blob or Base64, aligning with your application's requirements.
102102

103+
```typescript
104+
105+
import { Component } from '@angular/core';
106+
import { ToolbarService, QuickToolbarService, LinkService, HtmlEditorService, ImageService,} from '@syncfusion/ej2-angular-richtexteditor';
107+
import { UploadingEventArgs } from '@syncfusion/ej2-angular-inputs';
108+
109+
@Component({
110+
selector: 'app-root',
111+
template: `<ejs-richtexteditor id='' [toolbarSettings]='toolbarSettings' [insertImageSettings] = 'insertImageSettings' >
112+
</ejs-richtexteditor>`,
113+
providers: [ ToolbarService, QuickToolbarService, LinkService, ImageService, HtmlEditorService ],
114+
})
115+
116+
export class AppComponent {
117+
public toolbarSettings: object = {
118+
items: ['Image'],
119+
};
120+
public insertImageSettings: Object = {
121+
saveUrl: "[SERVICE_HOSTED_PATH]/api/Home/SaveImage",
122+
path: "[SERVICE_HOSTED_PATH]/Uploads/"
123+
};
124+
}
125+
126+
```
127+
128+
```csharp
129+
130+
public class HomeController : Controller
131+
{
132+
private IHostingEnvironment hostingEnv;
133+
134+
public HomeController(IHostingEnvironment env)
135+
{
136+
hostingEnv = env;
137+
}
138+
139+
public IActionResult Index()
140+
{
141+
return View();
142+
}
143+
144+
[AcceptVerbs("Post")]
145+
public void SaveImage(IList<IFormFile> UploadFiles)
146+
{
147+
try
148+
{
149+
foreach (IFormFile file in UploadFiles)
150+
{
151+
if (UploadFiles != null)
152+
{
153+
string filename = ContentDispositionHeaderValue.Parse(file.ContentDisposition).FileName.Trim('"');
154+
filename = hostingEnv.WebRootPath + "\\Uploads" + $@"\{filename}";
155+
156+
// Create a new directory, if it does not exists
157+
if (!Directory.Exists(hostingEnv.WebRootPath + "\\Uploads"))
158+
{
159+
Directory.CreateDirectory(hostingEnv.WebRootPath + "\\Uploads");
160+
}
161+
162+
if (!System.IO.File.Exists(filename))
163+
{
164+
using (FileStream fs = System.IO.File.Create(filename))
165+
{
166+
file.CopyTo(fs);
167+
fs.Flush();
168+
}
169+
Response.StatusCode = 200;
170+
}
171+
}
172+
}
173+
}
174+
catch (Exception)
175+
{
176+
Response.StatusCode = 204;
177+
}
178+
}
179+
180+
[ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
181+
public IActionResult Error()
182+
{
183+
return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
184+
}
185+
}
186+
187+
```
188+
103189
### Image Renaming Feature
104190

105191
You can use the [insertImageSettings](https://ej2.syncfusion.com/angular/documentation/api/rich-text-editor/#insertimagesettings) property, to specify the server handler to upload the selected image. Then by binding the [fileUploadSuccess](https://ej2.syncfusion.com/angular/documentation/api/rich-text-editor/#fileuploadsuccess) event, you can receive the modified file name from the server and update it in the Rich Text Editor's insert image dialog.
@@ -165,7 +251,7 @@ To remove an image from the Rich Text Editor content, select the image and click
165251

166252
Once you select the image from the local machine, the URL for the image will be generate. From there, you can remove the image from the service location by clicking the cross icon.
167253

168-
![Rich Text Editor Image delete](images/image-del.png)
254+
![Rich Text Editor Image delete](../images/image-del.png)
169255

170256
The following sample explains, how to configure `removeUrl` to remove a saved image from the remote service location, when the following image remove actions are performed:
171257

@@ -192,7 +278,7 @@ Sets the default width and height of the image when it is inserted in the Rich T
192278

193279
Through the quick toolbar, change the width and height using `Change Size` option. Once you click, the Image Size dialog box will open as follows. In that you can specify the width and height of the image in pixel.
194280

195-
![Rich Text Editor Image dimension](images/image-size.png)
281+
![Rich Text Editor Image dimension](../images/image-size.png)
196282

197283
## Adding Captions and Alt Text to Images
198284

@@ -224,13 +310,13 @@ Sets the default display for an image when it is inserted in the Rich Text Edito
224310

225311
The hyperlink itself can be an image in Rich Text Editor. If the image given as hyperlink, remove, edit and open link will be added to the quick toolbar of image. For further details about link, see the [`link documentation`](./link) documentation.
226312

227-
![Rich Text Editor image with link](images/image-link.png)
313+
![Rich Text Editor image with link](../images/image-link.png)
228314

229315
## Image Resizing Tools
230316

231317
Rich Text Editor has a built-in image inserting support. The resize points will be appearing on each corner of image when focus. So, users can resize the image using mouse points or thumb through the resize points easily. Also, the resize calculation will be done based on aspect ratio.
232318

233-
![Rich Text Editor image resize](images/image-resize.png)
319+
![Rich Text Editor image resize](../images/image-resize.png)
234320

235321
## Configuring Allowed Image Types
236322

0 commit comments

Comments
 (0)