<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Many thanks, Zdeněk. For the benefit of both posterity and
non-CZ speakers, I append Google's translation of your article :<br>
** Phil.<br>
--------</p>
<p><span id="result_box" class="" lang="en"><span title="Tisk obrysu
písma v PDF
"><b>Print outline of the font in PDF</b><br>
</span><span title="Zdenek Wagner
"><i>Zdenek Wagner</i></span></span></p>
<p><span id="result_box" class="" lang="en"><span title="Zdenek
Wagner
"></span><span title="Clánek ukazuje možnost vykreslení obrysu
písma prímým využitím operátoru
">The article shows the possibility of rendering the contour
of the font by direct use of the operator<br>
</span><span title="PDF.">PDF. </span><span title="Je vysvetlen
zpusob použití v ovladacích rodiny (x)dvipdfm(x)
">It explains how to use the family of drivers (x) dvipdfm (x)<br>
</span><span title="i v pdfTEXu.">also in pdfTEX. </span><span
title="Jsou zmíneny možné komplikace a je uveden prípad, kdy
nelze
">Possible complications are mentioned and the case can not be
stated<br>
</span><span title="metodu použít.
">use the method.<br>
</span><span title="Klícová slova
">Keywords<br>
</span><span title="PDF, obrysy písma, výpln písma, iniciály,
Open Type, Type 1
">PDF, font contours, font fill, initials, Open Type, Type 1</span></span></p>
<p><span id="result_box" class="" lang="en"><span title="PDF, obrysy
písma, výpln písma, iniciály, Open Type, Type 1
"></span><span title="1. Úvod
">1. Introduction<br>
</span><span title="Tiskoviny nekterých typu, zejména reklamní,
ale i beletrie, obcas vyžadují, aby
">Prints of some type, especially advertising, but also
fiction, occasionally require it<br>
</span><span title="cásti textu byly zvýrazneny méne obvyklým
zpusobem.">parts of the text were highlighted in a less usual
way. </span><span title="Príkladem takového
">An example of such<br>
</span><span title="zvýraznení je iniciála v úvodu tohoto
odstavce.">the highlight is the initials at the beginning of
this paragraph. </span><span title="Není vytištena speciálním
fontem,
">It is not printed with a special font,<br>
</span><span title="jedná se o znak volne širitelného písma TEX
Gyre Adventor.">it is a TEX Gyre Adventor wild-type font. </span><span
title="Rozdíl spocívá v tom,
">The difference lies in the fact,<br>
</span><span title="že jsme znak nevytiskli bežným zpusobem, ale
nechali jsme v PDF zobrazit obrys,
">that we did not print the character in the usual way, but we
let the PDF show the outline,<br>
</span><span title="který jsme vyplnili jinou barvou.">which we
filled in a different color. </span><span title="To je
umožneno tím, že fonty ve formátech
">This is enabled by fonts in formats<br>
</span><span title="Type 1 a OpenType definují znaky pomocí
obrysu, které jsou pri normálním tisku
">Type 1 and OpenType define characters using the outline that
are in normal print<br>
</span><span title="vyplneny zvolenou barvou.">filled in by the
selected color. </span><span title="My jsme pouze použili
jiný zpusob vykreslení, který
">We just used another way of rendering, which<br>
</span><span title="si detailne popíšeme v následujícím textu.
">we will describe in detail below.</span></span></p>
<p><span id="result_box" class="" lang="en"><span title="si detailne
popíšeme v následujícím textu.
"></span><span title="2. Zobrazení obrysu písma v PDF
">2. Display the font contour in PDF<br>
</span><span title="Pri zobrazení obrysu písma využijeme toho,
že pomocí speciálních príkazu lze do
">When viewing the contour of the font, we will use the
special command to<br>
</span><span title="výstupu prímo vkládat operátory PDF.">output
directly to PDF operators. </span><span title="Stejne jako v
PostScriptu jsou parametry
">As with PostScript, there are parameters<br>
</span><span title="uvádeny pred jménem operátoru.
">before the name of the operator.<br>
</span><span title="V dokumentaci PDF[1] najdeme operátor Tr,
jehož popis není zrovna srozumitelný.
">In the PDF documentation [1] we find Tr operator, whose
description is not very comprehensible.<br>
</span><span title="A práve tento operátor urcuje, jakým
zpusobem je písmo zobrazeno.
">And this operator determines how the font is displayed.<br>
</span><span title="Obvyklá hodnota 0 zpusobí klasické vyplnení
tak, jak to vidíte prakticky ve
">The usual value of 0 causes a classic fill as you see it
virtually in<br>
</span><span title="všech textech.">of all texts. </span><span
title="Nastavením hodnoty 1 zobrazíme obrys bez výplne,
hodnota 2
">Setting a value of 1 will show the outline without fill,
value 2<br>
</span><span title="umožnuje zobrazení obrysu v jedné barve a
výplne v jiné.">allows the contour to be displayed in one
color and the fill in another. </span><span title="Tlouštku
linky nastavíme
">Set the line thickness<br>
</span><span title="operátorem w, pricemž jednotkou je big
point.">operator w, with the unit being a big point. </span><span
title="Barvu nastavíme bud
">Set the color either<br>
</span><span title="operátorem g a G (šedá, operátor má jeden
parametr), nebo rg a RG (barevný
">operator g and G (gray, the operator has one parameter), or
rg and RG (color<br>
</span><span title="prostor RGB, tri parametry), nebo k a K
(barevný prostor CMYK, ctyri parametry).
">RGB space, three parameters), or k and K (CMYK color space,
four parameters).<br>
</span><span title="Operátory zapsané malými písmeny nastavují
barvu výplne, operátory
">Operators written in small letters set the fill color,
operators<br>
</span><span title="psané velkými písmeny urcují barvu linky.">in
capital letters, determine the color of the line. </span><span
title="Iniciála v úvodním odstavci má">The initiator has the
opening paragraph</span></span><br>
<span id="result_box" class="" lang="en"><span title="Iniciála v
úvodním odstavci má"><span id="result_box" class="" lang="en"><span
title="tedy nastavení 2 Tr .8 w 0 .1 1 .1 k .8 1 0 0 K.
Pred tímto nastavením
">setting 2 Tr .8 w 0 .1 1 .1 k .8 1 0 0 K. Before this
setting<br>
</span><span title="je uschován grafický stav operátorem q a
po tisku iniciály je grafický stav obnoven
">the graphical state is stored by the operator q, and
after printing the initials, the graphical state is
restored<br>
</span><span title="operátorem Q. Vše vypadá velmi
jednoduše.">operator Q. Everything looks very simple. </span><span
title="Stací tedy vysvetlit, jak zmínené
">So let us explain how it is mentioned<br>
</span><span title="príkazy dostaneme do PDF.
">we will get the commands to PDF.</span></span></span></span></p>
<p><span id="result_box" class="" lang="en"><span title="Iniciála v
úvodním odstavci má"><span id="result_box" class="" lang="en"><span
title="príkazy dostaneme do PDF.
"></span><span title="2.1.">2.1. </span><span
title="Zobrazení obrysu v ovladacích (x)dvipdfm(x)
">Contour view in driver (x) dvipdfm (x)<br>
</span><span title="Zacneme jednodušším prípadem, kterým je
rodina ovladacu (x)dvipdfm(x) [2].
">We start with the simpler case of the driver family (x)
dvipdfm (x) [2].<br>
</span><span title="Efekt lze tedy využít i v X ETEXu.">The
effect can also be used in X ETEX. </span><span
title="Následující ukázku
">The following demonstration<br>
</span><span title="Nekolik slov si vytiskneme v obrysech.
">We will print out a few words in outline.<br>
</span><span title="jsme vytvorili pomocí príkazu
">we created it with a command<br>
</span><span title="{\centering \Large
\fontfamily{qag}\bfseries
">{\ centering \ Large \ fontfamily {qag} \ bfseries<br>
</span><span title="Nekolik\special{pdf: code q 2 Tr 0.7 w 0
.5 .5 .05 k 1 1 0 .1 K}
">Several \ special {pdf: code q 2 Tr 0.7 w 0 .5 .5 .05 k
1 1 0 .1 K}<br>
</span><span title="slov\special{pdf: code 0 0 1 0 k 1 0 1
.1 K}
">words \ special {pdf: code 0 0 1 0 k 1 0 1 .1 K}<br>
</span><span title="si vytiskneme\special{pdf: code Q}
v~obrysech.\par}
">we will print \ special {pdf: code Q} in outline. \ par}<br>
</span><span title="Ve starších verzích ovladacu
(x)dvipdfm(x) není v príkazu \special dostupná
">In older versions of driver (x), dvipdfm (x) is not
available in the \ special command<br>
</span><span title="funkce code, ale pouze put, která však
vkládá obsah mezi q a Q, címž je
">the code function, but only the put, but which inserts
the content between q and Q, that is<br>
</span><span title="požadovaný efekt ztracen.">the desired
effect is lost. </span><span title="Lze to napravit
jednoduchým trikem, kdy tyto automaticky
">It can be remedied by a simple trick, when these
automatically<br>
</span><span title="vložené operátory eliminujeme párovým
operátorem.">Inserted operators are eliminated by a paired
operator. </span><span title="V takovém prípade
">In that case<br>
</span><span title="místo \special{pdf: code q 2 Tr}
napíšeme upravený kód s pridanými operátory
">instead of \ special {pdf: code q 2 Tr}, we will write
the modified code with the added operators<br>
</span><span title="\special{pdf: put Q q 2 Tr q}.">\
special {pdf: Put Q q 2 Tr q}. </span><span title="Príkaz
\special{pdf: put Q} žádnou
">The command \ special {pdf: put Q} none<br>
</span><span title="modifikaci nepotrebuje.
">does not need modification.</span></span></span></span></p>
<p><span id="result_box" class="" lang="en"><span title="Iniciála v
úvodním odstavci má"><span id="result_box" class="" lang="en"><span
title="modifikaci nepotrebuje.
"></span><span title="2.2.">2.2. </span><span
title="Zobrazení obrysu v pdfTEXu
">Outline view in pdfTEX<br>
</span><span title="Inspirováni predchozí ukázkou napíšeme
kód mechanicky s použitím primitivu
">Inspired by the previous example, we write the code
mechanically using the primitive<br>
</span><span title="\pdfliteral [3] takto:
">\ pdfliteral [3] as follows:<br>
</span><span title="{\centering \Large
\fontfamily{qag}\bfseries
">{\ centering \ Large \ fontfamily {qag} \ bfseries<br>
</span><span title="Jedno\pdfliteral{q 2 Tr 0.7 w 0 0 1 0
k~1 0 1 .1 K}
">One \ pdfliteral {q 2 Tr 0.7 w 0 0 1 0 k ~ 1 0 1 .1 K}<br>
</span><span title="slovo\pdfliteral{Q} jinak.\par}
">word \ pdfliteral {Q} different. \ par}<br>
</span><span title="Výsledek však nesplní naše ocekávání.">However,
the result does not meet our expectations. </span><span
title="Slovo jinak bude pretišteno pres slovo
">The word will be otherwise overwritten<br>
</span><span title="a navíc se výrazne rozhází sazba zbytku
clánku.">and, in addition, the rate of the remainder of
the article is significantly declining. </span><span
title="Z tohoto duvodu zde ukázka
">For this reason, here is a sample<br>
</span><span title="není, vyzkoušejte si to sami.
">it is not, try it yourself.<br>
</span><span title="Kde se stala chyba?">Where they went
wrong? </span><span title="Rozdíl spocívá v tom, že
pdfTEX opakovane nastavuje
">The difference lies in the fact that pdfTEX is re-set<br>
</span><span title="current transformation matrix, ale
úschovou a obnovením grafického stavu tuto
">current transformation matrix, but saving and restoring
the graphical state of this<br>
</span><span title="snahu znicíme.">we will destroy the
effort. </span><span title="Musíme tedy pdfTEXu ríci, aby
docasne od tohoto nastavování
">We therefore have to tell pdfTEX to temporarily leave
this setup<br>
</span><span title="upustil, cehož dosáhneme vložením
klícového slova page.">dropped, which is achieved by
inserting the page key. </span><span title="Zde je
fungující kód:">Here is the working code:</span></span></span></span><br>
<span id="result_box" class="" lang="en"><span title="Iniciála v
úvodním odstavci má"><span id="result_box" class="" lang="en"><span
title="Zde je fungující kód:"><span id="result_box"
class="" lang="en"><span title="{\centering \Large
\fontfamily{qag}\bfseries
">{\ centering \ Large \ fontfamily {qag} \ bfseries<br>
</span><span title="Jedno\pdfliteral page {q 2 Tr 0.7 w
0 0 1 0 k 1 0 1 .1 K}
">One \ pdfliteral page {q 2 Tr 0.7 w 0 0 1 0 k 1 0 1
.1 K}<br>
</span><span title="slovo\pdfliteral page {Q}
jinak.\par}
">the word \ pdfliteral page {Q} otherwise. \ par}<br>
</span><span title="3. Kdy nelze obrysové písmo použít?
">3. When can not use the contour font?<br>
</span><span title="Popisovaná metoda predpokládá, že
použitý font má formát OpenType nebo
">The method described assumes that the font used is
OpenType or<br>
</span><span title="Type 1. I tehdy se ale muže stát, že
tento postup nelze použít.">Type 1. Even then, it can
happen that this procedure can not be used. </span><span
title="To nastává tehdy,
">This happens,<br>
</span><span title="když se znaky v písmu spojují, jako
je tomu v písmu arabském a v písmech indických
">when the characters in the script merge, as in the
Arabic and Indian scripts<br>
</span><span title="odvozených z písma bráhmí.">derived
from the brahmi. </span><span title="Na obrázku,
obsahujícím prání k muslimskému
">In the picture, which contains a request to the
Muslim<br>
</span><span title="svátku íd v hindštine a urdštine, je
zrejmé, že je zobrazen zpusob, jak je text ze
">in Hindi and Urdu, it is clear that the way in which<br>
</span><span title="znaku složen, nikoliv obrys
výsledného textu.
">character, not the outline of the resulting text.<br>
</span><span title="ईद मुबारक رک ع
">ईद मुबारक رک ع</span></span></span></span></span></span></p>
<p><span id="result_box" class="" lang="en"><span title="Iniciála v
úvodním odstavci má"><span id="result_box" class="" lang="en"><span
title="Zde je fungující kód:"><span id="result_box"
class="" lang="en"><span title="ईद मुबारक رک
ع
"></span><span title="Reference
"><i><b>Reference</b></i><br>
</span><span title="[1] PDF Reference, sixth edition:
Adobe Portable Document Format version 1.7.
">[1] PDF Reference, 6th edition: Adobe Portable
Document Format version 1.7.<br>
</span><span title="Adobe Systems Incorporated, November
2006.
">Adobe Systems Incorporated, November 2006.<br>
</span><span title="[2] Wicks, Mark A. Dvipdfm User’s
Manual.">[2] Wicks, Mark A. Dvipdfm User's Manual. </span><span
title="Version 0.12.4b.">Version 0.12.4b. </span><span
title="September 19,
">September 19,<br>
</span><span title="1999.
">1999.<br>
</span><span title="[3] Thành, Hàn Th´ê;">[3] Thành, Hàn
Th'ê; </span><span title="Rahtz, Sebastian;">Rahtz,
Sebastian; </span><span title="Hagen, Hans;">Hagen,
Hans; </span><span title="Henkel, Hartmut;
">Henkel, Hartmut;<br>
</span><span title="Jackowski,Paweł;">Jackowski, Paweł;
</span><span title="Schröder, Martin.">Schröder, Martin.
</span><span title="The pdfTEX user manual.">The pdfTEX
user manual. </span><span title="Rev.">Roar. </span><span
title="655.
">655.<br>
</span><span title="November 23, 2010.
">November 23, 2010.</span></span></span></span></span></span></p>
<p><span id="result_box" class="" lang="en"><span title="Iniciála v
úvodním odstavci má"><span id="result_box" class="" lang="en"><span
title="Zde je fungující kód:"><span id="result_box"
class="" lang="en"><span title="November 23, 2010.
"></span><b><span title="Summary: Printing the font
outline in PDF
">Summary: Printing the outline font in PDF<br>
</span></b><b><span title="The article presents the
possibility of printing the script outline by direct
usage
">The article presents the possibility of printing
the script outline by direct use<br>
</span></b><b><span title="of PDF operators.">of PDF
operators. </span></b><b><span title="Method of use
in the (x)dvipdfm(m) drivers family as well
">Method of use in the (x) dvipdfm (m) drivers
family as well<br>
</span></b><b><span title="as in pdfTEX is explained.">as
in pdfTEX is explained. </span></b><b><span
title="Possible complications are mentioned and an
example
">Possible complications are mentioned and an
example<br>
</span></b><b><span title="is shown where the method
is inapplicable.
">is shown where the method is inapplicable.<br>
</span></b><b><span title="Key words
">Key words<br>
</span></b><span title="PDF, font outline and fill,
inicial letters, Open Type, Type 1
"><b>PDF, outline and fill font, inline letters, Open
Type, Type 1</b></span></span></span></span></span></span></p>
<p><span id="result_box" class="" lang="en"><span title="Iniciála v
úvodním odstavci má"><span id="result_box" class="" lang="en"><span
title="Zde je fungující kód:"><span id="result_box"
class="" lang="en"><span title="PDF, font outline and
fill, inicial letters, Open Type, Type 1
"><b></b><br>
</span><i><span title="Zdenek Wagner
">Zdenek Wagner<br>
</span></i><i><span title="Ice Bear Soft
">Ice Bear Soft<br>
</span></i><i><span
title="http://icebearsoft.euweb.cz"><a class="moz-txt-link-freetext" href="http://icebearsoft.euweb.cz">http://icebearsoft.euweb.cz</a></span></i></span></span></span></span></span></p>
</body>
</html>