Hi,
Sometime ago, I've tried this code (this applies font-familly='Symbol' when
needed)
<xsl:template match="text()">
<xsl:call-template name="testCaractÃres">
<xsl:with-param name="texte" select="."/>
</xsl:call-template>
</xsl:template>
<xsl:template name="testCaractÃres">
<xsl:param name="texte"/>
<xsl:variable
name="expression">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρςστυφχψωϑϒϕϖ</xsl:variable>
<xsl:variable name="texteTest"
select="translate($texte,$expression,'ΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ')"/>
<xsl:choose>
<xsl:when test="contains($texteTest,'Α')">
<xsl:variable name="texteAvant"
select="substring-before($texteTest,'Α')"/>
<xsl:variable name="positionCar"
select="string-length($texteAvant)+1"/>
<xsl:value-of select="$texteAvant"/><fo:inline
font-weight="normal" font-family="Symbol"><xsl:value-of
select="substring($texte,$positionCar,1)"/></fo:inline><xsl:call-template
name="testCaractÃres">
<xsl:with-param name="texte"
select="substring($texte,$positionCar+1)"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise><xsl:value-of select="$texte"/></xsl:otherwise>
</xsl:choose>
</xsl:template>
Pascal
> -----Message d'origine-----
> De : Jeremias Maerki [mailto:[EMAIL PROTECTED]
> Envoyà : mercredi 9 mars 2005 17:17
>
> On 09.03.2005 17:07:21 [EMAIL PROTECTED] wrote:
> > Ok so I think the only way out it to pre process my xml
> file to mark
> > special characters so that I can them easily find them in my xsl
> > document.
>
> Good idea if that's possible.
>
> > Could another option be to find a font that contains all unicode
> > characters?
>
> Sure, if such a beast exists.
>
> > How difficult is it to embed a special font that would work both on
> > Mac and PC? Do you have any pointers on how to do this?
>
> Simply get a PC-compatible font. It should also work on the
> Mac since FOP doesn't use the Mac's font system in case of
> PDFs. If you have such a font simply follow the instruction
> for custom fonts. HTH
>
> > Thanks,
> >
> > Patrick
> >
> >
> > On 9 mars 05, at 17:01, Jeremias Maerki wrote:
> >
> > > Oops, sorry. Hmm, you've got a problem there. That's actually
> > > something that would (in theory) be handled like this:
> > >
> > > <fo:inline font-family="Helvetica, ZapfDingbats">Some
> text ÃËâ More
> > > text</fo:inline>
> > >
> > > FOP should (again in theory) automatically switch to
> ZapfDingbats if
> > > Helvetica doesn't contain a character. The problem is that FOP
> > > doesn't do that, yet.
> > >
> > > Working around this in XSLT is next to impossible (I
> think), which
> > > leaves a special preprocessor that inserts special fo:inlines as
> > > necessary but in this case you could just as well try to
> implement
> > > that directly in FOP. It'll not be so simple.
> > >
> > > <fx type="head-scratching"/>
> > >
> > > On 09.03.2005 16:49:19 [EMAIL PROTECTED] wrote:
> > >> Hi,
> > >>
> > >> This is not really what I am trying to achieve. I know
> that I can
> > >> handle special characters using the ZapfDingbats font.
> However what
> > >> I don't know to do is parse a text content to encapsulate
> > >> <fo:inline> element each time such a special character is found.
> > >>
> > >> So tranforming:
> > >>
> > >> "Some text ÃËâ More text"
> > >>
> > >> To:
> > >>
> > >> <fo:inline font-family="Helvetica"> Some text <fo:inline
> > >> font-family="ZapfDingbats">ÃËâ</fo:inline> More text </fo:inline>
> > >>
> > >>
> > >> Patrick
> > >>
> > >> On 9 mars 05, at 16:41, Jeremias Maerki wrote:
> > >>
> > >>> Lots of examples in the distribution, for example:
> > >>>
> http://cvs.apache.org/viewcvs.cgi/xml-fop/examples/fo/basic/fonts.fo?
> > >>> rev=1.3&view=markup
> > >>>
> > >>> ...and in the documentation:
> > >>> http://xml.apache.org/fop/fo.html#xml-special-chars
> > >>>
> > >>>
> > >>> On 09.03.2005 10:21:11 [EMAIL PROTECTED] wrote:
> > >>>> Hi,
> > >>>>
> > >>>> I need to display in a pdf file some text that
> contains different
> > >>>> type of characters: some are ascii type but other are special
> > >>>> ones like the 'star' or 'square' characters. I understand from
> > >>>> what I have read that those special characters are not
> available
> > >>>> in the default Helvetica or Courier base font and that
> I need to
> > >>>> use the ZapfDingbats font.
> > >>>>
> > >>>> So what I need to achieve is transform the following
> XML content:
> > >>>>
> > >>>> "Some text ÃâÂÃÅ More text"
> > >>>>
> > >>>> Into:
> > >>>>
> > >>>> <fo:inline font-family="Helvetica"> Some text <fo:inline
> > >>>> font-family="ZapfDingbats">ÃâÂÃÅ</fo:inline> More text
> > >>>> </fo:inline>
> > >>>>
> > >>>>
> > >>>> How can this be done using XSL to create the proper FO
> document
> > >>>> knowing that I don't know in advance what the text to
> translate
> > >>>> looks like and how many 'special' characters it contains (ex
> > >>>> 'asdfÃâÂÃÅasÃâÂÃÂdfÃâÂÃÅasÃâÂÃÂdÃâÂÃâÃâÂÃâfasdÃâÂÃÅ')
> > >>>>
> > >>>> Thanks for any tips!
> > >>>>
> > >>>>
> > >>>> Patrick
> > >>>
> > >>>
> > >>>
> > >>> Jeremias Maerki
> > >>>
> > >>>
> > >>>
> ------------------------------------------------------------------
> > >>> --- To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >>> For additional commands, e-mail: [EMAIL PROTECTED]
> > >>>
> > >>
> > >>
> > >>
> -------------------------------------------------------------------
> > >> -- To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >> For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> > >
> > > Jeremias Maerki
> > >
> > >
> > >
> --------------------------------------------------------------------
> > > - To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
> Jeremias Maerki
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>