view pdf in asp net mvc : Convert pdf to txt format control application platform web page azure winforms web browser memman24-part875

10.11. How LaTeX makes captions
The
\@makecaption
macro, where number is a string such as ‘Table 5.3’ and text is the
caption text, performs the typesetting of the caption, and is defined inthe standard classes
(in
classes.dtx
)as the equivalent of:
\newcommand{\@makecaption}[2]{
\vskip\abovecaptionskip
<- 1
\sbox\@tempboxa{#1: #2}
<- 2
\ifdim \wd\@tempboxa >\hsize
#1: #2\par
<- 3
\else
\global \@minipagefalse
\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}
\fi
\vskip\belowcaptionskip}
<- 4
\abovecaptionskip \belowcaptionskip
Vertical space is added before and after a caption (lines marked 1 and 4 in the
code for
\@makecaption
above) and the amount of space is given by the lengths
\abovecaptionskip
and
\belowcaptionskip
. The standard classes set these to 10pt
and 0pt respectively. If you want to change the space before or after a caption, use
\setlength
to change the values. In figures, the caption is usually placed below the
illustration. The actual space between the bottom of the illustration and the baseline
of the first line of the caption is the
\abovecaptionskip
plus the
\parskip
plus the
\baselineskip
.If the illustration is in a
center
environment then additional space will
be added by the
\end{center}
; it is usually better to use the
\centering
command
rather than the
center
environment.
The actual typesetting of a captionis effectively performed by the code in linesmarked
2and 3 in the code for
\@makecaption
;note that these are where the colon that is typeset
after the number isspecified. If you want to make complexchanges to the default caption-
ing style you may have to create your own version of
\@caption
using
\renewcommand
.
On the other hand, many such changes can be achieved by changing the definition of the
the appropriate
\fnum@type
command(s). For example, to make the figure name and
number bold:
\renewcommand{\fnum@figure}{\textbf{\figurename~\thefigure}}
REMEMBER: If you are doing anything involving commands that include the
@
char-
acter, and it’s not in a class or package file, you have to do it within a
\makeatletter
and
\makeatother
pairing (see §E.4). So, if you modify the
\fnum@figure
command
anywhere in your document it has to be done as:
\makeatletter
\renewcommand{\fnum@figure}{......}
\makeatother
As an example, Figure 10.20 wascreated by the following code:
\makeatletter
\renewcommand{\fnum@figure}{\textsc{\figurename~\thefigure}}
\makeatother
\begin{figure}
203
Convert pdf to txt format - control application platform:C# PDF Convert to Text SDK: Convert PDF to txt files in C#.net, ASP.NET MVC, WinForms, WPF application
C# PDF to Text (TXT) Converting Library to Convert PDF to Text
www.rasteredge.com
Convert pdf to txt format - control application platform:VB.NET PDF Convert to Text SDK: Convert PDF to txt files in vb.net, ASP.NET MVC, WinForms, WPF application
VB.NET Guide and Sample Codes to Convert PDF to Text in .NET Project
www.rasteredge.com
10. F
LOATS AND CAPTIONS
ATHOUSAND WORDS...
F
IGURE
10.20: A picture is worth a thousand words
ANOTHER THOUSAND WORDS...
Figure 10.21 — A different kind of figure caption
\centering
A THOUSAND WORDS\ldots
\caption{A picture is worth a thousand words}\label{fig:sc}
\end{figure}
As another example, suppose that you needed to typeset the
\figurename
and its
number in a bold font, replace the colon that normally appears after the number by a long
dash, and typeset the actual title text in a sans-serif font, as is illustrated by the caption for
Figure 10.21. The following code does this.
\makeatletter
\renewcommand{\fnum@figure}[1]{\textbf{\figurename~\thefigure}
--- \sffamily}
\makeatother
\begin{figure}
\centering
ANOTHER THOUSAND WORDS\ldots
\caption{A different kind of figure caption}\label{fig:sf}
\end{figure}
Perhaps a little description of how this works is in order. Doing a little bit of TeX’s macro
processing by hand, the typesetting linesin
\@makecaption
(lines2and3) get instantiated
like:
\fnum@figure{\figurename~\thefigure}: text
Redefining
\fnum@figure
to take one argument and then not using the value of the argu-
ment essentially gobbles up the colon. Using
\textbf{\figurename~\thefigure}
in the definition causes
\figurename
and the number to be typeset in a bold font. After
this comes the long dash. Finally, putting
\sffamily
at the end of the redefinition causes
any following text (i.e., the actual title) to be typeset using the sans-serif font.
If you do modify
\@makecaption
,then spaces in the definition may be important;
also you must use the comment (%) character in the same places as I have done above.
Hopefully, though, the class provides the tools that you need to make most, if not all, of
any likely caption styles.
204
control application platform:C# Create PDF from Text to convert txt files to PDF in C#.net, ASP
Now you can convert text file to PDF document using Sample code for text to PDF converting in C# DocumentConverter.ToDocument(@"C:\input.txt", @"C:\output.pdf
www.rasteredge.com
control application platform:C# PDF Converter Library SDK to convert PDF to other file formats
PDF to .txt file with original PDF layout. C#.NET PDF to Jpeg Conversion. If you want to transform and convert PDF document to Jpeg image file format, this
www.rasteredge.com
10.12. Footnotes in captions
10.12 F
OOTNOTES IN CAPTIONS
If you want to have a caption with a footnote, think long and hard as to whether this
is really essential. It is not normally considered to be good typographic practice, and to
rub the point in LaTeX does not make it necessarily easy to do. However, if you (or your
publisher) insists, read on.
If it is present, the optional argument to
\caption
is put into the ‘List of...’ as ap-
propriate. If the argument is not present, then the text of the required argument is put
into the ‘List of... ’. In the first case, the optional argument is moving, and in the second
case the required argument is moving. The
\footnote
command is fragile and must be
\protect
ed (i.e.,
\protect\footnote{}
)if it isused inamoving argument. If you don’t
want the footnote to appear in the ‘List of. ..’, use a footnoteless optional argument and a
footnoted required argument.
You will probably be surprised if you just do, for example:
\begin{figure}
...
\caption[For LoF]{For figure\footnote{The footnote}}
\end{figure}
because (a) the footnote number may be greater thanyou thought, and (b) the footnote text
has vanished. This latter is because LaTeX won’t typeset footnotes from a float. To get an
actual footnote within the float you have to use a minipage, like:
\begin{figure}
\begin{minipage}{\linewidth}
...
\caption[For LoF]{For figure\footnote{The footnote}}
\end{minipage}
\end{figure}
If you are using the standard classes you may now find that you get two footnotes for the
price of one. Fortunately thiswillnot occur with this class, nor willan unexpectedincrease
of the footnote number.
When using a minipage as above, the footnote text is typeset at the bottom of the mini-
page (i.e., within the float). If you want the footnote text typeset at the bottom of the page,
then you have to use the
\footnotemark
and
\footnotetext
commands like:
\begin{figure}
...
\caption[For LoF]{For figure\footnotemark}
\end{figure}
\footnotetext{The footnote}
Thiswill typeset the argument of the
\footnotetext
command at the bottomof the page
where you called the command. Of course, the figure might have floated to a later page,
and then it’s a matter of some manual fiddling to get everything on the same page, and
possibly to get the footnote marksto match correctly with the footnote text.
At this point, you are on your own.
205
control application platform:How to C#: File Format Support
PDF. Write pdf. DPX. Read 48-bit DPX. PGM. TIFF(TrueType Font File). Read all truetype convert to image. TXT(A text format). Convert ANSI-Encoding text format to
www.rasteredge.com
control application platform:VB.NET PDF - Convert PDF with VB.NET WPF PDF Viewer
Name. Description. 1. To Word. Convert PDF to Word DOCX document. 2. To TIFF. Export PDF to TIFF file format. 3. To TXT. Export and convert PDF to TXT file. 4.
www.rasteredge.com
10. F
LOATS AND CAPTIONS
10.13 T
HE CLASS VERSUS THE CAPTION PACKAGE
(
AND ITS FRIENDS
)
For some, the configurations for captionsprovided by the class, are either a bit too compli-
cated or not complicated enough.
Thecaption package by Alex Sommerfeldt may provide a simpler and much more ex-
tensive configuration interface for captions. The package can be used with the class, but
there are afew caveats:
(a) All of the special configuration macros provided by the class will no longer have any
effect (caption overwrites the core, and thus our interfaces will have no effect),
(b)
\abovecaptionskip
will be reset to 10pt, and
\belowcaptionskip
to zero. (The
class would set both to 0.5
\onelineskip
,so if you need to change these, move the
change until aftercaption has been loaded)
206
control application platform:C# WPF PDF Viewer SDK to convert and export PDF document to other
Name. Description. 1. To Word. Convert PDF to Word DOCX document. 2. To TIFF. Export PDF to TIFF file format. 3. To TXT. Export and convert PDF to TXT file. 4.
www.rasteredge.com
control application platform:VB.NET TIFF: TIFF Text Extractor SDK; Extract Text Content from
extract.txt"). VB.NET TIFF Text Extractor SDK FAQs. Q: I want to extract text information from source TIFF file and output extracted text content to other format
www.rasteredge.com
Eleven
Rows and columns
The class provides extensions to the standard
array
and
tabular
environments. These
are based partly on amerging of thearray [MC98],dcolumn [Car01],delarray [Car94],tabu-
larx[Car99],and booktabs[Fea03]packages.Muchofthematerialinthischapterstrongly
reflects the documentation of these packages.
Additionally, new kinds of tabular environments are also provided.
11.1 G
ENERAL
\[ \begin{array}[
pos
]{
preamble
}
rows
\end{array} \]
\begin{tabular}[
pos
]{
preamble
}
rows
\end{tabular}
\begin{tabular*}{
width
}[
pos
]{
preamble
}
rows
\end{tabular*}
\begin{tabularx}{
width
}[
pos
]{
preamble
}
rows
\end{tabularx}
The
array
and
tabular
environments are traditional and the others are extensions. The
array
is for typesetting math and has to be within a math environment of some kind. The
tabular
series are for typesetting ordinary text.
The optional pos argument can be one of
t
,
c
,or
b
(the default is
c
), and controls
the vertical position of the array or tabular; either the
t
op or the
c
enter, or the
b
ottom
is aligned with the baseline. Each row consists of elements separated by &, and finished
with
\\
. There may be as many rows as desired. The number and style of the columns
is specified by the preamble. The width of each column is wide enough to contain its
longest entry and the overall width of the
array
or
tabular
is sufficient to contain all
the columns. However, the
tabular*
and
tabularx
environments provide more control
over the width through their width argument.
11.2 T
HE PREAMBLE
You use the preamble argument to the array and tabular environmentsto specify the num-
ber of columns and how you want column entries to appear. The preamble consists of a
sequence of options, which are listed in Table 11.1.
Examples of the options include:
 A flush left column with bold font can be specified with
>{\bfseries}l
.
\begin{center}
\begin{tabular}{>{\large}c >{\large\bfseries}l >{\large\itshape}c}
\toprule
A
& B & C \\
100 & 10 & 1 \\ \bottomrule
Chapter lastupdated2013/04/24 (revision 442)
207
control application platform:C# PDF - Extract Text from Scanned PDF Using OCR SDK
NET convert PDF to text, C#.NET convert PDF to images C:\input.pdf"); BasePage page = pdf.GetPage(0 ocrPage.Recognize(); ocrPage.SaveTo(MIMEType.TXT, @"C:\output
www.rasteredge.com
control application platform:C# TIFF: Use C#.NET Code to Extract Text from TIFF File
Moreover, text content, style, and format of original Tiff image can be retained txt"; // Save ocr result as other documet formats, like txt, pdf, and svg.
www.rasteredge.com
11. R
OWS AND COLUMNS
Table 11.1: The array and tabular preamble options.
l
Left adjusted column.
c
Centered adjusted column.
r
Right adjusted column.
p{
width
}
Equivalent to
\parbox[t]{
width
}
.
m{
width
}
Defines acolumn of width width. Every entry willbe cen-
tered in proportion to the rest of the line. It is somewhat
like
\parbox{
width
}
.
b{
width
}
Coincides with
\parbox[b]{
width
}
.
>{
decl
}
Can be used before an
l
,
r
,
c
,
p
,
m
or a
b
option. It inserts
decl directly in front of the entry of the column.
<{
decl
}
Can be used after an
l
,
r
,
c
,
p{..}
,
m{..}
or a
b{..}
option. It inserts decl right after the entry of the column.
|
Inserts a vertical line. The distance between two columns
will be enlarged by the width of the line.
@{
decl
}
Suppressesinter-column space and inserts decl instead.
!{
decl
}
Canbe used anywhere and corresponds with the
|
option.
The difference is that decl is inserted instead of a vertical
line, so this option doesn’t suppress the normally inserted
space between columns in contrast to
@{...}
.
*{
num
}{
opts
}
Equivalent to num copies of opts
D{
ssep
}{
osep
}{
places
}
Column entries aligned on a ‘decimal point’
\end{tabular}
\end{center}
A
B
C
100 10 1
 In columns which have been generated with
p
,
m
or
b
, the default value of
\parindent
is 0pt.
\begin{center}
\begin{tabular}{m{1cm}m{1cm}m{1cm}} \toprule
1 1 1 1 1 1 1 1 1 1 1 1 &
2 2 2 2 2 2 2 2
&
3 3 3 3
\\ \bottomrule
\end{tabular}
\end{center}
11 1 1
11 1 1
11 1 1
22 2 2
22 2 2
33 3 3
The
\parindent
for a particular column can be changed with, for example
208
control application platform:C#: How to Extract Text from Adobe PDF Document Using OCR Library
to load a program with an incorrect format", please check pageZone.SaveTo(MIMEType. TXT, @"C:\output.txt"); Recognize Scanned PDF and Output OCR Result to PDF
www.rasteredge.com
11.2. The preamble
>{\setlength{\parindent}{1cm}}p
\begin{center}
\begin{tabular}{>{\setlength{\parindent}{5mm}}p{2cm} p{2cm}} \toprule
1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 &
1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 \\ \bottomrule
\end{tabular}
\end{center}
12 3 4 5 6
78 9 01 2 3 4
56 7 8 9 0
12 3 4 5 6 78
90 1 2 3 4 56
78 9 0
 The specification
>{$}c<{$}
generates a column in math mode in a
tabular
envi-
ronment. When used in an
array
environment the column is in LR mode (because
the additional $’s cancel the existing $’s).
 Using
c!{\hspace{1cm}}c
you get space between two columns which is enlarged
by one centimeter, while
c@\hspace{1cm}}c
givesyou exactly one centimeterspace
between two columns.
 Elsewhere reasons are given why you should not use vertical lines (e.g., the
|
op-
tion) in tables. Any examplesthat use vertical linesare for illustrative purposes only
where it is advantageous to denote column boundaries, for example to show differ-
ent spacing effects.
11.2.1 D column specifiers
In financial tables dealing with pounds and pence or dollars and cents, column entries
should be aligned on the separator between the numbers. The
D
column specifier is pro-
vided for columns which are to be aligned on a ‘decimal point’. The specifier takes three
arguments.
D{
ssep
}{
osep
}{
places
}
ssep is the single character which is used as the separator in the source
.tex
file. Thus it
will usually be ‘
.
’or ‘
,
’.
osep is the separator inthe output, this may be the same as the first argument, but may be
any math-mode expression, such as
\cdot
.A
D
column always uses math mode for
the digits as well as the separator.
places should be the maximum number of decimal places in the column (but see below
for more on this). If this is negative, any number of decimal places can be used in
the column, and all entries will be centred on (the leading edge of) the separator.
Note that this can cause a column to be too wide; for instance, compare the first two
columns in the example below.
Here are some example specifications which, for convenience, employ the
\newcolumntype
macro described later.
\newcolumntype{d}[1]{D{.}{\cdot}{#1}}
This defines
d
to be a column specifier taking a single argument specifying the number of
decimalplaces, and the
.tex
file should use ‘
.
’as the separator, with
\cdot
(·) being used
in the output.
209
11. R
OWS AND COLUMNS
\newcolumntype{.}{D{.}{.}{-1}}
The result of this is that ‘
.
’specifies a column of entries to be centered on the ‘.’.
\newcolumntype{,}{D{,}{,}{2}}
And the result of this is that ‘
,
’specifies a column of entries with at most two decimal
places after a ‘,’.
The following table is typeset from this code:
\begin{center}
\begin{tabular}{|d{-1}|d{2}|.|,|}
1.2
& 1.2
&1.2
&1,2
\\
1.23 & 1.23 &12.5
&300,2 \\
1121.2& 1121.2&861.20 &674,29 \\
184
& 184
&10
&69
\\
.4
& .4
&
&,4
\\
&
&.4
&
\end{tabular}
\end{center}
1·2
1·2
1.2
1,2
1·23
1·23
12.5
300,2
1121·2
1121·2
861.20
674,29
184
184
10
69
·4
·4
,4
.4
Note that the first column, which had a negative places argument is wider than the
second column, so that the decimal point appears in the middle of the column.
The third places argument may specify both the number of digits to the left and to
the right of the decimal place. The third column in the next table below is set with
D{.}{.}{5.1}
and in the second table,
D{.}{.}{1.1}
,to specify ‘five places to the left
and one to the right’ and ‘one place to the left and one to the right’ respectively. (You may
use ‘,’ or other characters, not necessarily ‘.’ in this argument.) The column of figures is
then positioned such that a number with the specified numbers of digits is centred in the
column.
Be careful if you have table headings inserted, say, with
\multicolumn{1}{c}{...}
to over-ride the
D
column type, as the overall result may not look quite as good as you
might expect. In the next pair of tabulars the first column is set with
D{.}{.}{-1}
to produce a column centered on the ‘.’, and the second column is set with
D{.}{.}{1}
to produce a right aligned column.
210
11.2. The preamble
Typeset example 11.1: Tabular with narrow and wide headings
head
head
head
1
2
3
1.2
1.2
1.2
11212.2
11212.2
11212.2
.4
.4
.4
wideheading
wideheading
wideheading
1
2
3
1.2
1.2
1.2
.4
.4
.4
Source for example 11.1
\begin{center}\small
\begin{tabular}[t]{|D..{-1}|D..{1}|D..{5.1}|}
\multicolumn{1}{|c|}{head} &
\multicolumn{1}{c|}{head} &
\multicolumn{1}{c|}{head}
\\[3pt]
1
& 2
& 3
\\
1.2
& 1.2
& 1.2
\\
11212.2 & 11212.2 & 11212.2 \\
.4
& .4
& .4
\end{tabular}
\hfill
\begin{tabular}[t]{|D..{-1}|D..{1}|D..{1.1}|}
\multicolumn{1}{|c|}{wide heading} &
\multicolumn{1}{c|}{wide heading} &
\multicolumn{1}{c|}{wide heading} \\[3pt]
1
& 2
& 3
\\
1.2
& 1.2
& 1.2
\\
.4
& .4
& .4
\end{tabular}
\end{center}
In both of these tables the first column is set with
D{.}{.}{-1}
to produce a column
centered on the ‘
.
’, and the second column is set with
D{.}{.}{1}
to produce a right
aligned column.
The centered (first) column produces columns that are wider than necessary to fit in
the numbers under a heading as it has to ensure that the decimal point is centered. The
right aligned (second) column does not have this drawback, but under a wide heading a
column of small right aligned figures is somewhat disconcerting.
The notation for the places argument also enables columns that are centred on the
mid-point of the separator, rather than its leading edge; for example
D{+}{\,\pm\,}{3,3}
will give a symmetric layout of up to three digitson either side of a ± sign.
211
11. R
OWS AND COLUMNS
11.2.2 Defining new column specifiers
You can easily type
>{
some declarations
}{c}<{
some more declarations
}
when you have a one-off column in a table, but it gets tedious if you often use columns of
this form. The
\newcolumntype
lets you define a new column option like, say
\newcolumntype{x}{>{
some declarations
}{c}<{
some more declarations
}}
and you can then use the
x
column specifier inthe preamble wherever you want a column
of this kind.
\newcolumntype{
char
}[
nargs
]{
spec
}
The char argument is the character that identifies the option and spec is its specifica-
tion in terms of the regular preamble options. The
\newcolumntype
command is similar
to
\newcommand
—spec itself can take arguments with the optional nargs argument
declaring their number.
For example, it is commonly required to have both math-mode and text columns in the
same alignment. Defining:
\newcolumntype{C}{>{$}c<{$}}
\newcolumntype{L}{>{$}l<{$}}
\newcolumntype{R}{>{$}r<{$}}
Then
C
can be used to get centred text in an
array
,or centred math-mode in a
tabular
.
Similarly
L
and
R
are for left- and right-aligned columns.
The spec in a
\newcolumntype
command may refer to any of the primitive col-
umn specifiers (see table 11.1 on page 208), or to any new letters defined in other
\newcolumntype
commands.
\showcols
Alist of all the currently active
\newcolumntype
definitions is sent to the terminal and
log file if the
\showcols
command is given.
11.2.3 Surprises
 A preamble of the form
{wx*{0}{abc}yz}
is treated as
{wxyz}
 An incorrect positional argument, such as
[Q]
,is treated as
[t]
.
 A preamble such as
{cc*{2}}
with an error in a ∗-form will generate an error mes-
sage that is not particularly helpful.
 Error messages generated when parsing the columnspecification refer to the pream-
ble argument after it has been re-written by the
\newcolumntype
system, not to the
preamble entered by the user.
 Repeated
<
or
>
constructions are allowed.
>{
decs1
}>{
decs2
}
is treated the same
as
>{
decs2
}{
decs1
}
.
The treatment of multiple
<
or
>
declarations may seem strange. Using the obvi-
ousordering of
>{
decs1
}{
decs2
}
has the disadvantage of notallowing the settings
of a
\newcolumntype
defined using these declarations to be overriden.
 The
\extracolsep
command may be used in
@
-expressions as in standard LaTeX,
and also in
!
-expressions.
The use of
\extracolsep
is subject to the following two restrictions. There must
be at most one
\extracolsep
command per
@
,or
!
expression and the command
212
Documents you may be interested
Documents you may be interested