That's EXACTLY what is needed - the "dictionary" that tells iText that when it sees a specific combination of codepoints to use a different glyph than normal. iText has one for Arabic text, but not for Devanagari (and other Indics). If you can build such a table/dictionary, that would go a LONG WAY to getting support into iText.
Leonard -----Original Message----- From: John Kilbourne [mailto:[email protected]] Sent: Wednesday, April 06, 2011 1:15 PM To: Post all your questions about iText here Subject: Re: [iText-questions] ligature implementation for Indian languages / Devanagari script Thank you for your clarification. I understand from your last paragraph that iText would need to determine whether any contextual glyph shaping needs to be performed and then find the relevant glyphs in the font file. iText would not need to read the glyphs 'live' (as they are being typed in) and change the rendering as subsequent characters are typed; it just sees a finished sequence of Unicode (often multi-)byte characters. Is is difficult to have a 'dictionary' of character combinations within iText that relate the combinations of Unicode characters ('codepoints' I think is the correct term) to the appropriate glyphs (e.g. क + ष = क्ष)? I would like to help (because I would really like to use iText), or at least understand this problem better. ----- Original Message ----- From: "Leonard Rosenthol" <[email protected]> To: "Post all your questions about iText here" <[email protected]> Sent: Wednesday, April 6, 2011 3:45:24 PM GMT -05:00 US/Canada Eastern Subject: Re: [iText-questions] ligature implementation for Indian languages / Devanagari script Roman (also sometimes called Latin) is a class of languages (also known as Romance) that includes English, French, German, etc. This is codified in the encoding ISO 8859-1 (also called ISO Latin 1 - <http://en.wikipedia.org/wiki/ISO/IEC_8859-1>) Devanagari is a script used for Hindi (and other Indic languages - see <http://en.wikipedia.org/wiki/Devanagari>). Fonts are simply a way to provide a set of glyphs (visual representations of "letters" and "symbols"). They may or may not have a correlation to a specific script or language. In most cases today, fonts include glyphs for MANY languages & scripts (eg. Unicode fonts). A font CAN NOT automatically do anything! The software that lays out the characters/code points MUST determine whether any contextual glyph shaping needs to be performed and then find the relevant glyphs in the font file. See <http://people.w3.org/rishida/docs/unicode-tutorial/part3#context-sensitive> which is just part of a full presentation on Unicode. Hope that helps clarify things for you. -----Original Message----- From: John Kilbourne [mailto:[email protected]] Sent: Wednesday, April 06, 2011 12:34 PM To: Post all your questions about iText here Subject: Re: [iText-questions] ligature implementation for Indian languages / Devanagari script I wonder if the distinction between font and language and something in between aren't involved here. English is a language, Roman is not quite a font (I think), but Times-Roman would be a font. Hindi is a language, devanagari is not quite a font, and Sansrit2003 (the font I use for devanagari) is a font. Anyway, here (http://www.wazu.jp/gallery/Fonts_Devanagari.html) is a list of devanagari fonts showing the ligatures they naturally produce. Sanskrit 2003 (the font) automatically renders devanagari ligatures like क्ष, त्म, प्र for क्+ष्, त्+म्, and प् + र्. ----- Original Message ----- From: "Leonard Rosenthol" <[email protected]> To: "Post all your questions about iText here" <[email protected]> Sent: Wednesday, April 6, 2011 2:49:09 PM GMT -05:00 US/Canada Eastern Subject: Re: [iText-questions] ligature implementation for Indian languages / Devanagari script The information about what two character codes/code points make up a given ligature isn't encoded into a font. For example, there is nothing that tells me that when I find 'f' and 'i' next to each other in Roman/English text that I can turn that into an 'fi' ligature. I have to have that type of logic written into my layout engine. Contextual languages such as Arabic and Devanagari make this even more complex - but same concept... Leonard -----Original Message----- From: John Kilbourne [mailto:[email protected]] Sent: Wednesday, April 06, 2011 11:41 AM To: Post all your questions about iText here Subject: Re: [iText-questions] ligature implementation for Indian languages / Devanagari script How is it that different devanagari fonts render ligatures differently? It seems that the ligature information is found in the font itself. Is there no way for iText to utilize the information already contained the particular font used to render the text? ----- Original Message ----- From: "1T3XT BVBA" <[email protected]> To: [email protected] Sent: Sunday, April 3, 2011 3:01:34 AM GMT -05:00 US/Canada Eastern Subject: Re: [iText-questions] ligature implementation for Indian languages / Devanagari script [email protected] wrote: > Does iText have ligature implementation for Indian languages such as Hindi, > Gujarati, Marathi, etc? No, none of the iText developers understand any Indic language. You are always welcome to contribute code that supports ligatures in Indic languages. ------------------------------------------------------------------------------ Create and publish websites with WebMatrix Use the most popular FREE web apps or write code yourself; WebMatrix provides all the features you need to develop and publish your website. http://p.sf.net/sfu/ms-webmatrix-sf _______________________________________________ iText-questions mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/itext-questions iText(R) is a registered trademark of 1T3XT BVBA. Many questions posted to this list can (and will) be answered with a reference to the iText book: http://www.itextpdf.com/book/ Please check the keywords list before you ask for examples: http://itextpdf.com/themes/keywords.php ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ iText-questions mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/itext-questions iText(R) is a registered trademark of 1T3XT BVBA. Many questions posted to this list can (and will) be answered with a reference to the iText book: http://www.itextpdf.com/book/ Please check the keywords list before you ask for examples: http://itextpdf.com/themes/keywords.php ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ iText-questions mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/itext-questions iText(R) is a registered trademark of 1T3XT BVBA. Many questions posted to this list can (and will) be answered with a reference to the iText book: http://www.itextpdf.com/book/ Please check the keywords list before you ask for examples: http://itextpdf.com/themes/keywords.php ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ iText-questions mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/itext-questions iText(R) is a registered trademark of 1T3XT BVBA. Many questions posted to this list can (and will) be answered with a reference to the iText book: http://www.itextpdf.com/book/ Please check the keywords list before you ask for examples: http://itextpdf.com/themes/keywords.php ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ iText-questions mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/itext-questions iText(R) is a registered trademark of 1T3XT BVBA. Many questions posted to this list can (and will) be answered with a reference to the iText book: http://www.itextpdf.com/book/ Please check the keywords list before you ask for examples: http://itextpdf.com/themes/keywords.php ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ iText-questions mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/itext-questions iText(R) is a registered trademark of 1T3XT BVBA. Many questions posted to this list can (and will) be answered with a reference to the iText book: http://www.itextpdf.com/book/ Please check the keywords list before you ask for examples: http://itextpdf.com/themes/keywords.php ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ iText-questions mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/itext-questions iText(R) is a registered trademark of 1T3XT BVBA. Many questions posted to this list can (and will) be answered with a reference to the iText book: http://www.itextpdf.com/book/ Please check the keywords list before you ask for examples: http://itextpdf.com/themes/keywords.php
