c# open pdf file in adobe reader : Delete pdf pages SDK Library project wpf asp.net html UWP tlgc2extra5-part1464

21.3 PSNFSS:usingfreelyavailablePostScriptType1fonts
symbolsondifferentlinescomeoutverticallyaligned.
Exa.
21-3-6
$ $ $ $ $ $ $ $
Þ Þ Þ
text Û Û Û text Ü Ü Ü
\usepackage{pifont}
\Piline{pzd}{36}
\par\medskip
\noindent\Pifill{psy}{222} text
\Pifill{psy}{219}text\Pifill{psy}{220}
21.3.3 InstallingCharterandUtopia
esimplest casefor installingadditionalfont filesis complementingthe
PSNFSS
setup with Adobe’s
utopiaorBitstream’scharterPostScriptType1filesfromCTAN(theyarenotfreesoware,butthe
.pfb
and
.afm
filesareavailableas
CTAN:fonts/charter.zip
and
CTAN:fonts/utopia.zip
).
Onceyouhavedownloadedthefontsyoucanproceedasexplainednext.
WefirstinstallUtopiaonLinuxwithaT
E
XLivesetup.
[1]> unzip utopia.zip
[2]> cd utopia
[3]> ls
putb8a.afm
putbi8a.afm
putr8a.afm
putri8a.afm
readme.utopia
putb8a.pfb
putbi8a.pfb
putr8a.pfb
putri8a.pfb
[4]> mkdir -p /TL2005/texmf-local/fonts/type1/public/adobe/utopia
[5]> cp *.pfb /TL2005/texmf-local/fonts/type1/public/adobe/utopia
[6]> texhash
[7]> updmap --enable Map utopia.map
[8]> latex fonttest
(./fonttest.tex
LaTeX2e <2003/12/01>
... a few lines deleted
(/TL2005/texmf-dist/tex/latex/fourier/utopia.sty)
No file fonttest.aux.
(/TL2005/texmf-dist/tex/latex/psnfss/t1put.fd)
[1] (./fonttest.aux) )
Output written on fonttest.dvi (1 page, 796 bytes).
Transcript written on fonttest.log.
[9]> dvips fonttest
This is dvips(k) 5.95b Copyright 2005 Radical Eye Software (www.radicaleye.com)
’ TeX output 2006.03.19:1509’ -> fonttest.ps
<tex.pro><8r.enc><texps.pro>. <putbi8a.pfb><putb8a.pfb><putri8a.pfb>
<putr8a.pfb>[1]
Aerunzipping(step
[1]
)the
.pfb
filesarecreatedinthe
utopia
subdirectory,towhichweproceed
andlistthefiles(steps
[2]
and
[3]
).Weseefour
.pfb
(thePostScriptType1sources)and
.afm
(the
Adobemetrics)files.Inthelocaltree(
texmf-local
wethencreateasubdirectory
adobe/utopia
under
fonts/type1/public/
(step
[4]
)andcopythePostScriptType1
.pfb
filestothatdirectory
(step
[5]
).WehavetoupdatetheT
E
Xfilesdatabasetoinformitwhereweinstalledthefiles(step
[6]
)
andthenaddthe
utopia.map
filetothelistofallfont mapfilesavailableto
dvips
andpdfT
E
X(step
[7]
).WefinallytestthesetupbyrunningLAT
E
Xon
fonttest.tex
whichtypesetsafewfontvariants
of theuppercaseandlowercasealphabet (step
[8]
).It isseenthatLAT
E
Xloads the
utopia
package(in
fact
fourier
couldbeusedinstead,as suggested inTablevreab:psnfssstyles)and the
t1put.fd
font
definitionfileforOPtima.Finally,
dvips
runonthe
dvi
file (step
[9]
)generates theresult shownin
Figure21.14onthefollowingpage.Noticehow
dvips
loadsthefour
.pfb
filesthatwecopiedintothe
T
E
Xtreeinstep
[5]
.
Ona system whereUtopia is installed it is easyto access thefont without actuallyloadingany
package,e.g.,viaacallto
\usefont
.Moreover, as aPostScript Type1fontcanbescaled toanysize
ch-psextra1.tex,v:2.24
2007/08/14
41
Delete pdf pages - remove PDF pages in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Provides Users with Mature Document Manipulating Function for Deleting PDF Pages
cut pages from pdf online; delete pages from pdf acrobat reader
Delete pdf pages - VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Visual Basic Sample Codes to Delete PDF Document Page in .NET
delete pages pdf file; delete pages in pdf online
21
POSTSCRIPTFONTSANDBEYOND
no:abcdefghijklmnopqrstuvwxyz(1234567890)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
SC
:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
it: abcdefghijklmnopqrstuvwxyz(1234567890)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
bd:abcdefghijklmnopqrstuvwxyz(1234567890)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
bi:abcdefghijklmnopqrstuvwxyz(1234567890)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
Figure21.14:AdobeUtopiafontsample
withthe
\fontsize
command,wecancombinethetwototypesetheadingsortitlepagesatfontsizes
notpredefinedbyL
A
T
E
X.
Utopia-Italic
\fontsize{12mm}{14mm}%
select size
\usefont{T1}{put}{m}{it}% select font
\centering Utopia-Italic
Exa.
21-3-7
OnMicrosoWindowswithMikT
E
Xweshallnowgothroughthesameprocedureandshowhow
toinstalltheBitstreamCharterfont.Wewillfindthatthevariousstepsaremoreorlessequivalent.
[1]> cd charter
[2]> mkdir \TL2005\localtexmf\fonts\type1\public\bitstrea\charter
[3]> copy *.pfb \TL2005\localtexmf\fonts\type1\public\bitstrea\charter
bchb8a.pfb
bchbi8a.pfb
bchr8a.pfb
bchri8a.pfb
4 file(s) copied.
[4]> texhash
Creating the file name database...
Deleting ”C:\TL2005\localtexmf\miktex\config\texmf0.fndb”...
C:\TL2005\localtexmf[dvipdfm][dvips][fonts][miktex][pdftex] done
Deleting ”C:\TL2005\localtexmf\miktex\config\texmf1.fndb”...
C:\TL2005\texmf[bibtex][doc][dvipdfm][dvips][etex][fontname][fonts]
[ghostscript][hbf2gf][makeindex][metafont][metapost][mft][miktex][mltex][omega]
[pdftex][psutils][scripts][source][tex][tpm][ttf2pfb][ttf2tfm][web2c] done
[5]> updmap --enable Map charter.map
[6]> pdflatex fonttest
This is pdfeTeX, Version 3.141592-1.21a-2.2 (MiKTeX 2.4)
entering extended mode
(fonttest.tex
LaTeX2e <2003/12/01>
... a few lines deleted
(C:\TL2005\texmf\tex\latex\psnfss\charter.sty)
No file fonttest.aux.
(C:\TL2005\texmf\tex\latex\psnfss\t1bch.fd)
[1psfonts.map](fonttest.aux) )8r.enc
<C:\TL2005\localtexmf\fonts\type1\public\bitstrea\charter\bchbi8a.pfb>
<C:\TL2005\localtexmf\fonts\type1\public\bitstrea\charter\bchb8a.pfb>
<C:\TL2005\localtexmf\fonts\type1\public\bitstrea\charter\bchri8a.pfb>
<C:\TL2005\localtexmf\fonts\type1\public\bitstrea\charter\bchr8a.pfb>
Output written on fonttest.pdf (1 page, 74015 bytes).
42
ch-psextra1.tex,v:2.24
2007/08/14
C# PDF Page Insert Library: insert pages into PDF file in C#.net
how to merge PDF document files by C# code, how to rotate PDF document page, how to delete PDF page using C# .NET, how to reorganize PDF document pages and how
delete blank pages in pdf; copy page from pdf
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
C# view PDF online, C# convert PDF to tiff, C# read PDF, C# convert PDF to text, C# extract PDF pages, C# comment annotate PDF, C# delete PDF pages, C# convert
delete pdf pages android; delete pdf pages ipad
21.3 PSNFSS:usingfreelyavailablePostScriptType1fonts
no: abcdefghijklmnopqrstuvwxyz(1234567890)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
SC
:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
it: abcdefghijklmnopqrstuvwxyz (1234567890)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
bd: abcdefghijklmnopqrstuvwxyz (1234567890)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
bi: abcdefghijklmnopqrstuvwxyz(1234567890)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
Figure21.15:BitstreamCharterfontsample
Transcript written on fonttest.log.
[7]> latex fonttest
This is e-TeX, Version 3.141592-2.2 (MiKTeX 2.4)
entering extended mode
(fonttest.tex
LaTeX2e <2003/12/01>
... a few lines deleted
(C:\TL2005\texmf\tex\latex\psnfss\charter.sty)
(fonttest.aux)
(C:\TL2005\texmf\tex\latex\psnfss\t1bch.fd)
[1] (fonttest.aux) )
Output written on fonttest.dvi (1 page, 792 bytes).
Transcript written on fonttest.log.
[8]> dvips fonttest
This is dvips(k) 5.94b Copyright 2004 Radical Eye Software (www.radicaleye.com)
’ TeX output 2006.03.19:1505’ -> fonttest.ps
<tex.pro><8r.enc><texps.pro>. <bchbi8a.pfb><bchb8a.pfb><bchri8a.pfb>
<bchr8a.pfb>[1]
Aerhavingunzippedthefontsinasubdirectory
charter
wegointothatdirectory(step
[1]
).We
createadirectoryforthePostScriptType1
.pfb
sources(step
[2]
,notethatMikT
E
Xcreatesbydefault
the
c:\localtexmf
directorytocontainlocaladditions)andcopythemtothatdirectory(step
[3]
).
AnicefeatureonMikT
E
XisthattheT
E
Xupdateprogram
texhash
(step
[4]
)showshowittraversesthe
variousdirectoriestorecreatethetreedatabase.Aeraddingthe
charter.map
totheglobalfontmap
database(step
[5]
)werunoursmalltestfilewith
pdflatex
(step
[6]
).Wefindthatthepackage
charter
is correctlyloaded as is the correspondingfont definitionfile
t1bch.fd
.Wealso see that
pdflatex
reads the
psfonts.map
file, that gives access toall font maps, including
utopia.map
,so that the
programknowswheretofindtherelevant
.pfb
files,whichitduelyincludesfromthedirectorywhere
wedepositedthemearlier.
TobeabletocomparetheinstallationprocedurewiththeoneweshowedforUtopiaonLinuxwe
alsorunLAT
E
Xand
dvips
(steps
[7]
and
[8]
).eresultofthatrunisshowninFigure21.15.
IthastobenotedthatpdfT
E
Xand
dvips
havetheirownmapfiles.OnLinux,
dvips
referstothemap
file
psfonts.map
inthesubdirectory
fonts/map/dvips/updmap
whilepdfT
E
Xreferstothemap
file
pdftex.map
inthesubdirectory
fonts/map/pdftex/updmap
.OnMiKT
E
X
dvips
andpdfT
E
X
both refertoafilewith thename
psfonts.map
but thefirstonetakesitfrom
dvips\config
and
thelatterfrom
pdftex\config
,bothunder
C:\TL2005\localtexmf
.
ch-psextra1.tex,v:2.24
2007/08/14
43
VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
Page: Insert PDF Pages. |. Home ›› XDoc.PDF ›› VB.NET PDF: Insert PDF Page. Add and Insert Multiple PDF Pages to PDF Document Using VB.
cut pages out of pdf; delete page on pdf document
VB.NET PDF Page Extract Library: copy, paste, cut PDF pages in vb.
Page: Extract, Copy, Paste PDF Pages. |. Home ›› XDoc.PDF ›› VB.NET PDF: Copy and Paste PDF Page. VB.NET PDF - PDF File Pages Extraction Guide.
acrobat remove pages from pdf; delete pages pdf
21
POSTSCRIPTFONTSANDBEYOND
21.4 UsingcommercialPostScriptType 1fontswithL
A
T
E
X
Walter Schmidt maintains a set of support files (they can be downloaded from
CTAN:/fonts/
psfonts/w-a-schmidt/
)forusingvariouscommercialPostScriptType1fontfamilieswithLAT
E
X.
Table21.5gives alist (the Berrynamingschemeisused). Each set consists of a
zip
archive and an
associatedtextfileexplaininghowtoinstallthefiles.edistributedmaterialdoes,ofcourse,notcon-
tainthe actual
.pfb
font instances themselves, which have to be purchased from the relevant font
foundries.
Adobe
AdobeGaramond
pad
Aldus
pas
FuturaLight/Book/Bold/BoldCond
pfu
StempelGaramond
peg
Frutiger
pfr
Melior
pml
Minion
pmn
Myriad
pmy
Optima
pop
Rotis
pro
Sabon
psb
Syntax
psx
Berthold
ConcordeBE
poc
BertholdBaskervilleBQ
qeb
Bitstream
Humanist777(Frutiger)
bfr
LetterGothic
blg
Latin725(Meridien)
bmd
NewsGothic
bng
Dutch809(Concorde)
boc
ZapfHumanist601(Optima)bop
Zurich(Univers)
bun
Venetian301(Centaur)
bur
Fontfont
Dingbests*
dingbests
InterOffice*
interoffice
QTypeExtendedBook*
qtype
Linotype
AdobeGaramondLT
pad
AldusLT
las
ITCCharter
lch
FrutigerNext
lf9
FuturaLTLight/Book/Bold/BoldCond
pfu
StempelGaramondLT
leg
MeridienLT
lmd
MeliorLT
lml
Minion
lmn
Myriad
pmy
ITCOfficinaSans
lo9
OptimaNova(Regular+Italic)ln9
SabonLT
lsb
SyntaxLT
lsx
ITCZapfChanceryLT
lzc
ZapfEssentialsLT
lze
ZapfinoOne+Ornaments
zap
Monotype
TimesNR,NRSeven,SmallText
mnt
Springer
SMinion+SMyriad*
sfonts
Underware
Dolly
dolly
*esefontsarefreelyavailable,seetheaccompanying.txtfiles.
Table21.5:ListofWalterSchmidt’sPostScriptType1supportpackages
21.4.1 InstallingOptima
AsanexampleofhowtouseWalter’sfiles,letusinstallhisOptimabundle,whichincludestheLAT
E
Xsup-
portfilesrequiredforusingthethreeAdobeOptimaPostScriptType1fontsOptima,Optima-Medium,
andOptima-Bold.
44
ch-psextra1.tex,v:2.24
2007/08/14
C# PDF Page Extract Library: copy, paste, cut PDF pages in C#.net
C#.NET PDF Library - Copy and Paste PDF Pages in C#.NET. Easy to C#.NET Sample Code: Copy and Paste PDF Pages Using C#.NET. C# programming
cut pages from pdf; delete blank pages from pdf file
C# PDF Page Rotate Library: rotate PDF page permanently in C#.net
page, it is also featured with the functions to merge PDF files using C# .NET, add new PDF page, delete certain PDF page, reorder existing PDF pages and split
add and delete pages in pdf; delete page from pdf document
21.4 UsingcommercialPostScriptType1fontswithLAT
E
X
pop:
Aoating eldfor£45. ¡THESILLYFOXHAD1234567890JUMPS!
¿AreKafka’sSchloßand ˘sop’s uvres naïvevis›à›visa
dæmonicphnix’s
rôleanditssoufØs?
bmd:
Aoatingeld for£45. ¡THE SILLY FOXHAD1234567890 JUMPS!
¿Are Kafka’s Schloßand˘sop’s uvresnaïvevis›à›visadæmonicphnix’s
rôleanditssoufØs?
bun:
Aoatingeldfor£45. ¡THE SILLY FOX HAD 1234567890
JUMPS!¿AreKafka’s Schloßand˘sop’s uvres naïvevis›à›vis a
dæmonic phnix’s rôleanditssoufØs?
Figure21.16:TextsampleofAdobeOptimaandBitstreamMeridienandUnivers
21.4.1.1 GettingthePostScriptType1fontinstances
Asmentioned,Walter’sfilesdonotcontainthefontinstances.InthecaseofOptimayouwouldhaveto
buythemfromAdobeinPostScriptType1orOpenTypeformat.Intheformercaseyoucanjustinstall
the
.pfb
files, asindicatedlater.If you getAdobe’sOpenTypevariantyou should extractthe Type1
informationfromthefont,e.g.,withthe
cfftot1
programofthelcdfTypetools(see
http://www.lcdf.
org/type/
.is programtranslates anOpenTypefontfromitsCompactFont Format (CFF)tothe
usualPostScriptType1format.ItisusedinSection21.6.3withtheMinionProfonts).
21.4.1.2 Installingthefontfiles
ePostScriptType1fontfilesaretobenamedproperlyforusewith LAT
E
X. elistofthePostScript
fullnameforthe four font instances (withthe corresponding“berry”name inparentheses)follows:
Optima(popr8a.pfb),Optima-Medium(popm8a.pfb),Optima-Bold(popb8a.pfb),and Optima-
Black(popc8a.pfb).ese.pfbfilesshouldbecopiedtothedirectorytreewithupdatesofyourT
E
X
system(thewaythisissetupdependsonyourlocalsetup),¹
Nowthatwehavethefontglyphs,wecangettheLAT
E
Xsupportfilesinthearchive
pop.zip
²and
installthem.Proceedbyplacingthisfileatthetopofthedirectorytree:
texmf-updates
or
local-
texmf
and
unzip
it.Inthiswayallfileswillendupintheappropriatedirectories.
InordertousetheOptima fontsyouhavetoinformthesystem abouttheir presence. erefore
you should updatetheT
E
Xfiledatabaseandregister the
pop.map
file, whichdefinestheassociation
betweenthe font metrics used bythe T
E
Xengineand thePostScriptType 1font glyphs tobeput in
thefinaloutputfile.On
teTeX
-basedsystems,suchasT
E
XLiveandMiKT
E
X,thefollowingcommands
shouldbeexecuted:
texhash
updmap --enable Map pop.map
OtherT
E
Xdistributionshavesimilarcommandsforupdatingthesystemdirectories.
Togetherwiththe AdobeOptimafont(
pop
),we alsoinstalltheBitstreamLatin725(Meridien,
Berryname:
bmd
)andtheBitstream“Zurich”(Univers)fontfamily(Berryname:
bun
,seeTable21.5
ontheprecedingpage)bygettingtherelevantfilesfromCTAN,copyingthemintotheupdateT
E
Xtree,
andupdatingthedatabases,asshownaboveforOptima(first
rehash
,then
updmap
ontherelevant
file).AshorttextexampleforthethreefontstogetherisdisplayedinFigure21.16.
¹
T
E
XLiveonUnix:
/TL2007/texmf-updates/fonts/type1/adobe/pop
MiKT
E
XonWindows
\TL2007\localtexmf\fonts\type1\adobe\pop
²AvailablefromCTAN:/fonts/psfonts/w-a-schmidt/bop.zip.
ch-psextra1.tex,v:2.24
2007/08/14
45
VB.NET PDF Page Replace Library: replace PDF pages in C#.net, ASP.
C# File: Merge PDF; C# File: Split PDF; C# Page: Insert PDF pages; C# Page: Delete PDF pages; C# Read: PDF Text Extract; C# Read: PDF
delete page in pdf file; delete pages pdf preview
C# PDF Page Replace Library: replace PDF pages in C#.net, ASP.NET
Description: Delete consecutive pages from the input PDF file starting at specified position. Parameters: Name, Description, Valid Value.
delete pages from pdf acrobat; delete pages from a pdf in preview
21
POSTSCRIPTFONTSANDBEYOND
m/n
àbcdØfghIJKLMNÔP12345üyZ
m/it
àbcdØfghIJKLMNÔP12345üyZ
mc/n
àbcdØfghIJKLMNÔP12345üyZ
mc/it
àbcdØfghIJKLMNÔP12345üyZ
mx/n
àbcdØfghIJKLMNÔP12345üyZ
mec/n
àbcdØfghIJKLMNÔP12345üyZ
b/n
àbcdØfghIJKLMNÔP12345üyZ
b/it
àbcdØfghIJKLMNÔP12345üyZ
bc/n
àbcdØfghIJKLMNÔP12345üyZ
bc/it
àbcdØfghIJKLMNÔP12345üyZ
bx/n
àbcdØfghIJKLMNÔP12345üyZ
bec/n
àbcdØfghIJKLMNÔP12345üyZ
eb/n
àbcdØfghIJKLMNÔP12345üyZ
eb/it
àbcdØfghIJKLMNÔP12345üyZ
ebx/n
àbcdØfghIJKLMNÔP12345üyZ
ub/n
àbcdØfghIJKLMNÔP12345üyZ
ubx/n
àbcdØfghIJKLMNÔP12345üyZ
l/n
àbcdØfghIJKLMNÔP12345üyZ
l/it
àbcdØfghIJKLMNÔP12345üyZ
lc/n
àbcdØfghIJKLMNÔP12345üyZ
lc/it
àbcdØfghIJKLMNÔP12345üyZ
lec/n
àbcdØfghIJKLMNÔP12345üyZ
Figure21.17:WeightsandwidthsavailablefortheBitstreamUniversfont
WecanhaveacloserlookattheUniversfont,asansserifdesignofAdrianFrutigerthatisbysome
consideredasoneofthegreatesttypographicachievementsofthesecondhalfofthe20thcentury.e
typefacecomesinalargevarietyofweights.eweightsandwidthssupportedbythe
bunivers
package
areshowninFigure21.17(LAT
E
X’sNFSSschemeisusedtolabelthesamples,seealsoTables21.12and
21.13).
21.5 UsingTrueTypefontswithpdfT
E
X
Some commercial T
E
Xsystems support TrueType fonts natively, for instance, Richard J. Kinch’s
TrueT
E
X
(
http://www.truetex.com
)on Microso Windows. XeT
E
X(
http://scripts.sil.
org/xetex
),beingdevelopedonAppleMacIntoshOSX,butwith aporttoLinuxbeingannounced
(Summer 2006), has built-insupport for OpenTypefonts, and thuscanalsohandle TrueTypefonts.
On theother hand, someworkhas beendone totranslateTrueTypefontsto PostScript Type 1and
install the latter, e.g., Harald Harders’sUsing TrueTypefontswithT
E
X via PostScript Type 1 format
(
http://www.tug.org/tex-archive/info/TrueType/
).
21.5.1 ApredefinedsetupforusingMicroso WindowsTrueTypefonts
ChristopheCaignaert developed aprocedureto generatetheLAT
E
XNFSSfilesneededforusingTrue-
Typefileswith
pdflatex
.Heprepared T
E
Xfont metrics(
.tfm
),fontdefinition(
.fd
)andmap(
.map
)
filesformanyMicrosoWindowsfonts.¹
¹eycanbedownloadedfromhttp://c.caignaert.free.fr/WindowsFonts.zip.escriptsusedforgenerating
.fdand.mapfilesareavailableashttp://c.caignaert.free.fr/shells.zip.eprocedureforinstallingaTrue-
Typefontwith LAT
E
Xor pdfT
E
X,includingkerningandligaturetables,is explainedinhttp://c.caignaert.free.fr/
Install-ttf-Font.pdf.Christophe alsodevelopedsomematerialfortheDafontsetoffreewareandshareware fonts
(www.dafont.com),withinstalationinstructions(http://c.caignaert.free.fr/HowTo.pdf)andtherelevant.tfm,
.map,and .fdfiles(http://c.caignaert.free.fr/HowTo-Dafont.pdf).
46
ch-psextra1.tex,v:2.24
2007/08/14
21.5 UsingTrueTypefontswithpdfT
E
X
InFigure21.18onthefollowingpagewetypesetavariantofthetextofFigure21.2onpage37using
pdflatex
andTrueTypefontsthatareavailableonmost MicrosoWindowssystems.Wedownloaded
ChristopheCaignaert’sfile
WindowsFonts.zip
(seeabove)andplacedthefontandmapfilesinthe
relevant directories, updated the T
E
Xfiles databaseand ran thefollowing file (
ttftest.tex
)with
pdflatex
(thefontlabelsareexplainedinthefigure.)
\newcommand{\MyText}[1]{\fontfamily{#1}\selectfont\fbox{#1:%
} A floating field for \pounds45. \textbf{!‘THE SILLY FOX HAD
12345--67890 JUMPS!} --- ?‘Are Kafka’s Schlo{\ss} and {\AE}sop’s
{\OE}uvres na{\”\i}ve vis-\‘{a}-vis a \emph{d{\ae}monic ph{\oe}nix’s
\textbf{r\^{o}le} and its souffl\’{e}s?}\par}
\MyText{arl}\MyText{bka}\MyText{bko}\MyText{crr}\MyText{ctg}\MyText{frk}
\MyText{grg}\MyText{lucc}\MyText{mgm}\MyText{ppt}\MyText{tim}\MyText{vdn}
Running
pdflatex
onthisfiledisplaysthefollowinglogwithMiKT
E
XonMicrosoWindows.
This is pdfeTeX, Version 3.141592-1.21a-2.2
(MiKTeX 2.4) entering extended mode
(ttftest.tex LaTeX2e <2003/12/01>
Babel <v3.8g> and hyphenation patterns for english, dumylang,
nohyphenation, german, ngerman, french, loaded.
(C:\TL2005\texmf\tex\latex\base\article.cls
Document Class: article 2004/02/16 v1.4f
Standard LaTeX document class
(C:\TL2005\texmf\tex\latex\base\size10.clo))
(C:\TL2005\texmf\tex\latex\base\fontenc.sty
(C:\TL2005\texmf\tex\latex\base\t1enc.def))
No file ttftest.aux.
(C:\TL2005\localtexmf\tex\latex\winfonts\t1arl.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1bka.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1bko.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1crr.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1ctg.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1frk.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1grg.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1lucc.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1mgm.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1ppt.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1tim.fd)
(C:\TL2005\localtexmf\tex\latex\winfonts\t1vdn.fd)
[1{psfonts.map}] (ttftest.aux) ){T1-WGL4.enc}
<verdanaz.ttf><verdanai.ttf><verdanab.ttf><verdana.ttf>
<timesbi.ttf><timesi.ttf><timesbd.ttf><times.ttf>
<perpetuabi.ttf><perpetuait.ttf><perpetuabd.ttf><perpetua.ttf>
<garabd.ttf><garait.ttf><gara.ttf>
<ltypeo.ttf><ltypebo.ttf><ltypeb.ttf><ltype.ttf>
<georgiaz.ttf><georgiai.ttf><georgiab.ttf><georgia.ttf>
<fradmit.ttf><frabkit.ttf><fradm.ttf><frabk.ttf>
<gothicbi.ttf><gothici.ttf><gothicb.ttf><gothic.ttf>
<courbi.ttf><couri.ttf><courbd.ttf><cour.ttf>
<bookosbi.ttf><bookosi.ttf><bookosb.ttf><bookos.ttf>
<antquabi.ttf><antquai.ttf><antquab.ttf><bkant.ttf>
<arialbi.ttf><ariali.ttf><arialbd.ttf><arial.ttf>
Output written on ttftest.pdf (1 page, 578030 bytes).
ch-psextra1.tex,v:2.24
2007/08/14
47
21
POSTSCRIPTFONTSANDBEYOND
arl:
Aoatingeldfor¿45. ½THESILLYFOX HAD1234567890JUMPS!
¾AreKafka's Schloÿ andÆsop's×uvresnaïvevis-à-visadæmonicph÷nix's
rôleanditssoufés?
bka:
Aoatingeldfor¿45. ½THESILLYFOXHAD1234567890JUMPS!
¾AreKafka'sSchloÿand Æsop's×uvresnaïvevis-à-visadæmonicph÷nix'srôle
anditssoufés?
bko:
Aoatingeldfor ¿45. ½THE SILLY FOX HAD 1234567890
JUMPS! ¾Are Kafka's Schloÿ and Æsop's ×uvres naïve vis-à-vis a
dæmonicph÷nix'srôleand itssoufés?
crr:
A floating field for ¿45.
!`THE SILLY FOX HAD
12345--67890 JUMPS! --- ?`Are Kafka's Schloÿ and Æsop's
×uvres naïve vis-à-vis a dæmonic ph÷nix's rôle and its
soufflés?
ctg:
Aoatingeld for¿45. ½THESILLYFOX HAD1234567890JUMPS!
¾AreKafka'sSchloÿandÆsop's×uvresnaïvevis-à-visa dæmonic
ph÷nix'srôleanditssoufés?
frk:
Aoatingeldfor¿45. ½THESILLYFOXHAD1234567890JUMPS!¾Are
Kafka'sSchloÿandÆsop's×uvresnaïvevis-à-visa dæmonicph÷nix'srôleand
itssoufés?
grg:
Aoatingeldfor¿45. ½THESILLYFOXHAD1234567890
JUMPS!¾AreKafka'sSchloÿandÆsop's×uvresnaïvevis-à-visadæmonic
ph÷nix'srôleanditssoufés?
lucc:
A floating field for ¿45. ½THE SILLY FOX HAD
1234567890 JUMPS!  ¾Are Kafka's Schloÿ and Æsop's
×uvres naïve vis-à-vis a dæmonic ph÷nix's rôle and its
soufflés?
mgm:
Aoatingeldfor¿45. ½THESILLYFOXHAD1234567890JUMPS!
¾AreKafka'sSchloÿandÆsop's×uvresnaïvevis-à-visadæmonicph÷nix'srôleandits
soufés?
ppt:
Aoatingeldfor¿45. ½THESILLYFOXHAD1234567890JUMPS!¾Are
Kafka'sSchloÿandÆsop's×uvresnaïvevis-à-visadæmonicph÷nix'srôleanditssoufflés?
tim:
Afloating field for¿45. ½THESILLYFOXHAD1234567890 JUMPS! 
¾Are Kafka's Schloÿ and Æsop's ×uvres naïve vis-à-vis a dæmonic ph÷nix'srôleand
itssoufflés?
vdn:
Aoating eldfor ¿45. ½THE SILLY FOX HAD
1234567890 JUMPS!  ¾Are Kafka's Schloÿ and Æsop's ×uvres
naïve vis-à-vis a dæmonic ph÷nix's rôle and its soufés?
arl
Arial
arial.ttf
bka
BookAntiqua
bkant.ttf
bko
BookManOldStyle
bookos.ttf
crr
CourierNew
cour.ttf
ctg
CenturyGothic
gothic.ttf
frk
FranklinGothicBook
frabk.ttf
grg
Georgia
georgia.ttf
lucc
LucidaSansTypewriterRegular
ltype.ttf
mgm
Garamond
gara.ttf
ppt
Perpetua
perpetua.ttf
tim
TimesNewRoman
times.ttf
vdn
Verdana
verdana.ttf
Figure21.18:ExampleofusingTrueTypefontswith
pdflatex
48
ch-psextra1.tex,v:2.24
2007/08/14
21.5 UsingTrueTypefontswithpdfT
E
X
Transcript written on ttftest.log.
e
T1
encodingis used and the various font definitionfiles are loaded inthe same sequence
asthefontsarereferencedintheinputfile. Aerthe typesettingstage
pdflatex
has togethold of the
fontglyphs,andhenceconsultsthe
psfonts.map
file,whereitfindstheactualTrueTypefilesnames
and theencodingmap (
T1-WGL4.enc
)to beused for outputtingthe correctcharacters. Finally, all
TrueTypefont files areloaded to extract the actualglyphs and transfer them tothe output PDF file
ttftest.pdf
.
21.5.2 Doingityourself: underthehood
For those interested in settingup a TrueType font whose LAT
E
Xsupport files are not inChristophe
Caignaert’sdistribution,asdescribedintheprevioussection,wedescribenowbrieflyhowtoproceed.¹
Letus suppose wewant tousetheTimesNewRomanTrueTypefont file
times.ttf
(thisfileis
presentinthesystemfontdirectoryofMicrosoWindowssystemsandcanbecopiedtoalocaldirec-
toryfor convenience).First wemaketheT
E
Xfontmetricfilewiththeprogram
ttf2tfm
.is program
usestheencoding
T1-WGL4.enc
(
-T
switch)andgeneratesthevirtualpropertieslistfile
timmn8t.vpl
(
-v switch
).e
.tfm
file
times.tfm
hasnokerningorligatureinformation.
> ttf2tfm times.ttf -q -T T1-WGL4.enc -v timnr8t.vpl times.tfm
ttf2tfm: WARNING: Cannot find character ‘compwordmark’
specified in input encoding.
ttf2tfm: WARNING: Cannot find character ‘perthousandzero’
specified in input encoding.
ttf2tfm: WARNING: Cannot find character ‘dotlessj’
specified in input encoding.
ttf2tfm: WARNING: Cannot find character ‘ff’
specified in input encoding.
ttf2tfm: WARNING: Cannot find character ‘ffi’
specified in input encoding.
ttf2tfm: WARNING: Cannot find character ‘ffl’
specified in input encoding.
ttf2tfm: WARNING: Cannot find character ‘visualspace’
specified in input encoding.
times
times.ttf Encoding=T1-WGL4.enc
Ligaturesandkerningisaddedbyrunningthe
.vpl
filethroughthe
vptovf
program,whichgen-
eratesthedesired
.tfm
file
timmn8t.tfm
.
> vptovf timmn8t.vpl timmn8t.vf timmn8t.tfm
This is VPtoVF, Version 1.5 (MiKTeX 2.4)
’000 ’001 ’002 ’003 ’004 ’005 ’006 ’007
… many lines deleted
’367 ’370 ’371 ’372 ’373 ’374 ’375 ’376
’377.
I had to round some heights by 0000010 units.
I had to round some depths by 0000001 units.
isprocedureforgeneratingthe
.tfm
filehastoberepeatedforallvariantsofagivenTrueType
font,eachtimeusingthecorrect“Berry”nameforthe
.tfm
filename(seeSection21.7).esenames
¹SeealsoDamir Rakityansky’s webpageUsingTrueTypefontswith T
E
X(LAT
E
X)andpdfT
E
X (pdfLAT
E
X)(http://www.
radamir.com/tex/ttf-tex.htm).
ch-psextra1.tex,v:2.24
2007/08/14
49
21
POSTSCRIPTFONTSANDBEYOND
forTimesNewRomancanbeseenasthefirst entryonthefourlinesthathavebeenenteredinthefile
psfonts.map
.ethirdentryoneachlineistheactualnameoftheTrueTypefontonthesystem.
timmn8t
Timons
<times.ttf
<T1-WGL4.enc
timbn8t
TimonsBold
<timesbd.ttf <T1-WGL4.enc
timmit8t TimonsItalique
<timesi.ttf
<T1-WGL4.enc
timbit8t TimonsBoldItalique <timesbi.ttf <T1-WGL4.enc
ese“Berry”names are alsoused inthe font definitionfilewhich defines for each font family
themappingbetweenfonts instances and L
A
T
E
Xfont parameters(shapes and series).isfilecanbe
compared totheonefor thePostScript Type1fontTimesRoman(seeSection21.2.7), wherewealso
generatedsmallcapitalsand slantedvariantswiththePostScriptmachinery,whereasherewemerely
substitutethese variants with bold upright (lines
10
and
12
)and italic (lines
11
and
13
). ebold
extendedseriesissubstitutedwiththeboldvariant(lines
15
18
).
1
\ProvidesFile{t1tim.fd}[2003/11/11 font definitions for T1/tim.]
2
3
\DeclareFontFamily{T1}{tim}{}
4
5
\DeclareFontShape{T1}{tim}{m} {n}{<-> timmn8t}{}
6
\DeclareFontShape{T1}{tim}{b} {n}{<-> timbn8t}{}
7
\DeclareFontShape{T1}{tim}{m}{it}{<-> timmit8t}{}
8
\DeclareFontShape{T1}{tim}{b}{it}{<-> timbit8t}{}
9
10
\DeclareFontShape{T1}{tim}{m}{sc}{<->ssub * tim/b/n}{}
11
\DeclareFontShape{T1}{tim}{m}{sl}{<->ssub * tim/m/it}{}
12
\DeclareFontShape{T1}{tim}{b}{sc}{<->ssub * tim/b/n}{}
13
\DeclareFontShape{T1}{tim}{b}{sl}{<->ssub * tim/b/it}{}
14
15
\DeclareFontShape{T1}{tim}{bx} {n}{<->ssub * tim/b/n}{}
16
\DeclareFontShape{T1}{tim}{bx}{sc}{<->ssub * tim/b/n}{}
17
\DeclareFontShape{T1}{tim}{bx}{sl}{<->ssub * tim/b/it}{}
18
\DeclareFontShape{T1}{tim}{bx}{it}{<->ssub * tim/b/it}{}
AsexplainedpreviouslyforthecaseofinstallingPostScriptType1filestheseLAT
E
Xsupportfilesmust
be copies below the
localtexmf
directorytotherelevant places¹Oncethefilesareintheir correct
locationand we updated the T
E
Xfile database (
rehash
)(the have entered the map entries for the
Truetype files directlyinto
psfonts.map
so no action is required here)we canuse thesetup ona
smalltestfile
fonttest.tex
.etypesetresultindisplayedinFigure21.19onthefacingpage.
> pdflatex fonttest.tex
This is pdfeTeX, Version 3.141592-1.21a-2.2 (MiKTeX 2.4)
entering extended mode
(fonttest.tex
LaTeX2e <2003/12/01>
Babel <v3.8g> and hyphenation patterns for english, dumylang, nohyphenation, ge
rman, ngerman, french, loaded.
(C:\TL2005\texmf\tex\latex\base\article.cls
Document Class: article 2004/02/16 v1.4f Standard LaTeX document class
(C:\TL2005\texmf\tex\latex\base\size10.clo))
¹For instance, for the .fd file, localtexmf\tex\latex\winfonts\t1tim.fd, for the Truetype files local-
texmf\fonts\truetype\winfonts\timesnewroman\times.ttf,etc.,forthe .tfm files(andsimilarlyforthe .vf
files)localtexmf\fonts\tfm\winfonts\timesnewroman\timmn8t.tfm,etc.
50
ch-psextra1.tex,v:2.24
2007/08/14
Documents you may be interested
Documents you may be interested