Skip to content

Commit

Permalink
Merge pull request #3354 from w3c/update-pdf-techniques
Browse files Browse the repository at this point in the history
Update PDF techniques
  • Loading branch information
alastc committed Aug 30, 2023
2 parents 0b68938 + 156016e commit 3e2df75
Show file tree
Hide file tree
Showing 193 changed files with 2,419 additions and 3,670 deletions.
347 changes: 133 additions & 214 deletions techniques/pdf/PDF1.html

Large diffs are not rendered by default.

347 changes: 79 additions & 268 deletions techniques/pdf/PDF10.html

Large diffs are not rendered by default.

256 changes: 127 additions & 129 deletions techniques/pdf/PDF11.html

Large diffs are not rendered by default.

242 changes: 93 additions & 149 deletions techniques/pdf/PDF12.html
@@ -1,21 +1,32 @@
<!DOCTYPE html><html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml"><head><title>Providing name, role, value information for form fields in PDF documents</title><link rel="stylesheet" type="text/css" href="../../css/sources.css" class="remove"></link></head><body><h1>Providing name, role, value information for form fields in PDF documents</h1><section class="meta"><p class="id">ID: PDF12</p><p class="technology">Technology: pdf</p><p class="type">Type: Technique</p></section><section id="applicability"><h2>When to Use</h2>
<p>Tagged PDF documents with interactive form fields. </p>
</section><section id="description"><h2>Description</h2>
<p>The objective of this technique is to ensure that assistive technologies
<!DOCTYPE html>
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Providing name, role, value information for form fields in PDF documents</title>
<link rel="stylesheet" type="text/css" href="../../css/editors.css" class="remove"></link>
</head>
<body>
<h1>Providing name, role, value information for form fields in <abbr title="Portable Document Format">PDF</abbr> documents</h1>
<section class="meta">
<p class="id">ID: PDF12</p>
<p class="technology">Technology: pdf</p>
<p class="type">Type: Technique</p>
</section>
<section id="applicability">
<h2>When to Use</h2>
<p>Tagged PDF documents with interactive form fields.</p>
</section>
<section id="description">
<h2>Description</h2>
<p>The objective of this technique is to ensure that assistive technologies
can gather information about and interact with form controls in PDF
content. </p>
content.</p>
<p>The types of PDF form controls are: text input field, check box, radio
button, combo box, list box, and button. </p>
button, combo box, list box, and button.</p>
<p>Providing name, role, state, and value information for all form components
enables compatibility with assistive technology, such as screen readers,
screen magnifiers, and speech recognition software used by people with
disabilities. </p>
<p>The PDF specification defines how name, role, and value are set for
form controls in Section 12.7.4 (Field Types) of <a href="http://www.adobe.com/content/dam/Adobe/en/devnet/pdf/pdfs/PDF32000_2008.pdf">PDF
1.7 (ISO 32000-1)</a>, as shown in the following table. The Comments column explains how Adobe Acrobat Pro displays the corresponding information. </p>


<table id="PDF12_spec">
disabilities.</p>
<table>
<tbody>
<tr>
<th scope="col">Interactive Form Dictionary Entries</th>
Expand Down Expand Up @@ -60,13 +71,12 @@
</tbody>
</table>


<p>The following table describes how the role, name, value, and state
<p>The following table describes how the role, name, value, and state
are defined for PDF form controls created using Adobe Acrobat Pro.
Adobe LiveCycle Designer provides the same controls as well as several
additional ones: see Example 2 below. </p>

<table id="PDF12_acrobat">
<table>
<tbody>
<tr>
<th>PDF form element </th>
Expand Down Expand Up @@ -141,147 +151,81 @@
</tr>
</tbody>
</table>


</section><section id="examples"><h2>Examples</h2>
<section class="example">
<h3>Specifying name, role, value and/or state for a form field
using Adobe Acrobat 9 Pro</h3>

<p>This example is shown with Adobe Acrobat Pro. There are other software tools that perform similar functions. See the list of other software tools in <a href="#pdf_notes_acc-sup_files_applications"></a>.</p>
<p>This example uses a check box for illustration; the procedure is the
same for other form controls. In Form Editing mode: </p>
<ol>
<li> Access the context menu for the form field you are creating or
modifying. </li>
<li> Select the Properties... dialog for the form field. </li>
<li> Specify the name by adding a value to the tool tip field. This
will used by the accessibility API as the Name for the control and
should usually be set to match the text used as a visual label for
the control. </li>
<li> Select the Options tab. </li>
<li> Specify the default value and the default state, if appropriate. </li>
</ol>
<p>The image below shows the Check Box Properties dialog, open in the
General tab. (The Name field in the dialog is not needed for accessibility.) </p>
<figure id="figure-general-tab">
<img src="img/nrv1.jpg" />

<figcaption>General tab on the Check Box Properties dialog, showing name and tool tip fields for a check box</figcaption>

</figure>
<p>The image below shows the Check Box Properties dialog, open in the
Options tab. </p>
<figure id="figure-check-box-props">
<img src="img/nrv2.jpg" />

<figcaption>Options tab on the Check Box Properties dialog, showing value and state fields for a check box.</figcaption>

</figure>
<p class="working-example">This example is shown in operation in the <a href="../../working-examples/pdf-form-labels/form.pdf">working example of specifying name, role, value using Acrobat Pro</a>.</p>

</section>
<section class="example">
<h3>Specifying name, value, and state for a form field using
Adobe LiveCycle Designer ES 8.2.1</h3>

<p>This example is shown with Adobe LiveCycle Designer. There are other software tools that perform similar functions. See the list of other software tools in <a href="#pdf_notes_acc-sup_files_applications"></a>.</p>
<p>In Adobe LiveCycle Designer, you use the Object Library to create
form objects and the Object Palette to specify name, role, state or
value for the object. </p>
<p>The following image shows the Object Palette. </p>
<figure id="figure-object-palette">
<img src="img/lc-objlib.jpg" />

<figcaption>LiveCycle Designer Object Library showing the form objects available for form creation.</figcaption>

</figure>
<p>The following three images show the tabs in the Object palette. In
the first the Field tab is open for specifying the type (or role) of
the field. </p>
<figure id="figure-LCD-object-palette">
<img src="img/lc-objpal-t.jpg" />

<figcaption>LiveCycle Designer Object palette, Field tab.</figcaption>

</figure>
<p>The next image shows the Value tab, with options that can be applied
to the field. </p>
<figure id="figure-LCD-value-tab">
<img src="img/lc-objpal-v.jpg" />

<figcaption>LiveCycle Designer Object palette, Value tab options.</figcaption>

</figure>
<p>The third images shows the Binding tab, specifying the name of the
field. </p>
<figure id="figure-binding-tab">
<img src="img/lc-objpal-b.jpg" />

<figcaption>LiveCycle Designer Object palette, Binding tab.</figcaption>

</figure>
<p class="working-example">This example is shown in operation in the <a href="../../working-examples/pdf-form-labels/form-lc.pdf">working example of specifying name, role, value using LiveCycle Designer</a>.</p>

</section>
<section class="example">
<h3>Adding a checkbox in a PDF document using the /Btn field
type</h3>

<p>The following code fragment illustrates code that is typical for a
simple check box field such as shown in Examples 1 and 2. This is typically
accomplished by an authoring tool. </p>
<pre xml:space="preserve">1 0 obj
</section>
<section id="examples">
<h2>Examples</h2>
<section class="example">
<h3>Specifying name, role, value and/or state for a form field using Adobe Acrobat Pro</h3>

<p>This example is shown with Adobe Acrobat Pro. There are other software tools that perform similar functions.</p>
<p>This example uses a check box for illustration; the procedure is the same for other form controls.</p>
<ol>
<li>Open the Prepare Form tool.</li>
<li>Select the form field you are creating or modifying and access the context menu for it.</li>
<li>Select the Properties... option.</li>
<li>Specify the name by adding a value to the Tooltip field. This
will used by the accessibility <abbr title="Application Programming Interface">API</abbr> as the Name for the control. To conform to the Label In Name Criterion, the Tooltip value must contain the text that presented visually.</li>
<li>If you need to specify the default value and state, select the Options tab for these options.</li>
</ol>
<p>The image below shows the Check Box Properties dialog, open in the General tab. (The Name field in the dialog is not needed for accessibility.)</p>
<div>
<img alt="General tab on the Check Box Properties dialog, showing name and tool tip fields for a check box" src="img/name-role-value.png" width="577">
</div>
<p class="working-example">This example is shown in operation in the <a href="../../working-examples/pdf-name-role-value-form-fields/form.pdf">working example of specifying name, role, value using Acrobat Pro</a>.</p>
</section>
<section class="example">
<h3>Adding a checkbox in a PDF document using the <code>/Btn</code> field type</h3>
<p>The following code fragment illustrates code that is typical for a simple check box field such as shown in Examples 1 and 2. This is typically accomplished by an authoring tool.</p>
<pre xml:space="preserve"><code>1 0 obj
&lt;&lt; /FT /Btn % Role
/TU Retiree % Name
/V /Yes % Value
/AS /Yes
/AP &lt;&lt; /N &lt;&lt; /Yes 2 0 R /Off 3 0 R&gt;&gt;
&gt;&gt;
endobj
</pre>

endobj</code></pre>
</section>
</section><section id="tests"><h2>Tests</h2>
<section class="procedure"><h3>Procedure</h3>
<ol>
<li>
<p> For the form control, verify that name, role, and value/state
are specified by one of the following:</p>
<ul>
<li> Use a screen reader to navigate to the form control and check
that it can be activated or that its value can be changed. Verify
that the name (tooltip) and role are announced. </li>
<li> Use a tool capable of showing the form field information to open the PDF document and verify that the form control has the correct name, role, value, and state (if appropriate) information.</li>
<li> Use a tool that exposes the document through the accessibility
API, and verify that the form control has the correct name, role,
value, and state (if appropriate) information. </li>
</ul>
</li>
</ol>
</section>
<section class="results"><h3>Expected Results</h3>
<ul>
<li>#1 is true. </li>
</ul>
</section>
</section><section id="related"><h2>Related Techniques</h2><ul>
</section>
<section id="tests">
<h2>Tests</h2>
<section class="procedure">
<h3>Procedure</h3>
<ol>
<li>
<p>For the form control, verify that name, role, and value/state are specified by one of the following:</p>
<ul>
<li>Use a screen reader to navigate to the form control and check that it can be activated or that its value can be changed. Verify that the name (tooltip) and role are announced.</li>
<li>Use a tool capable of showing the form field information to open the PDF document and verify that the form control has the correct name, role, value, and state (if appropriate) information.</li>
<li>Use a tool that exposes the document through the accessibility <abbr title="Application Programming Interface">API</abbr>, and verify that the form control has the correct name, role, value, and state (if appropriate) information.</li>
</ul>
</li>
</ol>
</section>
<section class="results">
<h3>Expected Results</h3>
<ul>
<li>#1 is true.</li>
</ul>
</section>
</section>
<section id="related">
<h2>Related Techniques</h2>
<ul>
<li><a href="../pdf/PDF23">PDF23</a></li>
<li><a href="../pdf/PDF5">PDF5</a></li>
<li><a href="../pdf/PDF22">PDF22</a></li>
</ul></section><section id="resources"><h2>Resources</h2>

<ul>
<li> Section 12.7.4 (Field Types) of <a href="http://www.adobe.com/content/dam/Adobe/en/devnet/pdf/pdfs/PDF32000_2008.pdf">PDF
1.7 (ISO 32000-1)</a>
</li>
<li>
<a href="http://partners.adobe.com/public/developer/xml/index_arch.html">Adobe
XML Forms Architecture (XFA)</a>
</li>
<li>
<a href="http://www.adobe.com/accessibility/products/acrobat.html">PDF and Accessibility</a>
</li>
</ul>

</section></body></html>
</ul>
</section>
<section id="resources">
<h2>Resources</h2>
<ul>
<li>Section 12.7.4 (Field Types) in <a href="https://opensource.adobe.com/dc-acrobat-sdk-docs/pdfstandards/PDF32000_2008.pdf">PDF 1.7 (ISO 32000-1) (PDF)</a>
</li>
<li>
<a href="https://helpx.adobe.com/acrobat/using/create-verify-pdf-accessibility.html">Create and verify PDF accessibility (Acrobat Pro)</a>
</li>
</ul>
</section>
</body>
</html>

0 comments on commit 3e2df75

Please sign in to comment.