itextsharp add annotation to existing pdf c# : Add a link to a pdf file application Library utility html .net winforms visual studio 1486-part1773

<header>
<hgroup>
<h1>My Weblog</h1>
<h2>A lot of effort went into making this effortless.</h2>
</hgroup>
...
</header>
...
<div class="entry">
<h2>Travel day</h2>
</div>
...
<div class="entry">
<h2>I'm going to Prague!</h2>
</div>
This is the document outline that is created:
My Weblog (h1 of its hgroup)
|
+--Travel day (h2)
|
+--I'm going to Prague! (h2)
You can test your own pages in the HTML5 Outliner to ensure that you’re using the
heading elements properly.
Articles
Continuing with our example page, let’s see what we can do about this markup:
<div class="entry">
<p class="post-date">October 22, 2009</p>
<h2>
<a href="#"
rel="bookmark"
title="link to this post">
Travel day
</a>
</h2>
...
</div>
Again, this is valid HTML5. But HTML5 provides a more specific element for the
common case of marking up an article on a page—the aptly named 
<article>
element:
<article>
<p class="post-date">October 22, 2009</p>
<h2>
<a href="#"
rel="bookmark"
Articles | 47
Download from Library of Wow! eBook <www.wowebook.com>
Add a link to a pdf file - insert, remove PDF links in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Free C# example code is offered for users to edit PDF document hyperlink (url), like inserting and deleting
add links to pdf; clickable links in pdf
Add a link to a pdf file - VB.NET PDF url edit library: insert, remove PDF links in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Help to Insert a Hyperlink to Specified PDF Document Page
add links to pdf in preview; add hyperlinks to pdf online
title="link to this post">
Travel day
</a>
</h2>
...
</article>
Ah, but it’s not quite that simple. There is one more change you should make. I’ll show
it to you first, then explain it:
<article>
<header>
<p class="post-date">October 22, 2009</p>
<h1>
<a href="#"
rel="bookmark"
title="link to this post">
Travel day
</a>
</h1>
</header>
...
</article>
Did you catch that? I changed the 
<h2>
element to an 
<h1>
, and wrapped it inside a
<header>
element. You’ve already seen the 
<header>
element in action. Its purpose is to
wrap all the elements that form the article’s header (in this case, the article’s publication
date and title). But...but...but...shouldn’t you only have one 
<h1>
per document? Won’t
this screw up the document outline? No, but to understand why not, we need to back
up a step.
In HTML 4, the only way to create a document outline was with the 
<h1>
<h6>
elements.
If you only wanted one root node in your outline, you had to limit yourself to one
<h1>
in your markup. But the HTML5 specification defines an algorithm for generating
a document outline that incorporates the new semantic elements in HTML5. The
HTML5 algorithm says that an 
<article>
element creates a new section, that is, a new
node in the document outline. And in HTML5, each section can have its own 
<h1>
element.
This is a drastic change from HTML 4, and here’s why it’s a good thing. Many web
pages are really generated by templates. A bit of content is taken from one source and
inserted into the page up here; a bit of content is taken from another source and inserted
into the page down there. Many tutorials are structured the same way. “Here’s some
HTML markup. Just copy it and paste it into your page.” That’s fine for small bits of
content, but what if the markup you’re pasting is an entire section? In that case, the
tutorial will read something like this: “Here’s some HTML markup. Just copy it, paste
it into a text editor, and fix the heading tags so they match the nesting level of the
corresponding heading tags in the page you’re pasting it into.”
Let me put it another way. HTML 4 has no generic heading element. It has six strictly
numbered heading elements, 
<h1>
<h6>
, which must be nested in exactly that order.
48 | Chapter 3: What Does It All Mean?
Download from Library of Wow! eBook <www.wowebook.com>
C# PDF Library SDK to view, edit, convert, process PDF file for C#
and quick navigation link in PDF bookmark. C#.NET: Edit PDF Metadata. PDF SDK for .NET allows you to read, add, edit, update, and delete PDF file metadata, like
clickable links in pdf from word; pdf hyperlink
VB.NET PDF Password Library: add, remove, edit PDF file password
This VB.NET example shows how to add PDF file password with access permission setting. passwordSetting.IsAssemble = True ' Add password to PDF file.
add page number to pdf hyperlink; pdf link to specific page
That kind of sucks, especially if your page is “assembled” instead of “authored.” And
this is the problem that HTML5 solves with the new sectioning elements and the new
rules for the existing heading elements. If you’re using the new sectioning elements, I
can give you this markup:
<article>
<header>
<h1>A syndicated post</h1>
</header>
<p>Lorem ipsum blah blah...</p>
</article>
and you can copy it and paste it anywhere in your page without modification. The fact
that it contains an 
<h1>
element is not a problem, because the entire thing is contained
within an 
<article>
. The 
<article>
element defines a self-contained node in the docu-
ment outline, the 
<h1>
element provides the title for that outline node, and all the other
sectioning elements on the page will remain at whatever nesting level they were at
before.
Professor Markup Says
As with all things on the Web, reality is a little more complicated than I’m letting on.
The new “explicit” sectioning elements (like 
<h1>
wrapped in 
<article>
) may interact
in unexpected ways with the old “implicit” sectioning elements (
<h1>
<h6>
by them-
selves). Your life will be simpler if you use one or the other, but not both. If you must
use both on the same page, be sure to check the result in the HTML5 Outliner and
verify that your document outline makes sense.
Dates and Times
This is exciting, right? I mean, it’s not “skiing down Mount Everest naked while reciting
the Star Spangled Banner backward” exciting, but it’s pretty exciting as far as semantic
markup goes. Let’s continue with our example page. The next line I want to highlight
is this one:
<div class="entry">
<p class="post-date">October 22, 2009</p>
<h2>Travel day</h2>
</div>
Same old story, right? A common pattern—designating the publication date of an
article—that has no semantic markup to back it up, so authors resort to generic markup
with custom 
class
attributes. Again, this is valid HTML5. You’re not required to change
it. But HTML5 does provide a specific solution for this case—the 
<time>
element:
<time datetime="2009-10-22" pubdate>October 22, 2009</time>
There are three parts to a 
<time>
element:
Dates and Times | 49
Download from Library of Wow! eBook <www.wowebook.com>
C# PDF Password Library: add, remove, edit PDF file password in C#
This example shows how to add PDF file password with access permission setting. passwordSetting.IsAssemble = true; // Add password to PDF file.
add hyperlink to pdf in preview; adding hyperlinks to pdf files
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
Insert Image to PDF. Image: Remove Image from PDF Page. Copy, Paste, Cut Image in Page. Link: Edit URL. Images. Redact Pages. Annotation & Drawing. Add Sticky Note
adding links to pdf in preview; add hyperlink to pdf acrobat
• A machine-readable timestamp
• Human-readable text content
• An optional 
pubdate
flag
In this example, the 
datetime
attribute only specifies a date, not a time. The format is
a four-digit year, two-digit month, and two-digit day, separated by dashes:
<time datetime="2009-10-22" pubdate>October 22, 2009</time>
If you want to include a time too, add the letter 
T
after the date, then the time in 24-
hour format, then a timezone offset:
<time datetime="2009-10-22T13:59:47-04:00" pubdate>
October 22, 2009 1:59pm EDT
</time>
The date/time format is pretty flexible. The HTML5 specification contains a number
of examples of valid date/time strings.
Notice I changed the text content—the stuff between 
<time>
and 
</time>
—to match
the machine-readable timestamp. This is not actually required. The text content can
be anything you like, as long as you provide a machine-readable date/timestamp in the
datetime
attribute. So this is valid HTML5:
<time datetime="2009-10-22">last Thursday</time>
And this is also valid HTML5:
<time datetime="2009-10-22"></time>
The final piece of the puzzle here is the 
pubdate
attribute. It’s a Boolean attribute, so
just add it if you need it, like this:
<time datetime="2009-10-22" pubdate>October 22, 2009</time>
If you dislike “naked” attributes, this is also equivalent:
<time datetime="2009-10-22" pubdate="pubdate">October 22, 2009</time>
What does the 
pubdate
attribute mean? It means one of two things. If the 
<time>
element
is in an 
<article>
element, it means that this timestamp is the publication date of the
article. If the 
<time>
element is not in an 
<article>
element, it means that this timestamp
is the publication date of the entire document.
Here’s the entire article, reformulated to take full advantage of HTML5:
<article>
<header>
<time datetime="2009-10-22" pubdate>
October 22, 2009
</time>
<h1>
<a href="#"
rel="bookmark"
title="link to this post">
Travel day
50 | Chapter 3: What Does It All Mean?
Download from Library of Wow! eBook <www.wowebook.com>
C# PDF insert image Library: insert images into PDF in C#.net, ASP
using RasterEdge.Imaging.Basic; using RasterEdge.XDoc.PDF; Have a try with this sample C#.NET code to add an image to the first page of PDF file.
add a link to a pdf in preview; add hyperlink in pdf
VB.NET PDF insert image library: insert images into PDF in vb.net
using RasterEdge.XDoc.PDF; Have a try with this sample VB.NET code to add an image to the first page of PDF file. ' Open a document.
check links in pdf; adding links to pdf
</a>
</h1>
</header>
<p>Lorem ipsum dolor sit amet...</p>
</article>
Navigation
One of the most important parts of any website is the navigation bar. CNN.com has
“tabs” along the top of each page that link to the different news sections—“Tech,”
“Health,” “Sports,” etc. Google search results pages have a similar strip at the top of
the page enabling you to try your search in different Google services—“Images,”
“Video,” “Maps,” etc. And our example page has a navigation bar in the header that
includes links to different sections of our hypothetical site—“home,” “blog,” “gallery,”
and “about.”
This is how the navigation bar was originally marked up:
<div id="nav">
<ul>
<li><a href="#">home</a></li>
<li><a href="#">blog</a></li>
<li><a href="#">gallery</a></li>
<li><a href="#">about</a></li>
</ul>
</div>
Again, this is valid HTML5. But while it’s marked up as a list of four items, there is
nothing about the list that tells you that it’s part of the site navigation. Visually, you
could guess that by the fact that it’s part of the page header, and by reading the text of
the links. But semantically, there is nothing to distinguish this list of links from any
other.
Who cares about the semantics of site navigation? For one, people with disabilities.
Why is that? Consider this scenario: your motion is limited, and using a mouse is
difficult or impossible. To compensate, you might use a browser add-on that allows
you to jump to (or jump past) major navigation links. Or consider this: your sight is
limited, and you use a dedicated program called a “screenreader” that uses text-to-
speech to speak and summarize web pages. Once you get past the page title, the next
important pieces of information about a page are the major navigation links. If you
want to navigate quickly, you’ll tell your screenreader to jump to the navigation bar
and start reading. If you want to browse quickly, you might tell your screenreader to
jump over the navigation bar and start reading the main content. Either way, being able
to determine navigation links programmatically is important.
So, while there’s nothing wrong with using 
<div id="nav">
to mark up your site navi-
gation, there’s nothing particularly right about it either. It’s suboptimal in ways that
affect real people. HTML5 provides a semantic way to mark up navigation sections—
the 
<nav>
element:
Navigation | 51
Download from Library of Wow! eBook <www.wowebook.com>
How to C#: Basic SDK Concept of XDoc.PDF for .NET
You may add PDF document protection functionality into your C# of PDF document, including editing PDF url links and quick navigation link in bookmark
add hyperlink pdf file; convert excel to pdf with hyperlinks
C# PDF File Merge Library: Merge, append PDF files in C#.net, ASP.
Add necessary references: using RasterEdge.XDoc.PDF; Note: When you get the error "Could not load file or assembly 'RasterEdge.Imaging.Basic' or any other
add url pdf; adding a link to a pdf in preview
<nav>
<ul>
<li><a href="#">home</a></li>
<li><a href="#">blog</a></li>
<li><a href="#">gallery</a></li>
<li><a href="#">about</a></li>
</ul>
</nav>
Ask Professor Markup
Q: Are skip links compatible with the 
<nav>
element? Do I still need skip links in HTML5?
A: Skip links allow readers to skip over navigation sections. They are helpful for disabled
users who use third-party software to read a web page aloud and navigate it without a
mouse. Learn how and why to provide skip links at http://www.webaim.org/techniques/
skipnav.
Once screenreaders are updated to recognize the 
<nav>
element, skip links will become
obsolete, since the screenreader software will be able to automatically offer to skip over
a navigation section marked up with the 
<nav>
element. However, it will be a while
before all the disabled users on the Web upgrade to HTML5-savvy screenreader soft-
ware, so you should continue to provide your own skip links to jump over 
<nav>
sections.
Footers
At long last, we have arrived at the end of our example page. The last thing I want to
talk about is the last thing on the page: the footer. The footer was originally marked
up like this:
<div id="footer">
<p>&#167;</p>
<p>&#169; 2001&#8211;9 <a href="#">Mark Pilgrim</a></p>
</div>
This is valid HTML5. If you like it, you can keep it. But HTML5 provides a more specific
element for this—the 
<footer>
element:
<footer>
<p>&#167;</p>
<p>&#169; 2001&#8211;9 <a href="#">Mark Pilgrim</a></p>
</footer>
What’s appropriate to put in a 
<footer>
element? Probably whatever you’re putting in
<div id="footer">
now. OK, that’s a circular answer. But really, that’s it. The HTML5
specification says: “A footer typically contains information about its section such as
who wrote it, links to related documents, copyright data, and the like.” That’s what’s
in this example page’s footer: a short copyright statement and a link to an about-the-
author page. Looking around at some popular sites, I see lots of footer potential:
52 | Chapter 3: What Does It All Mean?
Download from Library of Wow! eBook <www.wowebook.com>
• CNN has a footer that contains a copyright statement, links to translations, and
links to terms of service, privacy, “about us,” “contact us,” and “help” pages. All
totally appropriate 
<footer>
material.
• Google has a famously sparse home page, but at the bottom of it are links to “Ad-
vertising Programs,” “Business Solutions,” and “About Google”; a copyright state-
ment; and a link to Google’s privacy policy. All of that could be wrapped in a
<footer>
.
• My weblog has a footer with links to my other sites, plus a copyright statement.
Definitely appropriate for a 
<footer>
element. (Note that the links themselves
should not be wrapped in a 
<nav>
element, because they are not site navigation
links; they are just a collection of links to my other projects on other sites.)
Fat footers are all the rage these days. Take a look at the footer on the W3C site. It
contains three columns, labeled “Navigation,” “Contact W3C,” and “W3C Updates.”
The markup looks like this, more or less:
<div id="w3c_footer">
<div class="w3c_footer-nav">
<h3>Navigation</h3>
<ul>
<li><a href="/">Home</a></li>
<li><a href="/standards/">Standards</a></li>
<li><a href="/participate/">Participate</a></li>
<li><a href="/Consortium/membership">Membership</a></li>
<li><a href="/Consortium/">About W3C</a></li>
</ul>
</div>
<div class="w3c_footer-nav">
<h3>Contact W3C</h3>
<ul>
<li><a href="/Consortium/contact">Contact</a></li>
<li><a href="/Help/">Help and FAQ</a></li>
<li><a href="/Consortium/sup">Donate</a></li>
<li><a href="/Consortium/siteindex">Site Map</a></li>
</ul>
</div>
<div class="w3c_footer-nav">
<h3>W3C Updates</h3>
<ul>
<li><a href="http://twitter.com/W3C">Twitter</a></li>
<li><a href="http://identi.ca/w3c">Identi.ca</a></li>
</ul>
</div>
<p class="copyright">Copyright © 2009 W3C</p>
</div>
To convert this to semantic HTML5, I would make the following changes:
• Convert the outer 
<div id="w3c_footer">
to a 
<footer>
element.
• Convert the first two instances of 
<div class="w3c_footer-nav">
to 
<nav>
elements,
and the third instance to a 
<section>
element.
Footers | 53
Download from Library of Wow! eBook <www.wowebook.com>
• Convert the 
<h3>
headers to 
<h1>
, since each will now be inside a sectioning ele-
ment. The 
<nav>
element creates a section in the document outline, just like the
<article>
element (see “Articles” on page 47).
The final markup might look something like this:
<footer>
<nav>
<h1>Navigation</h1>
<ul>
<li><a href="/">Home</a></li>
<li><a href="/standards/">Standards</a></li>
<li><a href="/participate/">Participate</a></li>
<li><a href="/Consortium/membership">Membership</a></li>
<li><a href="/Consortium/">About W3C</a></li>
</ul>
</nav>
<nav>
<h1>Contact W3C</h1>
<ul>
<li><a href="/Consortium/contact">Contact</a></li>
<li><a href="/Help/">Help and FAQ</a></li>
<li><a href="/Consortium/sup">Donate</a></li>
<li><a href="/Consortium/siteindex">Site Map</a></li>
</ul>
</nav>
<section>
<h1>W3C Updates</h1>
<ul>
<li><a href="http://twitter.com/W3C">Twitter</a></li>
<li><a href="http://identi.ca/w3c">Identi.ca</a></li>
</ul>
</section>
<p class="copyright">Copyright © 2009 W3C</p>
</footer>
Further Reading
Example pages used throughout this chapter:
• Original (HTML 4)
• Modified (HTML5)
On character encoding:
• “The Absolute Minimum Every Software Developer Absolutely, Positively Must
Know About Unicode and Character Sets (No Excuses!)”, by Joel Spolsky
• “On the Goodness of Unicode”, “On Character Strings”, and “Characters vs.
Bytes”, by Tim Bray
On enabling new HTML5 in Internet Explorer:
54 | Chapter 3: What Does It All Mean?
Download from Library of Wow! eBook <www.wowebook.com>
• “How to style unknown elements in IE”, by Sjoerd Visscher
• HTML5 shiv, by John Resig
• HTML5 enabling script, by Remy Sharp
On standards modes and doctype sniffing:
• “Activating Browser Modes with Doctype”, by Henri Sivonen. This is the only
article you should read on the subject. There are many other articles, but they are
either out of date, incomplete, or wrong.
HTML5-aware validator:
• Validator.nu (X)HTML5 Validator
Further Reading | 55
Download from Library of Wow! eBook <www.wowebook.com>
Download from Library of Wow! eBook <www.wowebook.com>
Documents you may be interested
Documents you may be interested