Difference between revisions of "Accessible Graphics"

From Inkscape Wiki
Jump to navigation Jump to search
m
(Added more references and discussion from Hackfest 2015 brainstorm, removed spam link)
Line 1: Line 1:
What makes Inkscape the ideal tool for creating accessible SVG?
How can Inkscape become the ideal tool for creating accessible SVG?


=== background links ===
=== Background Links ===


<!-- dead link, not sure where this was supposed to point
* inkscape [https://sourceforge.net/tracker/index.php?func=detail&aid=993367&group_id=93438&atid=604309 rfe]
* inkscape [https://sourceforge.net/tracker/index.php?func=detail&aid=993367&group_id=93438&atid=604309 rfe]
* a [http://www.peepo.co.uk/pmwiki/pmwiki.php/Main/SVG rant] on SVG and Accessibility given at the latest London SVGUG meeting with plenty of links. some concepts were [[http://interactive-kiosks.blogspot.com/ | helpful kiosk sites]] addressed and alpha proof of concept code developed.
-->
*Links to primary [http://www.learningdifferently.com/develop/svg.html documentation] on creating accessible SVG
* a [http://www.peepo.co.uk/pmwiki/pmwiki.php/Main/SVG rant] (dead link) on SVG and Accessibility given at the latest (year?) London SVGUG meeting with plenty of links. some concepts were addressed and alpha proof of concept code developed.
doing better
* Links to primary [http://www.learningdifferently.com/develop/svg.html documentation] on creating accessible SVG
* SVG and accessibility (somewhat out of date): [http://www.w3.org/TR/SVG-access/ authoring guidance], [http://www.w3.org/TR/SVG11/access.html SVG 1.1 appendix]
* Work of the W3C Accessibility task force: [http://www.w3.org/WAI/PF/svg-a11y-tf/ work statement], [https://www.w3.org/wiki/SVG_Accessibility wiki]
 
=== What Inkscape Does Well ===
 
Some accessibility features of SVG Inkscape inherits by default, such as having text stored as machine-readable text.  Others require extra effort.
 
As of 0.91, Inkscape:
 
* Allows users to set alternative text (<title> and <desc>) for graphics content in the object properties dialog.
* Sets the document-level <title> element if the user has set a title in the metadata
* Supports logical grouping of elements, and allows <title> and <desc> to be set on the group
 
Recently pushed to the dev branch was a fix so that text-to-path stores the original text content in an aria-label attribute, which will go a long way to preserving the accessibility of that content.
 
=== Doing Better ===
 
There is currently a [https://bugs.launchpad.net/inkscape/+bug/170340 bug report regarding adding UI support for the core SVG accessibility features].
 
Two main issues (not yet implemented) are covered by that bug report:
 
* A document-level title should be required, but it is currently hard to set and there is no prompting for it.
* The language of the text (visible or alternative) needs to be easy to specify with the xml:lang attribute.
 
Language issues can get rather complex, and have benefits beyond accessibility, so there [[Language_support | is a separate wiki page for them]].
 
More advanced issues to consider:
 
* Ensuring that text elements are preserved in a logical reading order.  This will be easier once z-index is supported, for now the aria-flowto attribute could be used to define the reading order.  However, there would need to be a user interface for setting the reading order -- the order that elements are added to the graphic may not be the logical reading order.
* Adding WAI-ARIA widget roles for anything that has interactive scripting added to it.


[[Category:Developer Discussion]]
[[Category:Developer Discussion]]
[[Category:Needs Work]]
[[Category:Needs Work]]

Revision as of 14:19, 29 April 2015

How can Inkscape become the ideal tool for creating accessible SVG?

Background Links

  • a rant (dead link) on SVG and Accessibility given at the latest (year?) London SVGUG meeting with plenty of links. some concepts were addressed and alpha proof of concept code developed.
  • Links to primary documentation on creating accessible SVG
  • SVG and accessibility (somewhat out of date): authoring guidance, SVG 1.1 appendix
  • Work of the W3C Accessibility task force: work statement, wiki

What Inkscape Does Well

Some accessibility features of SVG Inkscape inherits by default, such as having text stored as machine-readable text. Others require extra effort.

As of 0.91, Inkscape:

  • Allows users to set alternative text (<title> and <desc>) for graphics content in the object properties dialog.
  • Sets the document-level <title> element if the user has set a title in the metadata
  • Supports logical grouping of elements, and allows <title> and <desc> to be set on the group

Recently pushed to the dev branch was a fix so that text-to-path stores the original text content in an aria-label attribute, which will go a long way to preserving the accessibility of that content.

Doing Better

There is currently a bug report regarding adding UI support for the core SVG accessibility features.

Two main issues (not yet implemented) are covered by that bug report:

  • A document-level title should be required, but it is currently hard to set and there is no prompting for it.
  • The language of the text (visible or alternative) needs to be easy to specify with the xml:lang attribute.

Language issues can get rather complex, and have benefits beyond accessibility, so there is a separate wiki page for them.

More advanced issues to consider:

  • Ensuring that text elements are preserved in a logical reading order. This will be easier once z-index is supported, for now the aria-flowto attribute could be used to define the reading order. However, there would need to be a user interface for setting the reading order -- the order that elements are added to the graphic may not be the logical reading order.
  • Adding WAI-ARIA widget roles for anything that has interactive scripting added to it.