Equidox Webinar Wednesdays – Headings and Reading Order

Equidox Webinar logo

Learn how to quickly set headings and reading order using Equidox PDF Remediation Software in this live demonstration. Learn the shortcuts and quick fixes for these features. Bonus: Best practices on heading structure and how to determine reading order within a document. Hosted as usual by our own Dan Tuleta.

Headings and Reading Order Best Practices

Headings are vital to navigation within a document. Reading order must be checked on any document.  What you see isn’t necessarily what assistive technology perceives.  

Video transcript


Equidox by Onix

Reach everyone

All right. Perfect. Thank you. Tammy, um, welcome everyone, uh to I believe our fourth edition of Equidox webinar wednesdays

Uh, so this one we are going to be talking about heading structure and reading order.

Uh, so some a little bit of best practices for both and the best ways

of setting that up within equidox to do it efficiently and easily.

As always if you have any questions, please feel free to plug them into the chat. If not,

You can always reach out to us

to your

various account manager if you have a relationship with any of them… or you can just reach out to us at our generic


email address

Our video or our website I should say is also at www.equidox.co.

And our phone number we can be reached at is 800-664-9638.

So, please don’t hesitate to reach out

If you have any questions or would like to see a follow-up

Uh seminar maybe a webinar more specific to your specific use case, uh the PDFs that you’re used to working with.

All right. So with that said, let’s jump into Equidox and take a look

at a few sample documents that I’ve collected and put together

So I want to get started with with heading structure…


Heading structure is very important for PDF accessibility

This is something that is critical to give the document structure to allow users to easily navigate

the information contained within the document.

So one way that I like to visualize this is if you just think about like a textbook for example

that might have 20 separate chapters in it. It could be hundreds of pages long…

Well, uh heading structure gives the end-user the ability to

navigate from

chapter to chapter to section to subsection with each one of those chapters

So that they can navigate directly to the area that they are interested in

Otherwise without that heading structure if everything was just left as text…

well that structure would just leave them with… they’d have to listen essentially to uh to every bit of information throughout that textbook until

they finally locate what they were looking for which… could take many many hours. So

heading structure is absolutely critical in PDF accessibility.

So I just have like a very simple little sample document here to kind of go through a couple of examples…

Uh with uh, you know setting up heading structure and Equidox as well as the logic behind it

so and then we’ll actually put it into practice with maybe a document that is a little bit more reflective of what

a PDF that you might be remediating looks like.

So we’re staring here at page one of this PDF and as you can see it’s pretty straightforward.

So this document we have a nice bold heading at the very top.

Right now everything is currently marked as a text zone. You can see in the upper left hand corner…

everything is marked as text because this was a completely untagged document to begin with, so it had no existing tag structure.

So just by default Equidox assumes here that everything is in fact text until we change the property of that zone.


to get started… It’s very important that every PDF document have a heading level one. This is critical. It’s just a requirement.

So when you are setting that heading level one, you can see the drop-down menu for the zone type is currently set to text.

We could hit the drop-down menu for the zone type and change it from text to heading.

That’s one way of going about it. So once you’ve changed that zone type to heading you’ll then have heading properties that will populate below.

And the first item there is the heading level and when you go through the drop-down menu just by default,

the heading level will be set to one and that that can be adjusted up or down…

either typing in the number or using the arrows to move it up and down to the appropriate heading level.

Now there is another way of going about setting your heading structure.

Which I definitely recommend if you are interested in being a little bit faster and more efficient.

That’s using our keyboard shortcuts. So if for example these subsections here underneath our heading level one…

These are going to be set as heading level twos…

And the way that I would go about setting these as heading level twos…

Is I would uh, just tap “2” on my keyboard while I have that zone selected.

so hitting the “2” key on your keyboard will automatically change it from a text zone to a heading and the

corresponding number heading level 2. So if you hit “3” on your keyboard

it will change it to a heading level 3, a “4” will change it to a heading level 4. So on and so forth.

So to do this very quickly…

We’ll just select these extra zones and we’ll just tap “2” and we are able to set our heading structure very quickly.

now we can always check our work by looking at the preview, uh the preview page so in our HTML preview page.

We’re able to clearly see here the difference between the different. Uh

The different fonts that are associated with each heading so we have this much…

very large bold font here indicating that we have a heading level 1 for that zone that we did,

in fact, set as a heading level 1.

And then we have slightly smaller fonts down here for our…

for our heading level 2s and then everything that was left as a text zone you can see is just…

sort of stays, uh static in that

size 12 standard font that you would see in any regular HTML document.

So that’s a very quick way of setting your heading structure.


Using those keyboard shortcuts is really helpful.

so I want to move on to

another example

to talk about

sort of the logic behind setting heading structure.

I always…

I always think about this a little bit differently

In one example that I’ve been… that has been shared with me is a good way of explaining it

is if you imagine like the example of books written by author JRR Tolkien?

So we all know that he is a very prolific author and he’s written many books.

One of the most famous being the Lord of the Rings trilogy.

So if you had a document that was kind of going through the works of JRR Tolkien, uh, you might have…

uh a large sort of running

layout of all of the books that he’s written. All of the chapter titles that he’s written maybe even sub…

subsections within each of those individual chapters.

So I try to visualize it almost as if it’s like a

an outline essentially.

So just starting at the top your document might contain a heading level 1. That looks something like this “Books written by author JRR Tolkien.”

So we would just tap “1” on our keyboard to set that as a heading level 1.

Now the subsection of heading level 1 here is uh going to be the Lord of the Rings trilogy. Probably his most well-known work.

So if we wanted to set theLord of the Rings trilogy as our heading level 2.

Uh, we can do that by just tapping “2.”

Um, so we’re sort of building this hierarchy now where we’re drilling down into the actual works of JRR Tolkien.

Uh, we’re not just leaving something set as heading level 1, uh, and then everything else remains as text.

We’re not going to do that.

We’re actually going to give heading structures that you can drill down into the

different books that make up that trilogy. And then even if you took it a step further into the individual chapters that make up that…

Um that that uh, the trilogy of the Lord of the Rings.

So the first book

in the Lord of the Rings trilogy is of course the Fellowship of the Ring.

So in this case, um, we have this document being that I just put this together.

We’ve got dif… very distinct breaks in the font.

So you might not always be this lucky depending on the document you’re working on or it’s pretty clear that this is in fact

supposed to be set as a heading level 3 because you can clearly see the difference in the font.

So if I were to set this as a heading level 3, I’ll just tap “3” on my keyboard.

And then within the Fellowship of the Ring, there are multiple books that make that up including the Prologue Book One and Book Two.

So we might want to set those as heading level 4s because these three

subheadings would fall underneath this heading level 3: The Fellowship of the Ring.

So if I’ll tap “4” on my keyboard for these individual…

Uh for these individual headings… and if we wanted to take this even a step further

Maybe I would have gone to the lengths of putting the individual chapters that make up each of these books.

And those would of course be heading level 5s.

And then of course there would be many thousands of lines of text if we actually went through

and included all of the text that makes up these books.

There would be thousands of lines of text. Of course that we would just leave simply as text.


in typical situations

you will have data that is going to separate your headings.

But in this case just to keep everything consolidated on one page. I wanted to try to

explain this through the the the use of JRR Tolkien and his books.


We’re doing pretty well. So far. We have our heading level 1.

We have our heading level 2 our first heading level 3 and then a series of heading level 4s that fall underneath it.

Let’s just take a look at the preview to just see how things are shaping up

So we have our large font up here indicating our heading level 1.

Slightly less large font right here indicating 2 and it…

you can see it starts to get a little bit smaller the deeper into the heading levels that you go.

So this is just a reflection of what you’re doing and changing on that PDF page.

So we still have more work to do down here with the other two books that make up the trilogy.

So we will continue on we’ll start here with the Two Towers now.

We remember that the Fellowship of the Ring was a heading level 3.


This is another major book in the trilogy.

So we don’t continue into the heading structure of setting this as a heading level 4.

Uh, this is actually going to go back up just like it was for the Fellowship of the Ring.

It’s going to be set as a heading level 3.

And then within the Two Towers book

There are two other books that make up that part of the trilogy up so we would set these as heading level 4s.

So you can see how we’re kind of going back and forth. We’re not just using heading structure

almost as a reading order…

The thing is I see people make this mistake from time to time where they will…

they will set their heading level 1 and then they will just continue using the next heading level all the way throughout the document.

I’ve even seen people get up to like heading level 20…

You know, throughout a document because they just continue to set the next heading as the next level, which is incorrect.

You never want to go beyond heading level 6.

That is pretty much the maximum that you should that you are allowed to go.

So anything once you get to heading level 6, that is the deepest that you’re allowed to go into the heading structure.

So don’t use heading structure as a reading order. Uh, we’re trying to build an outline or a hierarchy here of headings.

For a for navigation purposes not setting a reading order with it.

okay, so we’ve handled our Two Towers part of the trilogy, and then we’re down here to the Return of the King which is of

course another major piece of that trilogy. So we’re gonna go back to heading level 3 here.

So I’ll tap “3” on my keyboard and then we have different books that make up the Return of the King.

So I will set these as heading level 4s.

And then the final part of the Lord of the Rings is the Frame Story, which

many would probably say is like a separate book all on its own.

So if we wanted to set that as a heading level 3 as well taking a look at the preview.

Everything here is currently set as a heading which is sort of

abnormal looking because

you would typically have text and data and images and lists and that sort of thing that are breaking up your headings.

But that is sort of the logic of applying heading structure if you can visualize if you were trying to break down

the complete works of JRR Tolkien. You would use heading structure to explain that.

Otherwise, if someone wanted to read Book 6 of the Return of the King…

Well, they would have a lot of information that they would have to wade through before they finally got to Book 6 they would want

to navigate straight to the book that they’re looking for, and then even further into the chapter that they’re looking for.

Okay, so I have one other page on here that I just like to sort of visualize as…

This is how I visualize heading structure: almost as if it’s an outline.

So maybe this is helpful for some people to just think about uh when you’re working on heading structure, so.

One heading level 1 for the document and then everything should follow underneath, uh heading level 2s…

Subheadings of heading level 2 should be heading level 3s, subheadings of heading level 3 should be heading level 4s.

So on and so forth…

So this is the way that I personally visualize it.

So I hope that’s helpful if anyone had questions on the logic of setting up heading structure.

And of course, it is very quick to set up heading structure in Equidox as we’ve seen here.

One other thing about heading structure before we jump into reading order,

Is the ability to set up a heading template now, this is reliant on the source document.

As we know not all PDFs are created the same.

Many times they have multiple editors. You might use completely different styles throughout.

But if you do have a nice consistently formatted document…

What you can do is use…

use a template.

So if I were to select this heading level 2 for example, and I check that use as template button.

What Equidox will do is it will look forward in the document and it will apply a heading level 2

setting for that zone, uh for every zone that has these same properties as the data contained in this zone.

So every time it sees the same font style essentially as the

heading level 2 that you set as the template.

Equidox will automatically mark that as a heading level 2 the same thing can be done for heading level 3s, 4s, 5s, and 6s.

So on and so forth…

Uh, but again keep in mind that this is reliant on the source file.

So if someone decided to change the way that they are formatting the document…

if fonts and styles change throughout the document,

you might this might not be as effective. So it can be reliant on your source file.

But under the right set of circumstances, this is extremely helpful.

And it will really help you be consistent throughout the document in your with your heading structure. As long as you have like I said

a quality source document to begin with.

Okay, so I want to also talk about reading order again a very important part of PDF accessibility.

So if we just take a look here at this quick simple document.

Um, so we’ll jump in here and talk about reading order.

Now sort of a continuation of the last document just for consistency’s sake.

Why don’t we set some headings? So I would set this top one here as a heading level 1.

I’ll set these next sections or subsections as heading level 2s.

But then we have a lot of text in between. Now,

this is a pretty standard sort of the way that this document is laid out and formatted.

We have a very simple top to bottom reading order.

So you’ll notice in the upper right hand corner of the zones there… Is this little green flag?

And this is indicating

the number that is on that green flag is indicating the reading order of the document.

If you were to export the file as it sits right now…

Now the default setting for Equidox is just to apply a left-to-right, top-to-bottom reading order for every page.

So this can be adjusted when needed of course, uh because not all PDFs, or not

all documents, are set up in a top-to-bottom left-to-right reading order.

Many times you have strange reading orders that need to be manually adjusted.

Uh, you might have you know

something that is read in a serpentine fashion or something. That is like a

circular graphic in the middle where it has a very unique reading order.

These things can all be adjusted.

But when you’re dealing with a page such as this where you have just standard top down left-to-right reading order.

You’ll see that Equidox automatically assigns a very solid reading order for you that you don’t need to adjust in this instance.


the logic of this is, Equidox is literally scanning pixel by pixel throughout the page.

And every time it touches a new zone that has not yet been put in the reading order,

it will put that next in the sequence. So that’s how it’s searching for zones and how it’s applying that reading order

So this is a very simple page and the default setting of just left-to-right top-to-bottom.

Uh, it does not need to be adjusted. So everything here is perfect.

We have our heading level 1 our heading level 2 and a bunch of data that corresponds with each. It’s a perfect reading order.

Uh, we don’t need to adjust anything further.

Now if we go over here to the next page…

What we have is again a pretty standard layout, but this time we have two columns. So this is a two column document.

Which you can see that uh, you know,

this is going to give us reading order issues. If we were to leave this just as is…

so again Equidox just by default assumes that it’s a left-to-right, top-to-bottom reading order.

So this zone here in the upper left starts with reading zone one, which is good.

But then we jump over here to reading zone two…

And then down here is reading zone three…

Over here is reading zone four…

You can see that this is, uh…

this is not the, not really the appropriate reading order for a layout like this. We need to set this

in a more accurate way so that it will actually read the left column first and then move over to the second column.

So this is a perfect example of when setting the appropriate reading order is very important.

Otherwise, you’re going to be reading all of these paragraphs completely out of order.

And although that this is just lorem ipsum… Just dummy Latin text…

you can see that…

you know, if this were actually important data, reading this completely out of order would be extremely difficult to comprehend.

So to fix this all we have to do is go to the Page Tab…

over here in the upper left hand corner…

and the Page Tab

has a feature in here for reading order. It’s right below the Zone

Detector. So if you want to hit this drop-down menu.

You can see that the default is just that top-down, left-to-right reading order.

But you can also set this as two columns.

In this case, I will… i’ll set this as two columns and I’ll just press the Reorder button.

And from here, you’ll see that I now have reading zone 1, reading zone 2, reading zone 3.

So we’ve gone right down the columns i’m reading this in the exact reading order that I would like to see.

So that is a way of setting your reading order very quickly using the reorder function.

Assuming that you have, you know a page like this where it is a nice two column layout. Um,

and you don’t have any sort of abnormal objects that are getting in the way of the reading order that you would like to,

you know, put at the very end or put at the very beginning… you can still make adjustments to individual zones, uh,

but in this case, we have pretty nice, uh structure here.

So we’re able to just programmatically do it with the Reading Order function pressing the Reorder button. Uh, so very straightforward.

And it’s the same thing for three columns as well. So, uh not to be too redundant here…

But um, this is another situation where we have this left column starts with reading zone 1.

Then we jump over to the middle column for reading zone 2.

And then we go over here for reading zone 3 in the furthest right column.

So everything here is also out of order. Uh, this is not going to be read in a way that makes any sense.

So we will just choose three columns from the drop-down menu instead of the two so we’ll choose a three-column layout.

And just press the Reorder button.

So now we have reading zone 1 on the left column.

Following straight down the left column and then over to the middle and then to the right.

The same thing can be done for four columns as well.

So it just really depends on the layout of the page.

You’ll find sort of the appropriate setting I would say that 90%

of the time that left to right top-to-bottom reading order is going to work pretty well for you.

But there are of course exceptions to that, and so you have this ability

to choose your layout and set the reading order as you see fit.

And then if any adjustments need to be made from there.

You certainly can do that by selecting the individual zone and changing the order in the order field.

Which we’ll get to here and just right about now.

So I’m going to jump into a different document where we can talk about this, maybe

with a little bit…

getting into a little bit more detail.

So I wanted to choose a document like this that has somewhat of an abnormal reading order.

What we have here is

a three-column brochure.

So I see these from time to time and

what you’ll find with these is…

this is intended to be folded up. So the reading order might not actually

make sense from a left-to-right, top-to-bottom, or even a three-column layout, because Equidox is designed to read

the left column first, the middle column second, and then the furthest right column third.

But in this case, the actual cover page is over here on the far right-hand side.

Um, so just keeping consistent. We’ll set some heading structure here. So it makes a little bit easier to look at it.

So I’m going to set this as my heading level 1.

I’ll set these as heading level 2s, and then I will set these subheadings as heading level 3s.

So I’m just quickly tapping my keyboard again to set my headings.

Um, and then let’s take a look at the preview of this page just as it currently

sits. You can see that

everything looks a little bit skewed. We don’t really have what we’re looking for here.

We have some kind of crazy layouts going on, because this right here is reading zone 3. Our heading level 1,

which is actually the cover page is our reading zone 3.

We have everything is a little bit out of order. So

one way we can combat

this is, you don’t want to go through and have to reorder every individual zone through the order field.

You are free to do that if you’d like.

So the order field which indicates the reading order for that specific zone…

You can adjust this if needed individually for the individual zones. You can change every single zone if you would like.

But in this case, we actually have another trick up our sleeve.

So what I’m going to do is I’m going to use a different zone type called “div.”

If I draw a zone and it doesn’t have to cover the entire zone all it has to do is touch

a series of zones.

And if I just draw a zone like that, and it can be very thin and small.

It doesn’t need to cover everything. Like I said if I change that zone type to “div”

When I change it to “div” I now can choose a master number…

So the order number… if I… this

is my cover page over here if I want this to be the first thing that’s read on this page…

Despite the fact that everything is kind of backwards.

I can choose 1 as my master number.

So I’ll choose one for that master number… and then I’ll press “Reorder this div.”

So what Equidox does, is it uses the decimal system

to reorder the zones that that div zone was touching. So now I can indicate that I want this to be read first.

And this zone down here to be read second so on and so forth.

So I will copy that same move for over here on the furthest left column.

So if I just draw another zone that’s very, you know, it doesn’t have to cover everything. It just has to touch.

And if I change that to a “div zone.”

And now I can choose my master number as 2.

And I press “Reorder this div” and you’ll see in the upper right-hand corner. I zoom in a bit.

The zones are now labeled with


“2.003” so on and so forth

It’s going to reorder things using the decimal system without having to individually set the reading order for every single one of these zones.

It’s basically a multi-select, uh for multiple zones and you can reorder them in that top to bottom left to right,

uh, reading order so that can be very helpful when dealing with situations like this. Or, if you

don’t have a logical reading order to them…

So the same thing can be done here as well.

So I will draw another zone right down the middle of this column.

And I just need to make sure it touches that very bottom one.

And I will mark that as a “div” zone again, and I will choose my master number as 3 and I’ll press “Reorder.”

So now my middle column here is actually going to be read last. So I’ve kind of like undone, uh,

what I had before, and I’ve reset it with my furthest right column being read first… over here is being read second… and third…

When I look at my preview, I should see a reading order that pretty much reflects what I have on the PDF page.

What I would expect to read it like.

Um, so that’s uh one good use of the “div” tool.

And um, another thing that you have like the ability to do, uh, is

to use that decimal system. As I said before, so, there are certain instances where it makes sense to…

if you have something that you would like to be read first, for example,

in the document. Let’s say we wanted to include this logo, for example,

that wasn’t actually marked before. If we wanted to include this we can mark it as a graphic.

And give it a description.

Just for in the interest of time. I’ll just mark it logo.

But what we can do is, I can then choose the exact location that I would like this to appear in the reading order,

by using the decimal system. So let’s say I wanted it to be read after my heading level 1.

Which I can do um, or even if I wanted it read before my heading level one…

So I just have to look at what my actual heading level one is currently set at…

It’s marked at point or 1.001. Um, so I could just in…

for example, say I could mark this as a zone “0.1”.

So that it will be of course before

the actual

heading level one that I had before, without having to adjust or move any other zones around. So you don’t have to play

Like musical chairs with your reading order. You can set it

exactly where you would like it to be read in the reading order.

So using the decimal system is a perfectly valid

way of making those

single adjustments to a zone without having to disrupt the reading order that you have for the rest of the page.

Because oftentimes there will be like one little graphic or one little thing that’s floating in the middle of the page…

that disrupts the logical flow of the reading order, but you would like to place it somewhere

specific. So you can do that using the decimal system, whether it be following a zone, coming before a zone whatever it may be.

Okay, so I want to take a look at one other document.


kind of combining the…

combining the two with heading structure

and reading order.

So something like this…


we have

again, kind of an illogical reading order. We have a bunch of text here. We have some headings over here.

We have more information as well.

So as it’s currently set, we have a top-to-bottom, left-to-right reading order.

So our image at the very top…

this is our reading zone 1. If we wanted to artifact that, we could but setting our heading structure.

We’ll mark that as a heading level 1, a heading level 2 for the introduction section heading level 2 there as well.

And um, everything else looks pretty good. I’ll actually mark this as a heading level 2 as well.

Um, so uh, we have this pretty standard three-column layout.

Which is good. Uh, I guess we can work with this.

So we will go to the Page Tab as we did before. I’ll choose “3 columns” for my reading order.

And I will press “Reorder.”


So this will give me


that simple left-to-right,

top-to-bottom in the left column first… and then over into the second column and then moving over into the third column.

But since we have sort of a strange design, we do have to make some adjustments still.

So let’s take a look at our preview and see if we have any issues.


one thing I’m noticing is our heading for our images is out of place. I believe this is it right here actually.


We can fix this again by using that decimal system trick as I as I said before.

And another thing you’ll notice is down at the bottom in the footer

you have like the sort of page information perhaps you want this to come at the very end.

Well, I can see that zone 32 is the last reading zone on the page. So let me just make this zone 33…

and then

over here… I want to make sure that these are going to be read


I should say after this heading level which is currently marked as reading zone 17, which we don’t want.

We don’t want that to be reading zone 17. We want that to be read right before this image, which is reading zone 11.

So I’ll change 17



Because 10.5 of course comes before 11 and it comes after 10. So when I look at the preview what I should see


(I have a font issue here…)

Okay, so I’m going to type in some information because that sideways font is coming up strange…

So here I’m able to actually turn it into text by using the custom zone source…

a topic for another webinar… but, uh

you can see that I’m able to inject that heading right where it needs to go without having to readjust

everything that would have been falling behind it.

So that’s that’s about what I wanted to cover in terms of

heading structure and reading order.

We’re right up against 2:30 now, so I don’t know if… Tammy were there any questions that we can touch on before we adjourn?

Tammy: There is one more question I am attempting to answer in text…

If anyone is interested in the upcoming webinars, we will of course be sending out our regular invitations…

But we now have a page on our website

for webinars, um, and that will have the recordings

and the


upcoming webinars on that page. So if you go to our website at www.equidox.com

You can find all of our upcoming webinar topics and registration links there.


All right, well it is 2:30, so I do appreciate everyone for…

for taking the time to join us today. We do have another one coming up in October.

So please join us for that one as well.

I’m not sure if I know that the topic offhand, but I’m sure it’ll be another uh

exciting edition of Equidox Webinar Wednesdays. As I said before, please feel free to reach out to us at any time

either through our email which is EquidoxSales@onixnet.com.

Or our website www.equidox.co.

Or our number at 800-664-9638.

Thank you everyone and have a great rest of your day!



"*" indicates required fields

Clicking Subscribe will take you to the Thank You Page.
Lead Source*
This field is for validation purposes and should be left unchanged.


Accessibility Culture

Accessibility News

Company News

General Accessibility Resources

Laws and Regulations

PDF Accessibility Resources

Tammy Albee

Tammy Albee | Director of Marketing | Equidox Tammy joined Equidox after four years of experience working at the National Federation of the Blind. She firmly maintains that accessibility is about reaching everyone, regardless of ability, and boosting your market share in the process. "Nobody should be barred from accessing information. It's what drives our modern society."