itextsharp pdf to image c# : Create a fillable pdf form online software control cloud windows web page winforms class book3-part1776

Computingwithformulas
1
Our first examplesoncomputer programminginvolveprogramsthat
evaluatemathematicalformulas.Youwilllearnhowtowriteandrun
aPythonprogram,howtoworkwithvariables,howtocomputewith
mathematicalfunctionssuchaseandsinx,andhowtousePythonfor
interactivecalculations.
Weassumethatyouaresomewhatfamiliarwithcomputerssothat
youknowwhatfilesandfoldersare,howyoumovebetweenfolders,how
youchangefileandfoldernames,andhowyouwritetextandsaveitin
afile.Anotherfrequentwordforfolderisdirectory.
Alltheprogramexamplesassociatedwiththischaptercanbedown-
loadedasatarfileorzipfilefromthewebpagehttp://hplgit.github.
com/scipro-primer.Istronglyrecommendyoutovisitthispage,down-
loadandpackoutthefiles.Theexamplesareorganizedinafoldertree
withsrcasroot.Eachsubfolder correspondstoaparticularchapter.
For example,thesubfolder formulascontainstheprogramexamples
associatedwiththisfirstchapter.Therelevantsubfoldernameislisted
atthebeginningofeverychapter.
The folder structure e with example e programs can n also be e directly
accessedin a GitHub repositoryon the web. You canclickonthe
formulasfoldertoseealltheexamplesfromthepresentchapter.Clicking
onafilenameshowsanicelytypesetversionofthefile.Thefilecanbe
downloadedbyfirstclickingRawtogettheplaintextversionofthefile,
andthenright-clickinginthewebpageandchoosingSaveAs....
1
http://tinyurl.com/pwyasaa
1
Create a fillable pdf form online - C# PDF Field Edit Library: insert, delete, update pdf form field in C#.net, ASP.NET, MVC, Ajax, WPF
Online C# Tutorial to Insert, Delete and Update Fields in PDF Document
pdf form save with reader; create a pdf form from excel
Create a fillable pdf form online - VB.NET PDF Field Edit library: insert, delete, update pdf form field in vb.net, ASP.NET, MVC, Ajax, WPF
How to Insert, Delete and Update Fields in PDF Document with VB.NET Demo Code
allow users to save pdf form; can save pdf form data
2
1 Computingwithformulas
1.1Thefirstprogrammingencounter:aformula
Thefirstformulaweshallconsiderconcernstheverticalmotionofaball
thrownupintheair.FromNewton’ssecondlawofmotiononecanset
upamathematicalmodelforthemotionoftheballandfindthatthe
verticalpositionoftheball,calledy,varieswithtimetaccordingtothe
followingformula:
y(t)=v
0
t−
1
2
gt
2
.
(1.1)
Here,v
0
istheinitialvelocityoftheball,gistheaccelerationofgravity,
andtistime.Observethattheyaxisischosensuchthattheballstarts
aty=0whent=0.Theaboveformulaneglectsairresistance,whichis
usuallysmallunlessv
0
islarge,seeExercise1.11.
Togetanoverviewofthetimeittakesfortheballtomoveupwards
andreturntoy=0again,wecanlookforsolutionstotheequation
y=0:
v
0
t−
1
2
gt
2
=t(v
0
1
2
gt) = 0
t= 0 or t = 2v
0
/g .
That is, the ball returns after 2v
0
/gseconds,anditisthereforereasonable
to restrict the interest of (1.1) to t ∈ [0, 2v
0
/g].
1.1.1 Using a program as a calculator
Our first program will evaluate (1.1) for a specific choice ofv
0
,g, andt.
Choosingv
0
=5m/sandg = 9.81m/s
2
makes the ball come back after
t=2v
0
/g ≈1 s.Thismeansthatwearebasicallyinterestedinthetime
interval [0, 1]. Say we want to compute the height of the ball at time
t= 0.6 s. From (1.1) we have
y= 5 · 0.6 −
1
2
·9.81 · 0.6
2
(1.2)
This arithmetic expression can be evaluated and its value can be printed
by a very simple one-line Python program:
print 5*0.6 - 0.5*9.81*0.6**2
The four standard arithmetic operators are written as+,-,*, and
/inPythonandmostothercomputerlanguages.Theexponentiation
employs a double asterisk notation in Python, e.g., 0.62 is written as
0.6**2.
Our task now is to create the program and run it, and this will be
described next.
C# Create PDF Library SDK to convert PDF from other file formats
Create fillable PDF document with fields. Preview PDF documents without other plug-ins. Able to download free trial and use online example source code in C#
create a fillable pdf form online; add attachment to pdf form
VB.NET Create PDF from OpenOffice to convert odt, odp files to PDF
Edit Bookmark. Metadata: Edit, Delete Metadata. Form Process. Create PDF document from OpenOffice Text Document with ODT, ODS, ODP forms into fillable PDF formats
adding images to pdf forms; add form fields to pdf online
1.1 The first programming encounter: a formula
3
1.1.2 About programs and programming
Acomputer program is just a sequence of instructions to the computer,
written in a computer language. Most computer languages look some-
what similar to English, but they are very much simpler. The number
of words and associated instructions is very limited, so to perform a
complicated operation we must combine a large number of different types
of instructions. The program text, containing the sequence of instructions,
is stored in one or more files. The computer can only do exactly what
the program tells the computer to do.
Another perception of the word program is a file that can be run
(“double-clicked”) to perform a task. Sometimes this is a file with textual
instructions (which is the case with Python), and sometimes this file is
atranslation of all the program text to a more efficient and computer-
friendly language that is quite difficult to read for a human. All the
programs in this chapter consist of short text stored in a single file. Other
programs that you have used frequently, for instance Firefox or Internet
Explorer for reading web pages, consist of program text distributed over
alarge number of files, written by a large number of people over many
years. One single file contains the machine-efficient translation of the
whole program, and this is normally the file that you double-click on
when starting the program. In general, the word program means either
this single file or the collection of files with textual instructions.
Programming is obviously about writing programs, but this process is
more than writing the correct instructions in a file. First, we must under-
stand how a problem can be solved by giving a sequence of instructions to
the computer. This is one of the most difficult things with programming.
Second, we must express this sequence of instructions correctly in a com-
puter language and store the corresponding text in a file (the program).
This is normally the easiest part. Third, we must find out how to check
the validity of the results. Usually, the results are not as expected, and
we need to a fourth phase where we systematically track down the errors
and correct them. Mastering these four steps requires a lot of training,
which means making a large number of programs (exercises in this book,
for instance!) and getting the programs to work.
1.1.3 Tools for writing programs
There are three alternative types of tools for writing Python programs:
•a plain text editor
•an integrated development environment (IDE) with a text editor
•an IPython notebook
What you choose depends on how you access Python. Section H.1 contains
information on the various possibilities to install Python on your own
VB.NET Create PDF Library SDK to convert PDF from other file
Create fillable PDF document with fields in Visual Basic .NET Load PDF from stream programmatically in VB.NET. Free trial and use online source code are
convert word to editable pdf form; change font on pdf form
C# Create PDF from OpenOffice to convert odt, odp files to PDF in
Create PDF document from OpenOffice Presentation in both .NET WinForms and ODT, ODS, ODP forms to fillable PDF formats in Online source code for C#.NET class.
adding text fields to pdf; allow saving of pdf form
4
1 Computing with formulas
computer, access a pre-installed Python environment on a computer
system at an institution, or access Python in cloud services through your
web browser.
Based on teaching this and previous books to more than 3000 students,
my recommendations go as follows.
• If you use this book in a course, the instructor has probably made a
choice for how you should access Python - follow that advice.
• IfyouareastudentatauniversitywhereLinuxisthedominating
operating system, install a virtual machine with Ubuntu on your
own laptop and do all your scientific work in Ubuntu. Write Python
programs in an editor like Gedit, Emacs, or Vim, and run programs
in a terminal window (the gnome-terminal is recommended).
• If youare a student a universitywhereWindowsisthe dominat-
ing operating system, and you are a Windows user yourself, install
Anaconda. Write and run Python programs in Spyder.
• IfyouareuncertainhowmuchyouwillprogramwithPythonand
primarily want to get a taste of Python programming first, access
Python in the cloud, e.g., through the Wakari site.
• If you want t Python n on your Mac and you u are e experienced with
compiling and linking software in the Mac OS X environment, install
Anaconda on the Mac. Write and run programs in Spyder, or use a
text editor like TextWrangler, Emacs, or Vim, and run programs in
the Terminal application. If you are not very familiar with building
software on the Mac, and with environment variables likePATH, it
will be easier in the long run to access Python in Ubuntu through a
virtual machine.
1.1.4 Writing and running your first Python program
Iassume that you have made a decision on how to access Python, which
dictates whether you will be writing programs in a text editor or in an
IPython notebook. What you write will be the same - the difference lies
in how you run the program. Sections H.1.7 and H.1.9 briefly describe
how to write programs in a text editor, run them in a terminal window
or in Spyder, and how to operate an IPython notebook. I recommend
taking a look at that material before proceeding.
Open up your chosen text editor and write the following line:
print 5*0.6 - 0.5*9.81*0.6**2
This is a complete Python program for evaluating the formula (1.2). Save
the line to a file with name ball1.py.
The action required to run this program depends on what type of tool
you use for running programs:
VB.NET Create PDF from Word Library to convert docx, doc to PDF in
formatting. Create PDF files from both DOC and DOCX formats. Convert multiple pages Word to fillable and editable PDF documents. Professional
add photo to pdf form; change font size in pdf form field
VB.NET Create PDF from PowerPoint Library to convert pptx, ppt to
Convert multiple pages PowerPoint to fillable and editable PDF documents. Easy to create searchable and scanned PDF files from PowerPoint.
change font in pdf form field; change font size in fillable pdf form
1.1 The first programming encounter: a formula
5
terminalwindow:movetothefolderwhere ball1.pyislocatedand
type python ball1.py
•IPython notebook: click on the “play” button to execute the cell
•Spyder: choose Run from the Run pull-down menu
The output is 1.2342 and appears
•right after the python ball1.py command in a terminal window
•right after the program line (cell) in the IPython notebook
•in the lower right window in Spyder
We remark that there are other ways of running Python programs in the
terminal window, see Appendix H.2.
Suppose you want to evaluate (1.1) for v
0
=1 andt = 0.1. This is
easy: move the cursor to the editor window, edit the program text to
print 1*0.1 - 0.5*9.81*0.1**2
Run the program again in Spyder or re-execute the cell in an IPython
notebook. If you use a plain text editor, always remember to save the
file after editing it, then move back to the terminal window and run the
program as before:
Terminal
Terminal> python ball1.py
0.05095
The result of the calculation has changed, as expected.
Typesetting of operating system commands
We use the promptTerminal> in this book to indicate commands
in a Unix or DOS/PowerShell terminal window. The text following
theTerminal> prompt must be a valid operating system command.
You will likely see a different prompt in the terminal window on
your machine, perhaps something reflecting your username or the
current folder.
1.1.5 Warning about typing program text
Even though a program is just a text, there is one major difference
between a text in a program and a text intended to be read by a human.
When a human reads a text, she or he is able to understand the message
of the text even if the text is not perfectly precise or if there are grammar
errors. If our one-line program was expressed as
VB.NET Create PDF from Excel Library to convert xlsx, xls to PDF
Link: Edit URL. Bookmark: Edit Bookmark. Metadata: Edit, Delete Metadata. Form Process. Create fillable and editable PDF documents from Excel in Visual
change font pdf fillable form; pdf save form data
C# Create PDF from Excel Library to convert xlsx, xls to PDF in C#
Create fillable and editable PDF documents from Excel in both Create searchable and scanned PDF files from Excel. Export PDF from Excel with cell border or no
create a fillable pdf form in word; adding text fields to pdf acrobat
6
1 Computing with formulas
write 5*0.6 - 0.5*9.81*0.6^2
most humans would interpretwrite andprint as the same thing, and
many would also interpret6^2 as 62. In the Python language, however,
writeisagrammarerrorand 6^2meansanoperationverydifferentfrom
the exponentiation6**2. Our communication with a computer through
aprogram must be perfectly precise without a single grammar or logical
error. The famous computer scientist Donald Knuth put it this way:
Programming demands significantly higher standard of accuracy. Things don’t simply
have to make sense to another human being, they must make sense to a computer.
Donald Knuth [12, p. 18], 1938-.
That is, the computer will only do exactly what we tell it to do. Any
error in the program, however small, may affect the program. There is
achance that we will never notice it, but most often an error causes
the program to stop or produce wrong results. The conclusion is that
computers have a much more pedantic attitude to language than what
(most) humans have.
Now you understand why any program text must be carefully typed,
paying attention to the correctness of every character. If you try out
program texts from this book, make sure that you type them in exactly
as you see them in the book. Blanks, for instance, are often important
in Python, so it is a good habit to always count them and type them in
correctly. Anyattempt notto follow this advice will cause you frustrations,
sweat, and maybe even tears.
1.1.6 Verifying the result
We should always carefullycontrol that the output of a computer program
is correct. You will experience that in most of the cases, at least until
you are an experienced programmer, the output is wrong, and you have
to search for errors. In the present application we can simply use a
calculator to control the program. Setting t = 0.6 andv
0
=5 in the
formula, the calculator confirms that 1.2342 is the correct solution to
our mathematical problem.
1.1.7 Using variables
When we want to evaluatey(t) for many values oft, we must modify the
tvalueattwoplacesinourprogram.Changinganotherparameter,like
v
0
,is in principle straightforward, but in practice it is easy to modify
the wrong number. Such modifications would be simpler to perform if
we express our formula in terms of variables, i.e., symbols, rather than
numerical values. Most programming languages, Python included, have
variables similar to the concept of variables in mathematics. This means
C# Create PDF from PowerPoint Library to convert pptx, ppt to PDF
Convert multiple pages PowerPoint to fillable and editable Easy to create searchable and scanned PDF files Export PowerPoint hyperlink to PDF in .NET console
android edit pdf forms; create pdf forms
1.1 The first programming encounter: a formula
7
that we can definev0,g,t, andy as variables in the program, initialize
the former three with numerical values, and combine these three variables
to the desired right-hand side expression in (1.1), and assign the result
to the variable y.
The alternative version of our program, where we use variables, may
be written as this text:
v0 = 5
g = 9.81
t = 0.6
y = v0*t - 0.5*g*t**2
print y
Variables in Python are defined by setting a name (herev0,g,t, ory)
equal to a numerical value or an expression involving already defined
variables.
Note that this second program is much easier to read because it is closer
to the mathematical notation used in the formula (1.1). The program is
also safer to modify, because we clearly see what each number is when
there is a name associated with it. In particular, we can changet at
one place only (the linet = 0.6) and not two as was required in the
previous program.
We store the program text in a fileball2.py. Running the program
results in the correct output 1.2342.
1.1.8 Names of variables
Introducing variables with descriptive names, close to those in the math-
ematical problem we are going to solve, is considered important for the
readability and reliability (correctness) of the program. Variable names
can contain any lower or upper case letter, the numbers from 0 to 9,
and underscore, but the first character cannot be a number. Python
distinguishes between upper and lower case, soX is always different from
x.Hereareafewexamplesonalternativevariablenamesinthepresent
example:
initial_velocity = 5
acceleration_of_gravity = 9.81
TIME = 0.6
VerticalPositionOfBall = initial_velocity*TIME - \
0.5*acceleration_of_gravity*TIME**2
print VerticalPositionOfBall
With such long variables names, the code for evaluating the formula
becomes so long that we have decided to break it into two lines. This is
done by a backslash at the very end of the line (make sure there are no
blanks after the backslash!).
In this book we shall adopt the convention that variable names have
lower case letters where words are separated by an underscore. Whenever
8
1 Computing with formulas
the variable represents a mathematical symbol, we use the symbol or a
good approximation to it as variable name. For example,y in mathematics
becomesy in the program, andv
0
in mathematics becomesv_0 in the
program. A close resemblance between mathematical symbols in the
description of the problem and variables names is important for easy
reading of the code and for detecting errors. This principle is illustrated
by the code snippet above: even if the long variable names explain well
what they represent, checking the correctness of the formula for y is
harder than in the program that employs the variablesv0,g,t, andy0.
For all variables where there is no associated precise mathematical
description and symbol, one must use descriptive variable names which
explain the purpose of the variable. For example, if a problem description
introduces the symbolD for a force due to air resistance, one applies a
variableD also in the program. However, if the problem description does
not define any symbol for this force, one must apply a descriptive name,
such as air_resistance, resistance_force, or drag_force.
How to choose variable names
• Usethesamevariablenamesintheprogramasinthemathe-
matical description of the problem you want to solve.
• Forallvariableswithoutaprecisemathematicaldefinitionand
symbol, use a carefully chosen descriptive name.
1.1.9 Reserved words in Python
Certain words are reserved in Python because they are used to build up
the Python language. These reserved words cannot be used as variable
names:and,as,assert,break,class,continue,def,del,elif,else,
except, False, finally, for, from, global, if, import, in, is, lambda,
None, nonlocal, not, or, pass, raise, return, True, try, with, while,
andyield. If you wish to use a reserved word as a variable name, it
is common to an underscore at the end. For example, if you need a
mathematical quantityλ in the program, you may work withlambda_
as variable name. See Exercise 1.16 for examples on legal and illegal
variable names.
Program files can have a freely chosen name, but stay away from names
that coincide with keywords or module names in Python. For instance,
do not use math.py,time.pyrandom.pyos.pysys.py,while.py,
for.py, if.py, class.py, or def.py.
1.1 The first programming encounter: a formula
9
1.1.10 Comments
Along with the program statements it is often informative to provide
some comments in a natural human language to explain the idea behind
the statements. Comments in Python start with the# character, and
everything after this character on a line is ignored when the program is
run. Here is an example of our program with explanatory comments:
# Program for computing the height of a ball in vertical motion.
v0 = 5
# initial velocity
g = 9.81 # acceleration of gravity
t = 0.6
# time
y = v0*t - 0.5*g*t**2 # vertical position
print y
This program and the initial version in Section 1.1.7 are identical when
run on the computer, but for a human the latter is easier to understand
because of the comments.
Good comments together with well-chosen variable names are necessary
for any program longer than a few lines, because otherwise the program
becomes difficult to understand, both for the programmer and others. It
requires some practice to write really instructive comments. Never repeat
with words what the program statements already clearly express. Use
instead comments to provide important information that is not obvious
from the code, for example, what mathematical variable names mean,
what variables are used for, a quick overview of a set of forthcoming
statements, and general ideas behind the problem solving strategy in the
code.
Remark. Ifyouusenon-Englishcharactersinyourcomments,Python
will complain. For example,
s = 1.8
# Å. Ødegård recommended this value for s
Running this program results in the error message
SyntaxError: Non-ASCII character ’\xc3’ in file ...
but no encoding declared; see
http://www.python.org/peps/pep-0263.html for details
Non-English characters are allowed if you put the following magic line in
the program before such characters are used:
# -*- coding: utf-8 -*-
(Yes, this is a comment, but it is not ignored by Python!) More infor-
mation on non-English characters and encodings like UTF-8 is found in
Section 6.3.5.
10
1 Computing with formulas
1.1.11 Formatting text and numbers
Instead of just printing the numerical value ofy in our introductory pro-
gram, we now want to write a more informative text, typically something
like
At t=0.6 s, the height of the ball is 1.23 m.
where we also have control of the number of digits (herey is accurate up
to centimeters only).
Printf syntax. Theoutputofthetypeshownaboveisaccomplishedby
print statement combined with some technique for formatting the
numbers. The oldest and most widely used such technique is known
as printf formatting (originating from the function printf in the C
programming language). For a newcomer to programming, the syntax of
printf formatting may look awkward, but it is quite easy to learn and
very convenient and flexible to work with. The printf syntax is used in a
lot of other programming languages as well.
The sample output above is produced by this statement using printf
syntax:
print ’At t=%g s, the height of the ball is %.2f m.’ % (t, y)
Let us explain this line in detail. Theprint statement prints a string:
everything that is enclosed in quotes (either single:, or double: ")
denotes a string in Python. The string above is formatted using printf
syntax. This means that the string has various “slots”, starting with a
percentage sign, here%g and%.2f, where variables in the program can
be put in. We have two “slots” in the present case, and consequently two
variables must be put into the slots. The relevant syntax is to list the
variables inside standard parentheses after the string, separated from
the string by a percentage sign. The first variable,t, goes into the first
“slot”. This “slot” has a format specification%g, where the percentage sign
marks the slot and the following character,g, is a format specification.
Theg format instructs the real number to be written as compactly as
possible. The next variable,y, goes into the second “slot”. The format
specification here is.2f, which means a real number written with two
digits after comma. Thef in the.2f format stands for float, a short
form for floating-point number, which is the term used for a real number
on a computer.
For completeness we present the whole program, where text and
numbers are mixed in the output:
v0 = 5
g = 9.81
t = 0.6
y = v0*t - 0.5*g*t**2
print ’At t=%g s, the height of the ball is %.2f m.’ % (t, y)
The program is found in the fileball_print1.py in thesrc/formulas
folder of the collection of programs associated with this book.
Documents you may be interested
Documents you may be interested