A Novel Approach for Canvas Accessibility Problem in HTML5

A Novel Approach for Canvas Accessibility Problem in HTML5

Canvas is a pixel-based inherently inaccessible element in HTML5.Therefore web users with vision disabilities cannot benefit from Canvas and its desired semantics and functionality. Regarding to the Canvas application in designing interactive graphical user interface, vision-impaired users may miss important information on web sites. This paper utilizes the content-based image retrieval (CBIR) technique as well as code mapping embedded in a Firefox extension to present a novel approach in order to make Canvas interactive user interface accessible. This extension replaces Canvas with an accessible equivalent HTML environment. Unlike previously done works on Canvas accessibility, the proposed approach does not impose any rules on developers and designers during Canvas design.


💡 Research Summary

The paper addresses the long‑standing accessibility gap of the HTML5  element, which renders pixel‑based graphics that are invisible to screen readers and other assistive technologies. Traditional solutions require developers to embed ARIA attributes, provide alternative text, or redesign the interface using accessible HTML, imposing additional workload and often breaking compatibility with existing codebases. To overcome these constraints, the authors propose a fully automated approach that combines content‑based image retrieval (CBIR) with a code‑mapping mechanism implemented as a Firefox extension.

The system operates in three stages. First, when a page loads, the extension intercepts the element and extracts its pixel data via the getImageData API. Second, a CBIR module analyzes the image, extracting visual features such as color histograms, texture descriptors, and shape signatures. Using a pre‑defined template library, the module identifies UI components—buttons, checkboxes, radio buttons, text fields, icons, etc.—present within the canvas. Third, each identified component is matched against a developer‑supplied mapping table that specifies the corresponding accessible HTML markup and ARIA properties. The extension then dynamically generates a DOM subtree composed of standard HTML elements (e.g.,