Skip to content

Commit cf60139

Browse files
987016: DocumentCorrection
1 parent b14a31a commit cf60139

18 files changed

+1167
-445
lines changed

Document-Processing/PDF/PDF-Viewer/asp-net-core/accessibility.md

Lines changed: 66 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -7,23 +7,23 @@ control: PDF Viewer
77
publishingplatform: ASP.NET Core
88
documentation: ug
99
---
10-
# Accessibility in Syncfusion<sup style="font-size:70%">&reg;</sup> PDF Viewer components
10+
# Accessibility in Syncfusion PDF Viewer component
1111

12-
The PDF Viewer component followed the accessibility guidelines and standards, including [ADA](https://www.ada.gov/), [Section 508](https://www.section508.gov/), [WCAG 2.2](https://www.w3.org/TR/WCAG22/) standards, and [WCAG roles](https://www.w3.org/TR/wai-aria/#roles) that are commonly used to evaluate accessibility.
12+
The PDF Viewer component adheres to accessibility guidelines and standards, including [ADA](https://www.ada.gov/), [Section 508](https://www.section508.gov/), and [WCAG 2.2](https://www.w3.org/TR/WCAG22/). It also integrates [WCAG roles](https://www.w3.org/TR/wai-aria/#roles) commonly used for accessibility evaluation.
1313

14-
The accessibility compliance for the PDF Viewer component is outlined below.
14+
Below is an outline of the accessibility compliance for the PDF Viewer component:
1515

1616
| Accessibility Criteria | Compatibility |
17-
| -- | -- |
18-
| [WCAG 2.2 Support]| <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
19-
| [Section 508 Support] | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
20-
| [Screen Reader Support]| <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
21-
| [Right-To-Left Support]| <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
22-
| [Color Contrast] | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
23-
| [Mobile Device Support]| <img src="https://cdn.syncfusion.com/content/images/documentation/partial.png" alt="Intermediate"> |
24-
| [Keyboard Navigation Support]| <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
25-
| [Accessibility Checker Validation] | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
26-
| [Axe-core Accessibility Validation]| <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
17+
| --- | --- |
18+
| WCAG 2.2 Support | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
19+
| Section 508 Support | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
20+
| Screen Reader Support | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
21+
| Right-To-Left Support | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
22+
| Color Contrast | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
23+
| Mobile Device Support | <img src="https://cdn.syncfusion.com/content/images/documentation/partial.png" alt="Intermediate"> |
24+
| Keyboard Navigation Support | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
25+
| Accessibility Checker Validation | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
26+
| Axe-core Accessibility Validation | <img src="https://cdn.syncfusion.com/content/images/documentation/full.png" alt="Yes"> |
2727

2828
<style>
2929
.post .post-content img {
@@ -39,71 +39,70 @@ The accessibility compliance for the PDF Viewer component is outlined below.
3939

4040
## WAI-ARIA attributes
4141

42-
[WAI-ARIA](https://www.w3.org/WAI/ARIA/apg/patterns/alert/) (Accessibility Initiative – Accessible Rich Internet Applications) defines a way to increase the accessibility of web pages, dynamic content, and user interface components developed with Ajax, HTML, JavaScript,and related technologies. ARIA provides additional semantics to describe the role, state, and functionality of web components. The following ARIA attributes are used in the PDF Viewer component:
42+
[WAI-ARIA](https://www.w3.org/WAI/ARIA/apg/patterns/alert/) (Web Accessibility Initiative – Accessible Rich Internet Applications) defines a way to make web content and web applications more accessible. It provides additional semantics to describe the role, state, and functionality of web components. The following ARIA attributes are used in the PDF Viewer component:
4343

4444
| Attributes | Purpose |
4545
| --- | --- |
46-
| `aria-disabled`| Indicates whether the PDF Viewer component is in a disabled state or not.|
47-
| `aria-expanded`| Indicates whether the suggestion list has expanded or not. |
48-
| `aria-readonly` | Indicates the readonly state of the PDF Viewer element. |
49-
| `aria-haspopup` | Indicates whether the PDF Viewer input element has a suggestion list or not. |
50-
| `aria-label` | Indicates the breadcrumb item text. |
51-
| `aria-labelledby` | Provides a label for the PDF Viewer. Typically, the "aria-labelledby" attribute will contain the id of the element used as the PDF Viewer's title. |
52-
| `aria-describedby` | This attribute points to the PDF Viewer element describing the one it's set on. |
46+
| `aria-disabled` | Indicates whether the PDF Viewer component is in a disabled state. |
47+
| `aria-expanded` | Indicates whether the suggestion list has expanded. |
48+
| `aria-readonly` | Indicates the read-only state of the PDF Viewer element. |
49+
| `aria-haspopup` | Indicates whether the PDF Viewer input element has a suggestion list. |
50+
| `aria-label` | Provides a label for the breadcrumb item. |
51+
| `aria-labelledby` | Provides a label for the PDF Viewer, typically pointing to the ID of the element used as the viewer's title. |
52+
| `aria-describedby` | This attribute points to an element describing the PDF Viewer component. |
5353
| `aria-orientation` | Indicates whether the PDF Viewer element is oriented horizontally or vertically. |
54-
| `aria-valuetext` | Returns the current text of the PDF Viewer. |
55-
| `aria-valuemax` | Indicates the Maximum value of the PDF Viewer. |
56-
| `aria-valuemin` | Indicates the Minimum value of the PDF Viewer. |
54+
| `aria-valuetext` | Returns the current text value of the PDF Viewer. |
55+
| `aria-valuemax` | Indicates the maximum value of the PDF Viewer. |
56+
| `aria-valuemin` | Indicates the minimum value of the PDF Viewer. |
5757
| `aria-valuenow` | Indicates the current value of the PDF Viewer. |
58-
| `aria-controls` | Attribute is set to the button and it points to the corresponding content. |
58+
| `aria-controls` | Attribute set on a button, pointing to its corresponding content. |
5959

6060
## Keyboard interaction
6161

62-
The PDF Viewer component followed the [keyboard interaction](https://www.w3.org/WAI/ARIA/apg/patterns/alert/#keyboardinteraction) guideline, making it easy for people who use assistive technologies (AT) and those who completely rely on keyboard navigation. The following keyboard shortcuts are supported by the Message component.
62+
The PDF Viewer component follows the [keyboard interaction](https://www.w3.org/WAI/ARIA/apg/patterns/alert/#keyboardinteraction) guidelines, making it easy for users of assistive technologies (AT) and those who rely solely on keyboard navigation. The following keyboard shortcuts are supported by the PDF Viewer component:
6363

64-
| **Press (Windows)** |**Press (Macintosh)** | **To do this** |
64+
| **Press (Windows)** | **Press (Macintosh)** | **To do this** |
6565
| --- | --- | --- |
66-
|||**Shortcuts for page navigation**|
67-
| <kbd>CONTROL + Left Arrow (or) CONTROL + Up Arrow</kbd> | <kbd>COMMAND + Left Arrow (or) COMMAND + Up Arrow </kbd> |Navigate to the first page |
68-
| <kbd>CONTROL + Right Arrow (or) CONTROL + Down Arrow</kbd> |<kbd>COMMAND + Right Arrow (or) COMMAND + Down Arrow</kbd> |Navigate to the last page |
69-
|<kbd>Left Arrow</kbd> |<kbd> Left Arrow (or) Shift + Space </kbd> |Navigate to the previous page|
66+
| | | **Shortcuts for page navigation** |
67+
| <kbd>CONTROL + Left Arrow (or) CONTROL + Up Arrow</kbd> | <kbd>COMMAND + Left Arrow (or) COMMAND + Up Arrow</kbd> | Navigate to the first page |
68+
| <kbd>CONTROL + Right Arrow (or) CONTROL + Down Arrow</kbd> | <kbd>COMMAND + Right Arrow (or) COMMAND + Down Arrow</kbd> | Navigate to the last page |
69+
| <kbd>Left Arrow</kbd> | <kbd>Left Arrow (or) Shift + Space</kbd> | Navigate to the previous page |
7070
| <kbd>Right Arrow</kbd> | <kbd>Right Arrow (or) Space</kbd> | Navigate to the next page |
71-
| <kbd>CONTROL + G</kbd> | <kbd>COMMAND + G</kbd> | Go To The Page|
72-
|<kbd>Up Arrow</kbd> |<kbd>Up Arrow </kbd> |Scroll up|
73-
| <kbd>Down Arrow</kbd> | <kbd>Down Arrow</kbd> | Scroll down|
74-
|||**Shortcuts for Zooming**|
75-
|<kbd>CONTROL + =</kbd> |<kbd>COMMAND + =</kbd> | Perform zoom-in operation |
71+
| <kbd>CONTROL + G</kbd> | <kbd>COMMAND + G</kbd> | Go to a specific page |
72+
| <kbd>Up Arrow</kbd> | <kbd>Up Arrow</kbd> | Scroll up |
73+
| <kbd>Down Arrow</kbd> | <kbd>Down Arrow</kbd> | Scroll down |
74+
| | | **Shortcuts for zooming** |
75+
| <kbd>CONTROL + =</kbd> | <kbd>COMMAND + =</kbd> | Perform zoom-in operation |
7676
| <kbd>CONTROL + -</kbd> | <kbd>COMMAND + -</kbd> | Perform zoom-out operation |
77-
|<kbd>CONTROL + 0</kbd> |<kbd>COMMAND + 0</kbd> | Retain the zoom level to 1 |
78-
|||**Shortcut for Text Search**|
79-
| <kbd>CONTROL + F</kbd> | <kbd>COMMAND + F</kbd> |Open the search toolbar|
80-
|||**Shortcut for Text Selection**|
81-
|<kbd>CONTROL + C</kbd> |<kbd>CONTROL + C</kbd> | Copy the selected text or annotation or form field |
82-
| <kbd>CONTROL + X</kbd> | <kbd>CONTROL + X</kbd> |Cut the selected text or annotation of the form field|
83-
|<kbd>CONTROL + Y</kbd> |<kbd>CONTROL + Y</kbd> |Paste the selected text or annotation or form field|
84-
|||**Shortcuts for the general operation**|
85-
| <kbd>CONTROL + Z</kbd> | <kbd>CONTROL + Z</kbd> |Undo the action|
86-
|<kbd>CONTROL + Y</kbd> |<kbd>CONTROL + Y</kbd> |Redo the action|
87-
| <kbd>CONTROL + P</kbd> | <kbd>COMMAND + P</kbd> |Print the document|
88-
|<kbd>Delete</kbd> |<kbd>Delete</kbd> |Delete the annotations and form fields|
89-
|<kbd>CONTROL + Shift + A</kbd> |<kbd>COMMAND + Shift + A</kbd> |Toggle Annotation Toolbar|
90-
|<kbd>CONTROL + Alt + 0</kbd> |<kbd>COMMAND + Option + 0</kbd> |Show Command panel|
91-
|<kbd>CONTROL + Alt + 2</kbd> |<kbd>COMMAND + Option + 2</kbd> |Show Bookmarks|
92-
|<kbd>CONTROL + Alt + 1</kbd> |<kbd>COMMAND + Option + 1</kbd> |Show Thumbnails|
93-
|<kbd>CONTROL + S</kbd> |<kbd>COMMAND + S</kbd> |Download|
94-
|<kbd>Shift + H</kbd> |<kbd>Shift + H</kbd> |Enable pan mode|
95-
|<kbd>Shift + V</kbd> |<kbd>Shift + V</kbd> |Enable text selection mode|
96-
97-
The current implementation of our PDF Viewer includes keyboard shortcuts for various functions like scrolling, zooming, text search, printing, and annotation deletion.
98-
99-
To enhance user experience, we're adding additional keyboard shortcuts for actions such as navigating between pages, accessing specific pages, toggling annotation tools, and displaying PDF elements like outlines, annotations, bookmarks, and thumbnails.
100-
101-
To support this, we're introducing a new class called **commandManager**, which handles custom commands triggered by specific key gestures. These custom commands will be defined by users and executed accordingly.
102-
103-
The **commandManager** will have a parameter called Commands, which will hold the collection of custom keyboard commands specified by users. Each custom command will be represented by a KeyboardCommand class, containing the `command name` and associated `keyboard combination`.
104-
105-
Additionally, we're introducing the **keyboardCustomCommands** parameter for the CommandManager, which will utilize the EventCallback to handle keyboard events and trigger appropriate methods when specific key combinations are pressed.
106-
77+
| <kbd>CONTROL + 0</kbd> | <kbd>COMMAND + 0</kbd> | Reset zoom level to 100% |
78+
| | | **Shortcut for text search** |
79+
| <kbd>CONTROL + F</kbd> | <kbd>COMMAND + F</kbd> | Open the search toolbar |
80+
| | | **Shortcut for text selection** |
81+
| <kbd>CONTROL + C</kbd> | <kbd>CONTROL + C</kbd> | Copy selected text, annotation, or form field |
82+
| <kbd>CONTROL + X</kbd> | <kbd>CONTROL + X</kbd> | Cut selected text, annotation, or form field |
83+
| <kbd>CONTROL + V</kbd> | <kbd>COMMAND + V</kbd> | Paste selected text, annotation, or form field |
84+
| | | **Shortcuts for general operations** |
85+
| <kbd>CONTROL + Z</kbd> | <kbd>COMMAND + Z</kbd> | Undo the action |
86+
| <kbd>CONTROL + Y</kbd> | <kbd>COMMAND + Y</kbd> | Redo the action |
87+
| <kbd>CONTROL + P</kbd> | <kbd>COMMAND + P</kbd> | Print the document |
88+
| <kbd>Delete</kbd> | <kbd>Delete</kbd> | Delete selected annotations and form fields |
89+
| <kbd>CONTROL + Shift + A</kbd> | <kbd>COMMAND + Shift + A</kbd> | Toggle Annotation Toolbar |
90+
| <kbd>CONTROL + Alt + 0</kbd> | <kbd>COMMAND + Option + 0</kbd> | Show Command panel |
91+
| <kbd>CONTROL + Alt + 2</kbd> | <kbd>COMMAND + Option + 2</kbd> | Show Bookmarks |
92+
| <kbd>CONTROL + Alt + 1</kbd> | <kbd>COMMAND + Option + 1</kbd> | Show Thumbnails |
93+
| <kbd>CONTROL + S</kbd> | <kbd>COMMAND + S</kbd> | Download the document |
94+
| <kbd>Shift + H</kbd> | <kbd>Shift + H</kbd> | Enable pan mode |
95+
| <kbd>Shift + V</kbd> | <kbd>Shift + V</kbd> | Enable text selection mode |
96+
97+
The current implementation of our PDF Viewer includes keyboard shortcuts for functions such as scrolling, zooming, text search, printing, and annotation deletion.
98+
99+
To enhance user experience, we are adding additional keyboard shortcuts for actions like navigating between pages, accessing specific pages, toggling annotation tools, and displaying PDF elements (outlines, annotations, bookmarks, and thumbnails).
100+
101+
To support these enhancements, we are introducing a new class called **commandManager**. This class handles custom commands triggered by specific key gestures, which are defined by users and executed accordingly.
102+
103+
The **commandManager** includes a parameter called `keyboardCommand` (which replaces `Commands`). This parameter holds a collection of custom keyboard commands specified by users. Each custom command is represented by a `KeyboardCommand` class, containing the `name` of the command and its associated `gesture` (keyboard combination).
104+
105+
Additionally, we are introducing an `EventCallback` to the `keyboardCustomCommands` parameter for the `CommandManager`. This will handle keyboard events and trigger appropriate methods when specific key combinations are pressed.
107106

108107
{% tabs %}
109108
{% highlight cshtml tabtitle="Standalone" %}
@@ -198,7 +197,6 @@ Additionally, we're introducing the **keyboardCustomCommands** parameter for the
198197
{% endhighlight %}
199198
{% endtabs %}
200199

201-
202200
Each `keyboardCommand` object consists of a name property, specifying the `name` of the `custom command`, and a `gesture property`, defining the key gesture associated with the command.
203201

204202
For example, the first command named `customCopy` is associated with the **G** key and requires both the **Shift** and **Alt** modifier keys to be pressed simultaneously.
@@ -216,4 +214,4 @@ This setup allows users to perform custom actions within the PDF viewer by press
216214

217215
The PDF Viewer component's accessibility levels are ensured through an [accessibility-checker](https://www.npmjs.com/package/accessibility-checker) and [axe-core](https://www.npmjs.com/package/axe-core) software tools during automated testing.
218216

219-
N> Follow the steps provided in the [link](https://help.syncfusion.com/document-processing/pdf/pdf-viewer/asp-net-core/getting-started) to create a simple PDF Viewer sample.
217+
N> Follow the steps provided in the [link](https://help.syncfusion.com/document-processing/pdf/pdf-viewer/asp-net-core/getting-started) to create a simple PDF Viewer sample.

Document-Processing/PDF/PDF-Viewer/asp-net-core/download.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ documentation: ug
1010

1111
# Download a PDF document in PDF Viewer component
1212

13-
The PDF Viewer supports downloading the loaded PDF file. You can enable/disable the download using the following code snippet.
13+
The PDF Viewer supports downloading the loaded PDF file. You can enable or disable the download using the following example.
1414

1515
{% tabs %}
1616
{% highlight cshtml tabtitle="Standalone" %}
@@ -36,7 +36,7 @@ The PDF Viewer supports downloading the loaded PDF file. You can enable/disable
3636

3737
![Alt text](../images/download.png)
3838

39-
You can invoke download action using following code snippet.,
39+
You can also programmatically invoke the download action using the `download()` method, as shown below:
4040

4141
{% tabs %}
4242
{% highlight cshtml tabtitle="Standalone" %}
@@ -76,6 +76,10 @@ You can invoke download action using following code snippet.,
7676
{% endhighlight %}
7777
{% endtabs %}
7878

79+
## Get the base64 string while downloading the PDF document
80+
81+
You can use the [downloadEnd](https://help.syncfusion.com/cr/aspnetcore-js2/syncfusion.ej2.pdfviewer.pdfviewer.html#Syncfusion_EJ2_PdfViewer_PdfViewer_DownloadEnd) event of the PDF Viewer to retrieve the downloaded document as a base64 string.
82+
7983
## See also
8084

8185
* [Toolbar items](./toolbar)

0 commit comments

Comments
 (0)