Zmena velikosti fontu
Vit Koksa
vit.koksa na i.cz
Středa Červenec 23 11:11:41 CEST 2003
Dekuji panu Koskovi za reseni zmeny velikosti pisma v XSL
a za navedeni vhodnym smerem. Protoze pro generaci RTF pouzivam DSSSL,
provedl jsem upravy v procedure $process-cell$.
Udaj v atributu "tabstyle" elementu "table" ted udava, jakym faktorem se ma
vynasobit bezna velikost pisma. (napr. "0.8", ...).
Uprava spocivala ve vytvoreni a pouziti promenne "size":
(define ($process-cell$ entry preventry row overhang)
(let* ( ...
(size
(let
(
(tabstyle
(attribute-string (normalize "tabstyle") (ancestor (normalize
"table")))
)
)
(if (string? tabstyle)
(let
(
(number (length-string-number-part tabstyle))
)
(if (string=? number "")
%bf-size%
(* (string->number number) %bf-size%)
)
)
%bf-size%
)
)
)
)
...
(make paragraph
font-family-name: font-name
font-weight: weight
font-size: size
quadding: align
.....
)
S pozdravem,
Vit Koksa
Jirka Kosek wrote:
> Vit Koksa wrote:
>
>> Kvuli velke sirce nekterych tabulek v dokumentu bych chtel docilit
>> zmenseni fontu znaku v takovych tabulkach (neco na zpusob SMALL v HTML).
>> V ostatnich (mene rozsahlych)
>> tabulkach by se mela zachovat nezmensena velikost pisma.
>> Neprisel jsem na zpusob, jak by bylo mozne menit v DocBooku velikost
>> pisma
>> v obsahu ruznych instanci tehoz elementu. Da se toho prosim prece jen
>> nejak
>> dosahnout?
>
>
> Můžete si druh tabulky označit pomocí atributu role nebo tabstyle. Např.:
>
> <table tabstyle="tinytable">
> ...
> </table>
>
> Ve stylech si pak upravíte šablonu, tak aby změnu stylu promítla do HTML:
>
> <xsl:template match="tgroup" name="tgroup">
> <div class="{../@tabstyle}">
> <xsl:apply-imports/>
> </div>
> </xsl:template>
>
> V externím CSS pak můžete přidat pravidla, která změní vzhled tabulky,
> která je takto označena:
>
> .tinytable td, .tinytable th { font-size: 80% }
>
Další informace o konferenci Docbook