mvc pdf viewer : Converting image pdf to text control software platform web page windows asp.net web browser memman45-part905

D.2. Picture objects
Typeset example D.2: Picture: text in boxes
center
bottom
top left
(bottom)Placesthecontentsatthebottomofthebox.
These place the text in the corresponding position in the box. In a two-letter argument
the order of the letters is immaterial. For example,
[tr]
and
[rt]
will both result in the
text being placed at the top right hand corner of the box. Unlike the normal
\framebox
command, a
\framebox
in a
picture
environment does not add any extra space around
the text.
Corresponding to the
\framebox
there is a
\makebox
command which does not draw
aframe around its contents. The
\makebox
command takes the same arguments as the
\framebox
. Particularly interesting is when you specify a zero sized
\makebox
. A
\makebox(0,0){text}
command will make the reference point the center of
text
.Sim-
ilarly, the other positioning arguments which will adjust the reference point with respect
to the box contents. This can be used for fine-tuning the position of text in a picture.
Source for example D.3
\setlength{\unitlength}{1pc}
\begin{picture}(16,2)
\put(0,0){\framebox(16,2){}}
\thicklines
\put(3.5,1){\makebox(0,0){center}}
% ref at text center
\put(3.5,1){\vector(0,-1){0}}
\put(7,1){\makebox(0,0)[b]{bottom}}
% ref at text bottom
\put(7,1){\vector(0,1){0}}
\put(11,1){\makebox(0,0)[tl]{top left}} % ref at text top left
\put(11,1){\vector(1,-1){0}}
\end{picture}
\setlength{\unitlength}{1pt}
You can draw a dashed box with the
\dashbox
command.
\dashbox{
len
}(
width, height
)[
pos
]{
text
}
413
Converting image pdf to text - control software 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
Converting image pdf to text - control software 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
D. P
ICTURES
Typeset example D.3: Picture: positioning text
center
?
bottom
6
top left
R
Typeset example D.4: Picture: dashed box
top right
The first argument of this command specifies the length of each dash. The following argu-
ments are the same as for the other box commands.
Source for example D.4
\setlength{\unitlength}{4mm}
\begin{picture}(7,4)
\put(0,0){\framebox(7,4){}}
\thicklines
\put(1,1){\dashbox{0.5}(5,2)[tr]{top right}}
\put(1,1){\vector(1,1){0}}
\end{picture}
\setlength{\unitlength}{1pt}
The appearance of the box is best when the width and height of the box are integer
multiples of the dash length. In the example the dash length has been set to
0.5
with the
width and height set as
(5,2)
;thus the width and height are respectively ten and four
times the dash length.
The
\frame
command draws a frame around the contents of the box that exactly fits
the contents.
\frame{
contents
}
It takes a single required argument which is the contents.
414
control software platform:VB.NET PDF Converter Library SDK to convert PDF to other file
This guide give a series of demo code directly for converting MicroSoft Office which users may quickly render and convert TIFF image file to PDF document.
www.rasteredge.com
control software platform:C# PDF Converter Library SDK to convert PDF to other file formats
NET SDK library and components for converting PDF file in convert PDF to various document and image file formats Allow users to convert PDF to Text (TXT) file.
www.rasteredge.com
D.2. Picture objects
Typeset example D.5: Picture: framing
FRAME text
Source for example D.5
\setlength{\unitlength}{1pc}
\begin{picture}(10,3)
\put(0,0){\framebox(10,3){}}
\thicklines
\put(0.5,2){\frame{$\mathcal{FRAME}$ text}}
\put(0.5,2){\vector(1,1){0}}
\end{picture}
\setlength{\unitlength}{1pt}
The
\shortstack
command enables you to stack text vertically. It producesa box with
asingle column of text. Aswith the other boxes, the reference point isat the lower left hand
corner, although no frame is drawn around the stack. The
\shortstack
command is an
ordinary box making command, but it is not often used outside picture mode.
\shortstack[
pos
]{
text
}
Each line of text, except for the last, is ended by a
\\
command. The default is to center
each text line within the column. However, there is an optional positioning argument. A
value ofl for pos will left align the text and a value ofr will right align the text.
Source for example D.6
\setlength{\unitlength}{1mm}
\begin{picture}(75,25)
\put(0,0){\framebox(75,25){}}
\put(3,3){\shortstack{Default \\ short \\ Stack}}
\put(3,3){\vector(1,1){0}}
\put(23,3){\shortstack[l]{Left\\aligned\\short\\Stack}}
\put(23,3){\vector(1,1){0}}
\put(43,3){\shortstack[r]{Right\\aligned\\short\\Stack}}
\put(43,3){\vector(1,1){0}}
415
control software platform:VB.NET Image: Tutorial for Converting Image and Document in VB.NET
VB.NET Project for Converting Image to Byte Array, Convert Word to Image in VB.NET Application. Use VB.NET Code to Convert Image to Stream, PDF to Image
www.rasteredge.com
control software platform:C# PDF Convert to Word SDK: Convert PDF to Word library in C#.net
watermark and save PDF text, image, table, hyperlink and bookmark to Word without losing format. Powerful components for batch converting PDF documents in C#
www.rasteredge.com
D. P
ICTURES
Typeset example D.6: Picture: stacking
Default
short
Stack
Left
aligned
short
Stack
Right
aligned
short
Stack
Extra
spaced
Stack
\put(63,3){\shortstack{Extra \\[4ex] spaced \\[2ex] Stack}}
\put(63,3){\vector(1,1){0}}
\end{picture}
\setlength{\unitlength}{1pt}
The rows in a stack are not evenly spaced. The spacing between two rows can be
changed in one of two ways.
1. Add a strut to a row. A strut is a vertical rule with no width.
2. Use the optional argument to the
\\
command. This optional argument is a length
value.
\\[
len
]
It has the effect of adding additional len vertical space between the two lines that
the
\\
separates.
\newsavebox{
box
}
\savebox{
box
}(
width, height
)[
pos
]{
text
}
\sbox{
box
}{
text
}
\usebox{
box
}
Just as in normal text you can save and reuse boxes. The
\savebox
macro in picture
mode is a variant of the normal text version, but the other three commands are the same
in both picture and paragraph modes, and are described in Chapter 15. In picture mode
you have to specify the size of the storage box when saving it, via the
(
width, height
)
argument to
\savebox
.
A
\savebox
command can be used within a picture to store a picture object. The first
argument of
\savebox
isthe name of the storage bin to be used. The following arguments
are the same as the
\makebox
command. The result is stored, not drawn. When you have
saved something it can be drawn in either the same or other pictures via the
\usebox
command. This command takes one argument, which is the name of the storage bin.
416
control software platform:C# PDF Convert to HTML SDK: Convert PDF to html files in C#.net
source code for quick integration and converting PDF to HTML is a 100% clean .NET document image solution, which that are included in target PDF document file.
www.rasteredge.com
control software platform:C# PDF Convert to Tiff SDK: Convert PDF to tiff images in C#.net
If using x86, the platform target should be x86. C# programming sample for PDF to Tiff image converting. // Load a PDF file. String
www.rasteredge.com
D.2. Picture objects
Typeset example D.7: Picture: saved boxes
SAVED
SAVED
Source for example D.7
\setlength{\unitlength}{1pc}
\begin{picture}(18,5)
\put(0,0){\framebox(18,5){}}
\newsavebox{\Mybox}
\savebox{\Mybox}(6,3)[tr]{$\mathcal{SAVED}$}
\thicklines
\put(1,1){\frame{\usebox{\Mybox}}}
\put(11,1){\frame{\usebox{\Mybox}}}
\put(1,1){\vector(1,1){0}}
\put(11,1){\vector(1,1){0}}
\end{picture}
\setlength{\unitlength}{1pt}
It can take LaTeX a long time to draw something. When a box is saved it actually
contains the typeset contents, which then just get printed out when the box is used. It can
save processing time if something which appears several times is saved and then used as
and where required. On the other hand, a saved box can use up a significant amount of
LaTeX’sinternal storage space. The
\sbox
command with an empty text argument can be
used to delete the contents of a bin. For example,
\sbox{\Mybox}{}
will empty the
\Mybox
box. Note that this does not delete the storage box itself.
D.2.3 Lines
LaTeX can draw straight lines, but the range of slopes for lines is somewhat restricted.
Further, very short lines cannot be drawn.
\line(
i, j
){
distance
}
The pair
(
i, j
)
specifies the slope of the line, and distance is a value that controls the
length of the line. The line starts at its reference point (i.e., the place where it is
\put
). The
slope of the line is suchthat if a point on the line isslid along the line, thenfor every iunits
417
control software platform:C# PDF Convert to Jpeg SDK: Convert PDF to JPEG images in C#.net
RasterEdge PDF to JPEG converting control SDK (XDoc.PDF for .NET) supports converting PDF document to JPEG image file in .NET developing platforms using simple
www.rasteredge.com
control software platform:VB.NET PDF Convert to Word SDK: Convert PDF to Word library in vb.
VB.NET PDF Converting DLLs for PDF-to-Word. This is an example for converting PDF to Word (.docx) file in VB.NET program. ' Load a PDF document.
www.rasteredge.com
D. P
ICTURES
the point moves in the horizontal direction it will also have moved j units in the vertical
direction. Negative values for i or j have the expected meaning. A move of -3 units in i
means a move of 3 units to the left, and similarly a move of -4 units in j means a move of
4units downwards. So, a line sloping up to the right will have positive values for i and j,
while a line sloping up to the left will have a negative value for i and a positive value for
j.
The distance argument specifies the length of the line in the x (horizontal) direction.
One problem with this may have occured to you: what if the line is vertical (i.e., i = 0)?
In thiscase only, distance specifies the vertical length of the line. The distance argument
must be a non-negative value. For horizontal and vertical lines only, the actual length of
the line is distance. Figure D.2, whichis produced from the code below, diagrams the line
specification arguments.
\begin{figure}
\centering
\setlength{\unitlength}{1mm}
\begin{picture}(70,60)
\thicklines
% draw line and ref point
\put(10,20){\line(2,1){40}}
\put(10,20){\vector(1,-1){0}}
\thinlines
% draw axes
\put(0,0){\vector(1,0){60}} \put(63,0){x}
\put(0,0){\vector(0,1){50}} \put(0,53){y}
% draw i and j vectors
\put(20,25){\vector(1,0){20}}
\put(30,22){\makebox(0,0)[t]{$i$}}
\put(40,25){\vector(0,1){10}}
\put(42,30){\makebox(0,0)[l]{$j$}}
% draw distance vector
\put(30,10){\vector(-1,0){20}}
\put(30,10){\vector(1,0){20}}
\put(30,8){\makebox(0,0)[t]{\textit{distance}}}
\end{picture}
\setlength{\unitlength}{1pt}
\caption{Specification of a line or arrow}
\label{flpic:spec}
\end{figure}
Only a fixed number of slopes are available. This is because LaTeX uses a special font
for drawing lines — a line actually consists of little bits of angled rules joined together.
Thus, there is only a limited number of values for i and j. They must both be integers and
in the range −6 ≤ i,j ≤ 6. Also, they must have no common divisor other than 1. In other
words, the ratio between i and j must be in its simplest form. You cannot, for example,
have (3,6); instead it would have to be (1,2). The shortest line that LaTeX can draw is
about ten points (1/7 inch approximately) in overall length. You can, though, draw lines
that are too long to fit on the page.
Figure D.3 shows the lines and arrows slanting upwards and to the right that can be
drawn in LaTeX. The slope (i,j) pair are shown to the right of the first set of lines and
418
D.2. Picture objects
R
-
x
6
y
-
i
6
j
-
distance
Figure D.2: Specification of a line or arrow
arrows, together with the j/i ratio which gives the slope of the line as a decimal number.
D.2.4 Arrows
As shown in Figure D.3 you can also draw a line with an arrowhead on it. These are
specified by the
\vector
command.
\vector(
i, j
){
distance
}
Thisworksexactly like the
\line
commandandthearrowhead isput on the line at the end
away from the reference point. That is, the arrow points away from the reference point. If
the distance argument is too small (zero, for instance) the arrowhead only isdrawn, with
its point at the position where it is
\put
.
LaTeX is even more restrictive in the number of slopes that it can draw with arrows
than it is with lines. The (i,j) slope specification pair must lie in the range −4 ≤ i,j ≤ 4.
Also, as with the
\line
command, they must have no common divisor.
D.2.5 Circles
LaTeX can draw two kinds of circles. One is an open circle where only the perimeter is
drawn, and the other is a solidly filled disk.
\circle{
diameter
}
\circle*{
diameter
}
The reference point for the open circle, drawn by the
\circle
command, and the disk,
which is drawn by the
\circle*
command, is at the center of the circle. The argument to
the commands is the diameter of the circle.
Source for example D.8
\setlength{\unitlength}{1pt}
419
D. P
ICTURES
-
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
:
1
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
*
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
3
>
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
(1, 0) = 0
(6, 1) = 0.167
(5, 1) = 0.2
(4, 1) = 0.25
(3, 1) = 0.333
(5, 2) = 0.4
(2, 1) = 0.5
(5, 3) = 0.6
(3, 2) = 0.667
(4, 3) = 0.75
(5, 4) = 0.8
(6, 5) = 0.833
(1, 1) = 1
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
7



6
(1,2) = 2
(0,1) = ∞
Figure D.3: Sloping lines and arrows
Typeset example D.8: Picture: circles
&
%
$
~
\begin{picture}(200,60)
\put(0,0){\framebox(200,60){}}
\put(30,30){\circle{40}}
\put(30,30){\vector(1,1){0}}
\put(150,50){\circle*{20}}
\end{picture}
\setlength{\unitlength}{1pt}
Just as with the
\line
and
\vector
commands, there isonly a limited range of circles
that canbe drawn. Typically, the maximumdiamter of a
\circle
isabout 40points, while
for a
\circle*
the maximum diameter is less, being about 15 points. LaTeX will choose
the nearest sized circle to the one that you specify. Either consult your local guru to find
420
D.2. Picture objects
Typeset example D.9: Picture: ovals
 
what sized circles you can draw on your system, or try some experiments by drawing a
range of circles to see what happens.
Quarter circles and boxes
In LaTeX an
\oval
is arectangular box with rounded corners.
\oval(
width, height
)[
portion
]
The
\oval
command has one required argument which specifies the width and height
of the box. The normally sharp corners of the box are replaced by quarter circles of the
maximum possible radius (which LaTeX figures out for itself). Unlike the boxes discussed
earlier, the reference point is at the ‘center’ of the oval.
Source for example D.9
\setlength{\unitlength}{1mm}
\begin{picture}(75,20)
\thicklines
\put(0,0){\framebox(75,20){}}
\put(15,10){\oval(15,10)}
% complete oval
\put(15,10){\vector(1,1){0}}
\put(30,10){\oval(5,5)}
% small oval
\put(30,10){\vector(1,1){0}}
\put(45,10){\oval(15,10)[l]} % left half
\put(45,10){\vector(1,1){0}}
\put(60,10){\oval(15,10)[bl]} % bottom left quarter
\put(60,10){\vector(1,1){0}}
\end{picture}
\setlength{\unitlength}{1pt}
The
\oval
command also has one optional argument, portion, which comes after the
required argument. Use of the optional argument enables either half or a quarter of the
complete rounded box to be drawn. The argument is a one or two letter code drawn from
the following.
421
D. P
ICTURES
Typeset example D.10: Picture: text in oval
Text in oval
(left)Drawtheleftoftheoval.
(right)Drawtherightoftheoval.
(top)Drawthetopoftheoval.
(bottom)Drawthebottomoftheoval.
These are similar to the optional positioning argument in the box commands. A one letter
code will draw the designated half of the oval, while a two letter code results in the des-
ignated quarter of the oval being drawn. In all cases the reference point is at the center of
the ‘complete’ oval.
Source for example D.10
\setlength{\unitlength}{1mm}
\begin{picture}(30,10)
\thicklines
\put(15,5){\oval(30,10)}
\put(15,5){\makebox(0,0){Text in oval}}
\end{picture}
\setlength{\unitlength}{1pt}
Unlike the boxes described in §D.2.2 there is no text argument for an
\oval
. If you
want the rounded box to contain text, then you have to place the text inside the box your-
self. The code in example D.10 shows one way of doing this; a zero-sized box is used to
center the text at the center of the oval.
D.3 R
EPETITIONS
The
\multiput
command is aconvenient way to place regularly spaced copies of an object
in a picture.
\multiput(
x, y
)(
dx, dy
){
num
}{
object
}
As you can see, this is similar to the syntax for the
\put
command, except that there are
two more required arguments, namely
(
dx, dy
)
and num.
422
Documents you may be interested
Documents you may be interested