c# pdf to image free library : Form pdf fillable SDK software service wpf winforms azure dnn tb102complete11-part865

TUGboat,Volume32(2011),No.3
351
Figure 5:
HTML
and
PDF
previewsin
PARCAT
By default,
PARCAT
showsasimple textform
forthecommonparametersandatableforthedis-
tinguishing parameters. However, the user has a
numberoftoolsto changethe look ofthese tables,
theirorder,theorderofparametersinsidethetable,
the font size in the table, the position of pictures
aroundthetableandmanyotheraspectsofthecre-
ateddescription. By modifyingthe constructionof
tables, the user can adjust the appearance of the
frames to their needs and present the data in the
mostreadable way.
2.5 Translation
The listoflanguages used for productdescriptions
isnotfixedandcanbedynamicallychangedduring
workonaparticularcatalogue. Alltextspresentin
thesystemwillbe automatically markedfortrans-
lationintoanewly addedlanguage.
PARCAT
featuresa complex panel fortransla-
tionmanagement. Itindicatestheexactnumberof
phraseswhichrequire translation into a given lan-
guage,andeachphrasewillbetranslatedonlyonce.
Itallowsyoutoselectthose sectionsofacatalogue
tobetranslated. Generatedordersaresenttotrans-
latorsforwhomaspecialapplicationispreparedto
facilitate theirwork. Itisvery importantthatthe
translatorsalwaysseethefullcontextoftranslation,
eveniftheyneedtotranslateonlyonephrase. This
allows for translation quality at the highest level.
Afterthetranslatorfinisheswork,theirorderisim-
ported into the database, afterverificationstepsto
eliminatemistakesandimprovethequalityoftrans-
lationfurther.
2.6 Graphics
All graphicalelementsinthe programarestoredas
apairof
PDF
files(ready forprinting,
CMYK
with
acutoutbackground)aswellas
JPG
,
GIF
,etc.(for
Internetuse). Thesystemfeaturesamechanismal-
lowing users to orderthe preparation or editing of
graphicelement. Inthisway,userswithouttheabil-
itytousegraphicsprogramscanstillmanagegraph-
ics. Orders along with the comments are sent to
otheruserswithpermissiontoeditgraphics(graphic
designers). Afterthe image processingisdone,the
userwhosentthe orderisabletoacceptchangesor
requestnewones.
2.7 Preview
Thepossibilityofpreviewingaframeatanystageof
itscreation(inparticular,withthegraphicsstillnot
accepted!), even without saving changes, is a very
important feature ofthe system(Fig. 5). What is
more,thepreviewinafreelychosenlanguageorlan-
guagesiscreatedimmediately andshowsthe frame
exactly asitwill look inprint(withaccurate pagi-
nation)orwhenconnected toa website,alongthe
linesof
WYSIWYG
.
A true and fast preview is vital in extensive
publicationsofover1000-page catalogues. Itmakes
PARCAT
—Applying T
E
Xinindustry
Form pdf fillable - C# PDF Form Data fill-in Library: auto fill-in PDF form data in C#.net, ASP.NET, MVC, WinForms, WPF
Online C# Tutorial to Automatically Fill in Field Data to PDF
pdf signature field; convert an existing form into a fillable pdf form
Form pdf fillable - VB.NET PDF Form Data fill-in library: auto fill-in PDF form data in vb.net, ASP.NET, MVC, WinForms, WPF
VB.NET PDF Form Data fill-in library: auto fill-in PDF form data in vb.net, ASP.NET, MVC, WinForms, WPF
convert pdf form fillable; convert pdf to fillable pdf form
352
TUGboat, Volume 32(2011),No.3
itpossible forall users ofthe programto assist in
thepreparationofmaterial,eliminatingthecompli-
cated,time consuminganddiscouragingintermedi-
ate stage which is usually “the preparation ofthe
preview” in traditional composition systems. Fur-
thermore,theinstantaneouslygeneratedpreviewal-
lowsuserstoquicklyfindbothfactualandgraphical
errors.
In addition to the frame previewitispossible
toprepareapreviewofasection,chapterorpartof
acatalogue. Thisallowsyoutocheckportionsofa
cataloguewithouttheneedtoprocessallthe mate-
rial. Italso enableseasy monitoringofthe number
ofpagesinthe forthcomingcatalogue,whichisim-
portant for ordering at the printing houses. The
composition ofasingle chapterisno longerinstan-
taneous,butittakesonlyafewminutestocompose
tens of generated pages. Therefore these previews
canalsobegeneratedasnecessary.
All these features translate into a significant,
ifnotrevolutionary, way to shortenthe time users
mustspendtopreparethecataloguematerial.
2.8 Typesettingofacatalogue
After preparing and checking all the material you
can proceed to a catalogue composition. A gen-
erated
PDF
file features cropmarksandtrimboxes,
whichmakesitsuitableforsubmissiontotheprint-
inghouseswithoutadditional modifications.
Multi-lingual typesetting with replacement of
onlythe blackcolourplateisastrategicfunctionof
PARCAT
.The system providesthe ability to com-
poseacataloguewherethedatainalllanguagescho-
senintheprocessofcompositioncanbefoundinone
outputfile. Thismeansthatthetextsineachofthe
languages are inserted into the same spaces main-
tainingthecommonpositionofillustrationsandthe
same page breaks. Every language is placed on a
separate layer, whichallows youtohavea preview
or trial print for the given language. In addition,
eachlanguagelayeriscomposedbymeansofitsown
additionalcolour(thespotcolour),whichfacilitates
the work ofthe
CTP
studio before the preparation
of printing plates. This method of printing, with
replacementoftheblackplate,allowsustoachieve
enormousfinancialsavings. Themorelanguagever-
sionsofa catalogue and the more cataloguepages,
themoresavings.
3 Underthehood: T
E
Xin
PARCAT
The typesetting in
PARCAT
is done using LAT
E
X
withtheX
Ǝ
T
E
Xengineandahighlycustomiseddoc-
umentclass. Sincewehavetocopewithtextinsev-
erallanguageswritteninLatinandCyrillicscripts,
we eagerly switched tousing Unicode. Inthiscon-
textX
Ǝ
T
E
Xwithits
UTF
-8inputanditsability to
use multilingual OpenType fonts provided a com-
fortableworkingenvironment.
T
E
X, beinga batch processor, playsitsrole as
a typesetting back-end for
PARCAT
very well. It
isfastenoughtoprovide almostinstantaneouspre-
view ofselectedframes. Theusercanalsobeprac-
tically certain thatthe result shown for a separate
frame will be identical in a complete chapter. We
thinkthatinsomeaspectswehavereachedtheedge
of T
E
X’s abilities, e.g., with respectto rearranging
thelanguagevariants. Someofthesemanipulations
wouldperhapsbeeasierinLuaT
E
X. Wewillproba-
blyinvestigatethispossibility inthefuture.
Typesettingproductcataloguesisaratheratyp-
ical use of L
A
T
E
X, so we had to solve quite a few
T
E
Xnical problems, the most important being the
handlingoflanguagevariants. Thiscomprisescom-
biningseveralstreamsoftextinonesourcefile;over-
laying language variants in such a way that page-
breaking and picture positions are the same in all
variants, and finally outputting all the variants of
the text to the same
PDF
file using the “optional
content groups” feature ofthe
PDF
format, witha
separatespotcolourforeachlanguage.
3.1 Tables
Onemajorissuewashandlingthetablespresenting
parametersoftheproductsbeingoffered,animpor-
tant part of the catalogues. Some of these tables
arelong,spanninguptoabout20pages. Theycon-
tain headers repeating at the top of each column
andshouldbetypesetinatwo-columnarrangement.
Unfortunately, standard L
A
T
E
Xpackages (multicols
andlongtable,supertabular,etc.)donothandlesuch
acombination. We developedaspecialisedsolution
inwhichpagebreakingisdonebythemulticolspack-
age. Thepackagewasslightlymodifiedtocarrythe
headers for the table in T
E
X marks (we used the
ε-T
E
Xabilitytocreate newmarkclasses).
The columnwidthsareautomaticallysettofit
a table to the column width. A typical table in
questionconsistsofabodycontainingsomeparam-
etervalues,usually decimalnumbers, andaheader
namingthoseparameters,sometimeswithverylong
contents.
The original class hacksthe tabular environ-
mentsothatitmeasuresitscolumnsand performs
atrial setting ofa table. There are at mostthree
trials:
• withoutlinebreaking,
• withline breaking, atevery allowedblank(not
at~’s),
WiktorDziubiński,MarcinWolińskiandGrzegorzMurzynowski
C# PDF Field Edit Library: insert, delete, update pdf form field
A professional PDF form creator supports to create fillable PDF form in C#.NET. An advanced PDF form maker allows users to create editable PDF form in C#.NET.
create a fillable pdf form; change pdf to fillable form
VB.NET Create PDF from PowerPoint Library to convert pptx, ppt to
Edit URL. Bookmark: Edit Bookmark. Metadata: Edit, Delete Metadata. Form Process. Convert multiple pages PowerPoint to fillable and editable PDF documents.
best pdf form filler; pdf add signature field
TUGboat,Volume32(2011),No.3
353
Figure6: Atablejustifiedwiththeoriginalalgorithm(left)andthe“moresubtle”version(right)
• withlinebreaking,atanyallowedpoint(includ-
ingwordhyphenations).
Insomenot-so-extremecasestheresultappears
asinFig. 6, left. The table consistsofnarrowcol-
umnsandlarge“column-glue”attherightfillingthe
widthto\columnwidth.
Let’sunderlinethatmakingthisworkfullyau-
tomatically isquiteanachievement,asanyonewho
knowssomethingofT
E
Xwouldagree. Butitdoesn’t
looktoogoodcomparedwithothertables,especially
ifyouknownothingofT
E
X,doesit?
So,thenextsteptakenistomakesuchatable
look asinFig.6,right,stillfully automaticallyand
withoutchangestothesourceofthattable(sothat
no changesare necessary to the front-endsoftware
generatingit).
Thedesiredeffectisachievedbyrepeatingtrial
settingswithanincreasing\looseness inasortof
\raggedright scope (turning respective cells into
p{⟨dimen⟩}),untilaminimumvalueof\looseness
is found (or a limit of iterations reached). Then
widths of table columns are measured and applied
tothefinalleading.
3.2 Newlayouts
Asthe projectdevelopedandthe
PARCAT
system
isofferedtodifferentclients,theneedfornewpage
layouts, or rather, graphical concepts, is natural.
Samples of the layouts designed so far are shown
inFig.7.
They are intendednotonlytopresentdifferent
shapesofgraphical elementsorplacementofhead-
ings,butalsotoillustratethefactthatallthosesam-
ples are typeset from the same product data and,
moreover,thesame“intermediate”T
E
Xcode.
To be more specific,
PARCAT
’sfront-endsoft-
ware(non-T
E
X)producesT
E
Xcodesuchas
{\sizevii
\begin{wykaz}{@{}lll}
\wyknaglowek{\textbf{\war{PL}{%
Symbol}\war{EN}{Symbol}\war{CZ}{Symbol}%
\war{DE}{Symbol}\war{HU}{Jelölés}}&
\najweziej{\war{PL}{Klasawykonania}%
\war{EN}{Manufactureclass}\war{CZ}{Třída
provedení}\war{DE}{Ausführungsklasse}%
\war{HU}{Kiviteliosztály}}&\najweziej{%
\war{PL}{Pokryciestyku}\war{EN}{Contact
plating}\war{CZ}{Povrchkontaktu}\war{%
DE}{Kontaktbeschichtung}\war{HU}{Érintkező
bevonata}}\\}
...
\end{wykaz}
} %wielkoscczcionki
inamultitudeoffilesnamedframe_⟨id⟩.tex. Each
filecorrespondstoacatalogueframe.
PARCAT
also
producescodelike this:
\begin{multicols}{2}
...
\KeysForNextFrame{2x3=0:1/0}
\NamedInput{frame_24_1/frame_24_1.tex}
\KeysForNextFrame{2x3=1:2-1}
\NamedInput{frame_3_1/frame_3_1.tex}
...
\end{multicols}
in so-called intermediate files. \NamedInput is an
inputwrappedwithstackingthefilenamesothatit
can be referred to inmessages, whichwe’ll discuss
later(section3.4). So, asyousee, the intermediate
fileinputsthe framefiles.
This file in turn is input by the main LAT
E
X
documentfile,alongsidefilescontainingsettingsand
configurationdatageneratedbythefront-endofthe
system.
You get all the different outputs (and more)
dependingonwhichmainfileyouuse—onthesame
intermediateandframefiles!
Ourintentionistokeepallthetemplatescom-
patible with one another. Forexample, notice the
unconditionalinvocationofthemulticolsenviron-
mentintheintermediatefile(thecodesampleabove)
whileonlyoneoftheexamplesshowninFig.7isac-
tually two-column.
Turningthemulticolsenvironmentoffwasrel-
atively easy. (Relatively, since it’s off only at the
mainlevel,where\currentgrouplevel=0.)
Abitmore difficultwastoreacha reasonably
simple solution forthe layoutintroducedin the
IL
template(lowerleftcornerofFig.7). Asyousee,the
picturesaretypesetontherightsideoftext(tables)
andthe table(s) break inpages. The complication
PARCAT
—Applying T
E
Xinindustry
VB.NET Create PDF from Word Library to convert docx, doc to PDF in
Link: Edit URL. Bookmark: Edit Bookmark. Metadata: Edit, Delete Metadata. Form Process. Convert multiple pages Word to fillable and editable PDF documents.
convert word form to pdf with fillable; convert an existing form into a fillable pdf
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
create fillable forms in pdf; convert pdf fillable forms
TUGboat,Volume32(2011),No.3
355
isthat the picture isnot boxed with adjacent text
(whichwouldkilltheflexibilityof\vskips)butput
ina“smashed”boxpreceding the text, andproper
page breaking (i.e., forbidding breaks until subse-
quenttextatleastreachestheheightofthepicture)
isensuredby alocalchangeto\pagegoal.
Thetemplate presentedinthe lowerrightcor-
ner of Fig. 7 (Mod), is quite distinct from all the
others. It positions a logical frame in a geometric
frame consisting ofsome number of modulessensu
graphico,i.e., rectanglesofa grid. The gridonthe
illustrationis2×3.
Thistemplate isunderconstruction. Ourgoal
istomakeittypeseta frameinapropershape ac-
cording to free space left on page. So farit type-
setsframesina“greedymulticolumn”shape,either
“vertical-first”or“horizontal-first”by defaultorin
ashapespecifiedbyakey. Forinstance,themiddle
frameoftheexamplehas(intheoptionalargument
of the ramka environment) a key 2x3=1:1, which
meansthatonthe2×3griditshouldbeputintwo
horizontallyadjacentrectangles.
Thekeysarehandledbythepgfkeyspackageby
TillTantau,whichI find mucheasiertolearnthan
xkeyval,thankstothepath-likestructureofthekeys.
Althoughinthisarticlewepresentillustrations
ingrayscale,realtemplatesallowcolours,ofcourse.
Moreover,allthecoloursareadjustableby theend
user. Butthatbelongstothenextstory:
3.3 Changingthe layoutparameters
3.3.1 ParcatColours
The
PARCAT
templates provide a straightforward
mechanismforsettingcolours. Theenduserdoesn’t
have to define the colourofeachgraphicalelement
separatelybutisgivenasetofcolourvariablesthat
areinitialisedhierarchically.
Thismechanismisrealisedwiththecommands
\NewParcatColor and \SetParcatColor, whose
names are self-explanatory. These commands use
the mechanisms of colour definition of the xcolor
package, so a very wide range of assignments, re-
assignments,mixingandshadingisavailable.
In most of the templates the basic colour is
nadroz,alegacy namederivedfrom“nadrozdział”,
‘super-chapter’inPolish. Othercoloursaretintsof
itbydefault. Therearealsocolours(colournames)
forthedistinctiveframeofinsertedadvertisements,
forthebackgroundsofpicturesandsoon.
Anearlyparallelmechanismhandlesotherpa-
rameterssuch asdimensionsofgraphicalelements,
valuesofBooleanswitches,etc.
3.3.2 ParcatParameters
Themaincommandsare:
• \NewParcatParameter,
• \SetParcatParameter,
• \RenewParcatParameterand
• \OldParcatParameter.
These commands notonly declare orset
PAR-
CAT
parametersbutalso putthemoncheckliststo
issue an error message if a parameter isn’t set at
the point of \AtBeginDocument (which we discuss
insection3.4).
Thefirstthreenamesareself-explanatory. The
last serves to include standard (L
A
)T
E
Xparameters
in
PARCAT
’schecklists(withtheinformationabout
their types). E.g., parcat.cls has a declaration
specifying\parindent asavalueoftypedimen:
\OldParcatParameter\parindent
\dimen[0pt]
Thisallowsthestandard\parindenttobespecified
with\SetParcatParameterinasettings_...tex
file. Itdoesn’thaveto be setbecause the optional
argumentsetsitto0ptbydefault.
Amongtheavailableparametertypesaredimen,
count,skip,andthecorresponding\dimexpr,\nu¦
mexpr, \glueexpr to denote a proper text for the
respective ε-T
E
Xprimitives,and\edim.
Thislastitemstandsfor‘evaluated\dimexpr’,
whereevaluation(\the-expansion)oftheexpression
isperformed\AtBeginDocument.
AswithParcatColors,\edimsareorganisedin
asortofinheritancehierarchy.
3.4
PARCAT
messages
Asmentionedearlier,
PARCAT
’sT
E
Xback-endgen-
erates information, warning and error messages in
an
XML
format, which is intended for parsing by
thefront-end
PARCAT
softwaretoprovideinforma-
tion tothe enduser, whomostprobably is notac-
quaintedwithT
E
X.
Inparticular, suchmessagesare issuedifsome
parameters are not set while they should be, or if
anattemptismadetoassignaparametervaluenot
appropriate forit. Asanexample, the parcat.cls
classdeclares
\NewParcatParameter\TitleOnBg
\boolean[true]
whichmeanstheonlyallowedvaluesfortheparam-
eterare(case-insensitive)trueandfalse. Butsup-
pose the settings_...tex filecontainsatypo:
\SetParcatParameter\TitleOnBg{fals}
ThenT
E
Xoutputsanerrormessage:
PARCAT
—Applying T
E
Xinindustry
C# Create PDF from Word Library to convert docx, doc to PDF in C#.
Convert multiple pages Word to fillable and editable PDF documents in both .NET WinForms and ASP.NET. Convert both DOC and DOCX formats to PDF files.
convert html form to pdf fillable form; pdf fillable forms
C# Create PDF Library SDK to convert PDF from other file formats
Create fillable PDF document with fields. Load PDF from existing documents and image in SQL server. Load PDF from stream programmatically.
add fillable fields to pdf; create a pdf form to fill out
356
TUGboat, Volume 32(2011),No.3
!
<ParcatError>
<ParcatErrorFile>settings_Modular.tex
</ParcatErrorFile>
<ParcatErrorLine>108
</ParcatErrorLine>
<ParcatErrorForDummies>
Theonlyvaluessuitablefor
***
\TitleOnBg
***
are***true***and***false***
whileyougave***fals***.
</ParcatErrorForDummies>
<ParcatErrorForTeXies>
</ParcatErrorForTeXies>
</ParcatError>
.
Type H<return> forimmediatehelp.
...
l.108\SetParcatParameter\TitleOnBg{fals}
The
XML
is subsequently parsed by the front-end
programme to be presented to the user in a nice
form.
3.5 Modularisationofthecode
Another goal ofredesigning the code wasto make
itsuitable fornewclients, who wouldwant notall
the layouts in any possible configuration but only
afew orevenjustone. Itwasimmediately evident
thatdividingthecoderesponsiblefordistinctparts
ofthetemplatesintoseparatefiles(modules)would
beagoodidea.
Forthatpurposewecreatedamechanismbased
onthesethreecommands:
• \DeclareParcatModules,
• \ProvideParcatModuleand
• \LoadParcatModule.
Thelasttwonamesare self-explanatory, given
that a module (sensu programmatico) ismuch like
aL
A
T
E
Xmacropackageoradocumentclassoptions
file. But why is the first in plural? It is because
fromtheverybeginningoftheoperation(Operation
Divide et Impera ;-)) itwas clearto us thatthere
wouldbe more than one module (variant)foreach
logicalpartofatemplate.
Andindeed, sofarthere areabout10modules
ofpage layout,6modulesofheadings,3modulesof
index,5modulesofframes,3modulesoftables,&c.
Weintendtokeepthemodulescompatiblewith
oneanother,e.g.,anyoftheframemodulescanwork
withanyofthetablemodules(asfaraslogicallypos-
sible). The tests performed so farseemto confirm
thatsuchaconditionispreserved.
Not the least in preserving that compatibility
isthemannerofwritingthecode: allinonesource
file(usingthegmdocpackage,withanabundanceof
commentary)andgeneratingthe workingfileswith
docstripdirectives.
But what about that“industry”inthe title?
—onemay ask.
Our clients are companies with large product
bases. To mention just one of them, its printed
catalogue for the year 2011 is over 1700
A
4 pages
in thousands of copies in each of eight languages.
That is industry and being able to handle it with
(X
Ǝ
)T
E
Xmakesusproud.
Another and probably not the least aspect of
the “industrial strength” of
PARCAT
’s T
E
X back-
endisitsflexibilityforthedifferentneedsofdifferent
clients, achievedwithmodularisationandvariation
ofthe parameters.
The
PARCAT
projectisdevelopingdynamically
anddedicatedtotreatingeveryclientindividuallyso
hopefully there’ll be many new features to present
inthefuture.
More information about the
PARCAT
project
canbefoundatwww.parcat.eu.
⋄ WiktorDziubiński
w.dziubinskiatparcat(dot)eu
⋄ MarcinWoliński
wolinskiatgust(dot)org(dot)pl
⋄ GrzegorzMurzynowski
g.murzynowskiatparcat(dot)eu
WiktorDziubiński,MarcinWolińskiandGrzegorzMurzynowski
C# Create PDF from OpenOffice to convert odt, odp files to PDF in
An advanced .NET control to change ODT, ODS, ODP forms to fillable PDF formats in Visual C# .NET. Online source code for C#.NET class.
create fillable pdf form from word; create fillable pdf form
VB.NET Create PDF from OpenOffice to convert odt, odp files to PDF
Link: Edit URL. Bookmark: Edit Bookmark. Metadata: Edit, Delete Metadata. Form Process. Turn ODT, ODS, ODP forms into fillable PDF formats.
convert pdf to pdf form fillable; create a writable pdf form
358
TUGboat, Volume 32(2011),No.3
BookReviews
Bookreview: Bodoni,Manual of
Typography—Manuale tipografico(1818)
BorisVeytsman
GiambattistaBodoni,Manual of Typography—
Manualetipografico(1818). Stephan F¨ussel,editor.
Taschen, 2010. 1208pp. Hardcover,
US
$69.99.
ISBN
978-3-8365-0553-6
One of the aims of Unicode is to make possible
andrelativelystraightforwardtocreate,forexample,an
English text with quotes in German,Arabic, Hebrew,
and many other languages. Atypesetter understands,
however,thatitisnotenoughtohaveauniformdigital
representationof the“letters”: onealsoshouldhavea
font(orcollectionoffonts)withletterformsforallthese
scripts. Thereforeanimportanttaskforfontdesignersis
tocreatefontswithlargecollectionsofglyphsfordifferent
scripts. Onlywhenthisisdonecanwesaythatwecan
makemulti-languagebookswithtrulyharmoniousand
beautifulpages.
Onemaythinkthatthistaskbecamerelevantonly
in recenttimes. GiambattistaBodoni(1740–1813)isa
greatreminderthatthisimpressionisjustwrong.
Typophiles may remember Bodoni for his great
Latin fonts, which still are widely used today, or for
his influential editions of classics. However, another
aspectofBodoni’sheritagebecomesincreasinglymore
important in today’s interconnected world: his exten-
siveworkonnon-Latinscripts. Thesescriptsinterested
Bodonithroughout his career. Startingat theage of
eighteenBodoniworkedwiththeexoticadivisionofthe
TipografiaPoliglottaVaticanawherehisworkspanned
Arabic,Tibetanandmanyotherscripts.Later,inParma,
hepublishedacollectionofbridalpoemsin25Oriental
languageswith Latintranslations(1775). As amature
typographer, Bodoni published Oratio Dominica, the
Lord’sprayerin155languages(1806). Hepersonallycut
55,000matrices forhis multi-language books. Bodoni
strivedtocombinecalligraphictraditionsofthesescripts
withthebeautyandclarityofhissuperbtypography.
T
E
Xusersmaywanttotakealookat
GFS
Bodoni
fonts(http://www.ctan.org/pkg/gfsbodoni)withfull
supportforGreek,Latinandmath. Theyareincludedin
T
E
XLiveandMiKT
E
X,aswellasbeingavailabledirectly
from
CTAN
.
ThebookManualeTipograficoisamajorworkof
thegreattypographer. Hedidnotlivetoseeitprinted:
hiswidowMargheritaandhisforemanLuigiOrsicom-
pleted theedition andpublisheditfiveyears afterthe
master’sdeath.
The first volume of the manual contains a huge
collectionof samplesofLatin fonts: roman,italic and
cursive,withvariants,weights,sizes. Margheritawrote
in her prefacethat Bodoni considered it necessaryfor
goodtypographytocarryacollectionofmainfontslarge
enough sothedifference between theadjacent sizes is
noteasilyseenbyatrainedeye—afeatalmostunheard
ofbeforetheadventofdigitaltypography.
The second volumehas an extensivecollection of
GreekandCyrillicfonts,alongwithahugenumber of
otherscripts: Hebrew,Tibetan,Arabic,Armenian,Cop-
tic,Georgianandmany,manyothers(curiouslyenough,
blackletterisalsoconsideredtobean“exoticscript”and
putinthesecondvolumeas “Tedesco”,German—be-
tween“Malabarico”,Malayalam,and“Russo”,Russian).
Bodonihimselfinhisprefaceevidentlytakesaconsider-
ablepleasureinlistingthefonts,carefullyobservingthe
differencebetweenSquareHebrewandRabbinical He-
brew,andnotingthatinArabicwriting...theintricate
Sulsi letteris employedinfrontispiecesandbeginning,
the hanging Tajik isveryfashionable inPersia, while
Turks lovethereverseDivˆan. Theprefacealsocontains
importantmusingsbyBodoniaboutthefundamentalof
typographicart.
The bookalsoincludesmanypagesofastronomi-
cal,mathematicalandmedicalsymbols,decorativerules,
ornamentsandevenmusicalsheetsinseveralstyles.
Besidesbeingahugesourceofinvaluableinforma-
tion,thebookisapleasuretoread;justturningitspages
maymakeagreateveningforatypophile.
Sinceitspublicationin1818theManualebecamea
veryrarebook. In1965itwasreprintedin900numbered
copies,which,ofcourse,immediatelybecameaprized
raritythemselves. Thusanewmass marketeditionby
Taschen is avery welcome project. Awell preserved
copyfromStaatsbibliothekzuBerlinisreproducedhere
inallitsglory. Forthosereaderswhoarenotfluentin
Italianthebookcontainsabookletinapocketgluedto
theinsidecoverwiththetranslationofthetextsanda
veryinterestingpreface byStephanF¨ussel,director of
theInstituteoftheHistoryoftheBookattheJohannes
Gutenberg University of Mainz and the editor of the
publication(mostofthefactsaboutBodoni’sbiography
citedabovecanbefoundinthiseruditeandwell-written
foreword). Thebookis printed onagoodthickpaper
andiswellbound. Probablyinordertokeeptheprice
lowerthiseditioncontainsbothvolumesoftheoriginal
Manualeinonelargebook(albeitwithtwotassels).This
makesitratherheavy(aboutninepounds)andsomewhat
difficulttohandle. However,thebindingallows oneto
openthebookatanyplacewithoutmuchproblem.
This book is a must for afont specialist or aty-
pographer. Itsrelativelylowpriceandbeautymakeita
goodadditiontoalibraryofabooklover.
⋄ BorisVeytsman
ComputationalMaterialsScience
Center,MS6A2
GeorgeMasonUniversity
Fairfax,VA22030
USA
borisv(at)lkdotnet
http://borisv.lk.net
TUGboat,Volume32(2011),No.3
359
Bookreview: LAT
E
Xand Friends
BorisVeytsman
MarcvanDongen, L
A
T
E
Xand Friends, Springer,
Feb. 29, 2012, x+330pp., 145 ill., 15 in color.
Hardcover,$69.95approx.,
ISBN
978-3-642-23815-4.
Itisdifficultto write a new and original introduc-
tory book about L
A
T
E
X today. The author must
compete with a number ofgreat books, including
freely availableoneslike[1]. Some thesebookswere
writtenbytheauthorsorprimarydevelopersofthe
language[25]. Still,peoplehavebeenwritingmath-
ematicstextbooksfor several thousand years, and
neverthelessnewonescontinuetobewritten.
ThewayonecanjudgeintroductoryLAT
E
Xtext-
books is similar to how figure skating is judged.
Thereareseveral“requiredelements”whichmustbe
presentinanybook, like theexplanationofL
A
T
E
X
macrosandworkflow. Therearealsoseveral“freeel-
ements”likeadditionalpackagesortrickstheauthor
choosestoinclude. Thebookcanbeevaluatedbythe
pedagogicalskill withwhichthe authorperformed
the“requiredelements”,introducingthe fundamen-
talsofLAT
E
X,andby hischoiceofthe“free”ones.
The new bookbyMarc van Dongen deserves
highscoresinbothcategories.
Thefirsttwopartsofthebook,BasicsandBasic
Typesetting discussthematerialone canexpectto
findinanyL
A
T
E
Xtextbook: theorganizationofL
A
T
E
X
documents, the language constructs, thealphabet,
etc. They are explained lucidly and well. What
distinguishes this book from many other texts is
that the author stresses the fact that L
A
T
E
X is a
programminglanguage,andthereforeaLAT
E
Xfileis
actuallyaprogramthatinstructsthecomputerto
create thefinalproduct: thetypesetpagesonpaper
oron screen. This means, writesthe author, that
youcanusesoftwareengineeringtechniquessuch as
top-downdesignand stepwiserefinement.
Thisisaveryimportantfact,whichmustbeex-
plainedtothestudentsofT
E
XandLAT
E
X,especially
thosewhoareaccustomedto
WYSIWYG
documents.
A
WYSIWYG
documentpresentsitselfas“the final
product”(thisisadeceptionofsortsbecause,asany
experiencedusercan attest,“whatyou finallyget”
isemphaticallynot “whatyousee”), while a T
E
X
document is bestviewedasa program to produce
“thefinalproduct”. Theauthorreturnstothismany
times,discussingsuchsoftwareengineeringconcepts
asmaintainability appliedtoT
E
Xdocuments. This
approach would likelybe verycomfortable andfa-
miliarforengineersandsoftwaredevelopers.
The author’s use of Unix-like syntax for his
examples adds to the impression that the target
audienceofthebookisthepeoplewhoarenotafraid
ofcompilersandcanwritesomecode. Thisisavery
welcomedevelopment. Toooftenpublisherspreferto
printcomputer-relatedbooksintendedfor“dummies”
oreven“completeidiots”. Whilegeniusesarguably
donotneedintroductorytexts,thereisaperceptible
dearthof booksforthereasonablyintelligentperson.
L
A
T
E
X and Friends isdefinitelyone ofsuchbooks,
anditmakesforpleasantandusefulreading.
Since TheT
E
Xbook [6],manybooksaboutT
E
X
discussnotonlythe typesettingprogram,butalso
other aspects of typographic art and science, dis-
cussingthe rulesforbook designandthebestprac-
tices. L
A
T
E
XandFriends followsthistradition,and
Bringhurst’s immortal Elements [7] is one of the
mostoftencitedbooksinthetext. Thereaderlearns
manyuseful typographic facts,suchassetting the
punctuationsymbolsattheborderoftwo typesin
the brightertype,the spacinginabbreviationsand
initials, etc. Manypeople fromthe intended audi-
encegettheirfirstexposuretothe typographyfrom
T
E
X-related books, and this one provides a good
introductiontothesubject.
Theauthorchooses
PDF
modeasthe mainway
to produce theresult—probablya sensible choice
nowadays. Hedoesdiscuss
DVI
modeasaquickway
togetapreview ofthe typesetpages. He obviously
prefersbiblatextothe“traditional”BibT
E
Xinterface
tothebibliography. Still,adescriptionof thenatbib
packagewouldbeausefuladditiontothediscussion
ofthe author–yearbibliographies.
The third part of the book discusses Tables,
Diagrams and Data Plots. It contains a detailed
introduction to the TikZ suite—probably one of
the bestexisting descriptions of this highlyuseful
package. This description alone makes the book
worth buying. The section on tables, however, is
smallerandlessdetailed;thereaderwhoneedsmore
shouldprobably turntothe recentbookbyHerbert
Voß[8]dedicatedtotypesettingtablesinLAT
E
X.
The fourthpartofthe booksis called Mathe-
maticsandAlgorithms. Theauthordiscussestheuse
ofamsmathandtherelatedpackagesfromtheAmer-
ican Mathematical Society. Again, a reader who
Bookreview: L
A
T
E
XandFriends
360
TUGboat, Volume 32(2011),No.3
needsadetaileddescriptionofthese packagesmay
wantto consultthe bookswhichdealwiththemas
aprimarytopic,suchasthe twovolumesby George
Gr¨atzer[9,10]. Achapterortwoinageneraltext-
book,ofcourse,cannotbeacomprehensivedescrip-
tionoftheselargepackages. Onecanalwaysargue
withtheauthor’schoice: forexample,vanDongen
discussesthesplit environment,butdoesnotmen-
tionmultline, while I find the latter more useful
thanthe former. I alsowouldargue thatthe only
“discussion”of eqnarray environmentshouldbethe
warning: “neverusethisugly monster!” Astranger
omissionhappensinthediscussionofvariablesized
delimiters, where the authorexplainsthe usage of
\left and \right keywords for automatic sizing
(with a useful trick of \vphantom for the proper
sizingofmulti-line expressions),butdoesnotmen-
tionthe manualsizingwith\Biggl,\Bigl,\bigl
commandsandtheir“right”complements. Thede-
scriptionofthelistingspackageisrathershortand
doesnotmention many ofits useful features. On
the other hand, the discussion of the algorithm2e
packageisverydetailedandwellwritten.
The fifthpartofthe book, Automation,deals
with the definition ofnew macros. Itis probably
intendedfora more advancedreaderthantherest
of the book. The discussion of branching, loops
andswitchingthere isratherinteresting,aswellas
containingsomeintroductoryremarks on the T
E
X
interface(asopposedtotheLAT
E
Xinterface).
The last part, Miscellany, includes a couple
of chapters on various topics that do not fit into
the other parts. It has a short but well written
introductiontobeamer presentations,achapteron
writingclassesandpackages,andachapteronusing
OpenType fonts. The chapter on writing classes
andpackagesisprobablynotasgoodasthefamous
guide[11],anddoesnotcovertheuseof.dtxfilefor
self-documentingcode. The chapteronOpenType
fonts containsan interesting discussion of a more
esoteric topic. I wonder whether some script to
automatethis,e.g.,usingfontinst[12,13]forsome
partsoftheprocess,wouldhelp.
The book is well typeset using the
FF
Nexus
fontfamily. UnlikemanyotherbooksonT
E
X,ithas
adetailedcolophon,addingtothepedagogicalvalue
ofthebook. Ithasagoodindexseparatedintocate-
gories,andashortdictionary of typographic jargon.
Thisisavery usefulbookwhichcanberecom-
mendedasatextbookonLAT
E
Xforanintroductory
course or for self-education. It haschapters inter-
estingforbeginnersandforexperiencedT
E
Xnicians,
andwillbeawelcomeadditiontoeitherbookshelf.
References
[1] TobiasOetiker,HubertPartl,IreneHyna,
and Elisabeth Schlegl. TheNotSoShort
IntroductiontoL
AT
E
X2
ε
,April2011. http:
//mirrors.ctan.org/info/lshort.
[2] LeslieLamport. LAT
E
X: ADocumentPreparation
System,secondedition. Addison-Wesley
PublishingCompany,Reading,MA,1994.
IllustrationsbyDuaneBibby.
[3] FrankMittelbach,MichelGoossens,Johannes
Braams,David Carlisle,andChrisRowley. The
L
A
T
E
XCompanion. Addison-WesleySerieson
ToolsandTechniques forComputer Typesetting.
Addison-WesleyProfessional,Boston,second
edition,2004.
[4] MichelGoossens,SebastianRahtz,andFrank
Mittelbach. The L
A
T
E
XGraphicsCompanion:
IllustratingDocumentsWithT
E
XandPostScript.
Addison-WesleySerieson Tools andTechniques
for ComputerTypesetting.Addison-Wesley,
Reading,MA,1997.
[5] MichaelGoossens,SebastianRahtz,EitanM.
Gurari,RossMoore,and RobertS.Sutor. The
L
A
T
E
XWebCompanion: IntegratingT
E
X,HTML,
andXML. Addison-WesleySerieson Tools and
TechniquesforComputerTypesetting.Addison
WesleyLongman,Reading,MA,1999.
[6] DonaldErvinKnuth. TheT
E
Xbook. Computers
&TypesettingA.Addison-WesleyPublishing
Company,Reading,MA,1994. Illustrationsby
DuaneBibby.
[7] RobertBringhurst. TheElementsofTypographic
Style. Hartley& Marks,Publishers,Vancouver,
BC,Canada,2004.
[8] HerbertVoß. TypesettingTableswithLAT
E
X.
CambridgeUIT,2011.
[9] GeorgeGr¨atzer. MathintoLAT
E
X. Birkh¨auser,
Boston,thirdedition,2000.
[10] GeorgeGr¨atzer. MoreMathintoLAT
E
X. Springer,
NewYork,fourthedition,2007.
[11] LAT
E
X3Project. L
AT
E
X2
ε
ForClassandPackage
Writers,2006. http://mirrors.ctan.org/
macros/latex/doc/clsguide.pdf.
[12] PhilippLehman. TheFontInstallationGuide,
December2004. http://mirrors.ctan.org/info/
Type1fonts/fontinstallationguide.
[13] AlanJeffrey,RowlandMcDonnell,andLars
Hellstr¨om. Fontinst: Font InstallationSoftwarefor
T
E
X,December2004. http://mirrors.ctan.org/
fonts/utilities/fontinst.
⋄ BorisVeytsman
ComputationalMaterialsScience
Center,MS6A2
GeorgeMasonUniversity
Fairfax,VA22030,USA
borisv(at)lkdotnet
http://borisv.lk.net
BorisVeytsman
Documents you may be interested
Documents you may be interested