RE: How to capitalize text ???
-Original Message- From: Glen Mazza [mailto:[EMAIL PROTECTED] Of course, if you're only using the string in one place, or if you always want it capitalized, then you should be able to do the conversion in your database SQL to begin with: select upper(column_name) from table_name; For the record: If one is determined in leaving this up to the FO processor, this would ultimately work as well in XSL-FO (just in case the SQL is out of your control... and you're not working with FOP(*) --damn'! ;) ): !-- the following template will capitalize all text-nodes -- xsl:template match=text() fo:wrapper text-transform=uppercase xsl:value-of select=. / /fo:wrapper /xsl:template Cheers, Andreas (*) http://xml.apache.org/fop/compliance.html#fo-property-text-transform - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: How to capitalize text ???
It is possible to use the translate() function, if one doesn't have to worry about non-ASCII characters: e.g., xsl:variable name=titleText xsl:value-of select=//myTitle/ /xsl:variable xsl:value-of select=translate ($titleText,'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')/ I think one could put Unicode characters in the translate() strings, but then they could get quite long and very hard to generalize -- which is why text-transform itself is deprecated. Even translate() isn't robustly recommended. From the Xpath spec; Function: string translate(string, string, string) The translate function returns the first argument string with occurrences of characters in the second argument string replaced by the character at the corresponding position in the third argument string. For example, translate(bar,abc,ABC) returns the string BAr. If there is a character in the second argument string with no character at a corresponding position in the third argument string (because the second argument string is longer than the third argument string), then occurrences of that character in the first argument string are removed. For example, translate(--aaa--,abc-,ABC) returns AAA. If a character occurs more than once in the second argument string, then the first occurrence determines the replacement character. If the third argument string is longer than the second argument string, then excess characters are ignored. NOTE: The translate function is not a sufficient solution for case conversion in all languages. A future version of XPath may provide additional functions for case conversion. Fred Andreas L. DelmelleTo: [EMAIL PROTECTED] [EMAIL PROTECTED]cc: dora.be Subject: RE: How to capitalize text ??? 02/12/2004 09:02 AM Please respond to fop-user -Original Message- From: Glen Mazza [mailto:[EMAIL PROTECTED] Of course, if you're only using the string in one place, or if you always want it capitalized, then you should be able to do the conversion in your database SQL to begin with: select upper(column_name) from table_name; For the record: If one is determined in leaving this up to the FO processor, this would ultimately work as well in XSL-FO (just in case the SQL is out of your control... and you're not working with FOP(*) --damn'! ;) ): !-- the following template will capitalize all text-nodes -- xsl:template match=text() fo:wrapper text-transform=uppercase xsl:value-of select=. / /fo:wrapper /xsl:template Cheers, Andreas (*) http://xml.apache.org/fop/compliance.html#fo-property-text-transform - 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]
RE: How to capitalize text ???
It works. Thank you very much. -Original Message- From: Wouter de Vaal [mailto:[EMAIL PROTECTED] Sent: Sunday, February 08, 2004 11:16 PM To: [EMAIL PROTECTED] Subject: Re: How to capitalize text ??? You should use XSLT for this: xsl:variable name=uppercaseABCDEFGHIJKLMNOPQRSTUVWXYZ/xsl:variable xsl:variable name=lowercaseabcdefghijklmnopqrstuvwxyz/xsl:variable xsl:template match=text() xsl:value-of select=translate(.,$lowercase,$uppercase)/ /xsl:template This will translate all lowercase text in XML to uppercase. Wouter - Original Message - From: Dang Minh Phuong To: '[EMAIL PROTECTED]' Sent: Monday, February 09, 2004 3:50 AM Subject: How to capitalize text ??? Hi all, I have a text received from the DB and put in xml file. Now I want to capitalize that text when showing it in PDF using FOP. How can I do that ??? Thanks for your help. - 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]
Re: How to capitalize text ???
You should use XSLT for this: xsl:variable name=uppercaseABCDEFGHIJKLMNOPQRSTUVWXYZ/xsl:variable xsl:variable name=lowercaseabcdefghijklmnopqrstuvwxyz/xsl:variable xsl:template match=text() xsl:value-of select=translate(.,$lowercase,$uppercase)/ /xsl:template This will translate all lowercase text in XML to uppercase. Wouter - Original Message - From: Dang Minh Phuong To: '[EMAIL PROTECTED]' Sent: Monday, February 09, 2004 3:50 AM Subject: How to capitalize text ??? Hi all, I have a text received from the DB and put in xml file. Now I want to capitalize that text when showing it in PDF using FOP. How can I do that ??? Thanks for your help. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]