EnableAccessability problem

2 Answers 99 Views
Accessibility
Shlomi
Top achievements
Rank 1
Shlomi asked on 29 Dec 2021, 03:19 PM

hello, 

i'm using Telerik reporting version 11.2.17.1025

when i'm tring to generate simple PDF/UA using EnableAccessability property in deviceinfo object

and check the output file in adobe acrobat reader properties i see that "Tagged PDF"  is still "No".

other properties on deviceinfo work fine.

this is the simple source code i'm using:

       

Dim reportProcessor As New ReportProcessor()
Dim deviceInfo As New System.Collections.Hashtable()
deviceInfo.Add("EnableAccessiblity", "True")
deviceInfo.Add("DocumentAuthor", "Shlomi Kakon")
 Dim rs As New Telerik.Reporting.InstanceReportSource()
rs.ReportDocument = New BarcodesReport()
Dim result As RenderingResult = reportProcessor.RenderReport("PDF", rs, deviceInfo)
 File.WriteAllBytes(String.Format("C:\Temp\{0}.", Guid.NewGuid.ToString("n")) & result.Extension, result.DocumentBytes)

what can be the problem?

 

thank's

Shlomi

 

 

2 Answers, 1 is accepted

Sort by
0
Accepted
Ivan Hristov
Telerik team
answered on 31 Dec 2021, 09:05 AM

Hi Shlomi,

We've added support for creating accessible PDF documents in our 2019 R2 release (13.1.19.514), so in the version you're using (11.2.17.1025) the PDF rendering extension wasn't supporting such documents yet. In our recent releases we've fixed some minor issues related to the engine configuration, so I would recommend to upgrade to the latest version of our product.

Here's a sample code that will produce tagged (accessible PDF) using our Dashboard example report:

            var rs = new Telerik.Reporting.UriReportSource() { Uri = "c:\\temp\\Dashboard.trdx" };
            var deviceInfo = new System.Collections.Hashtable()
            {
                { "EnableAccessibility", true }
            };

            var result = new Telerik.Reporting.Processing.ReportProcessor()
                                                         .RenderReport("PDF", rs, deviceInfo);
            System.IO.File.WriteAllBytes("c:\\temp\\Dashboard.PDF", result.DocumentBytes);

 

And here's the result of examining the produced PDF with Adobe Acrobat Reader DC and PDF Accessibility Checker tool:

As you can see, the produced PDF is properly tagged and complies with the accessibility requirements. Please upgrade your version of Telerik Reporting, try it on your end and do not hesitate to contact us if you need further assistance.

Regards,
Ivan Hristov
Progress Telerik

Brand new Telerik Reporting course in Virtual Classroom - the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products. Check it out at https://learn.telerik.com/.
Shlomi
Top achievements
Rank 1
commented on 31 Dec 2021, 09:30 AM

thank's alot ivan i will try it with the new version.
yael
Top achievements
Rank 1
commented on 03 Jan 2022, 01:54 PM

thank  ivan. the pdf created as "tagged" and passed accessibility checker but the reader (NVDA) did not read the text in the file and I cant select the text
0
Ivan Hristov
Telerik team
answered on 04 Jan 2022, 11:41 AM

Hello Shlomi,

The behavior with non-selectable text is a known issue that is reproducible only with Adobe Acrobat Reader. As described here, it is observed in Acrobat Reader, but in other PDF viewers (like Foxit PDF Reader and Microsoft Edge's embedded PDF viewer) the text can be selected as expected. Actually in Acrobat Reader text chunks can also can be selected if the cursor is positioned at the beginning of the text block, as shown in the attached video.

Anyway, I checked how the NVDA app reads the data out of the same Dashboard report I used in my previous tests in this thread and seems like it manages to read all the text along with the metadata information. The metadata is automatically added to the report items if they have no explicit AccessibleDescription set. For example, when NVDA starts reading the contents of the first crosstab in the Dashboard report (titled Sales amount in USD (thousands)), you will hear "Crosstab. Contains six rows and four columns". This automatically added metadata gives the users better understanding about the table structure, its contents and the current cell. When iterating through the cells, NVDA reads the type and the "coordinates" of each cell - for example, the first cell is read out as "Corner cell. Column 0, row 0. Sales Person". You can read more about that metadata in the Features section of our Accessibility article.

I shot and attached a video with my test where you can hear how the NVDA starts reading the document right after opening it. If on your this doesn't happen, please check the NVDA settings. The version of NVDA I'm using is rather old: 2017.2, and maybe in a newer version some of the settings have changed. I usually refer to this list for the default NVDA shortcuts.

In the video I also demonstrate how the built-in "read-aloud" function of Acrobat Reader works. I navigate through the text items using the arrow keys and you can hear that in this mode the Acrobat Reader reads the actual the text contents. If you want to make it read also the metadata information, like NVDA does, you have to use the Read This Page Only or Read to End of Document commands from the Read Out Loud menu.

I hope the details above and the attached video will explain how the accessibility features work and how they are interpreted by the assistive applications. If you have further questions, please do not hesitate to ask.

Regards,
Ivan Hristov
Progress Telerik

Brand new Telerik Reporting course in Virtual Classroom - the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products. Check it out at https://learn.telerik.com/.
Tags
Accessibility
Asked by
Shlomi
Top achievements
Rank 1
Answers by
Ivan Hristov
Telerik team
Share this question
or