I could use some ideas for a strategy to get these kind of labels in a METAPOST picture
I have strings I get from an XML that I want to turn into labels for objects in a METAPOST picture (using MetaFun). These strings can have arbitrary characters (like accents) and some characters are coded. Examples of how these are coded: My "Application” Fünction [My] Application (Component) Business & service Besides the text, I know what the intended size (e.g. 10) and style (e.g. bold or italics) is. I have the string and I have a size of a box it needs to be fitted in and I have set a default font. Preferably, I’d like to code these in a box of the aspect ratio of the box it needs to fit in. So, for instance, I have a box that is 50 (high) by 130 (wide) and - if the text fits in the box, just typeset it. Break the words (yes or no) - if the size set does not fit in the box, make it smaller so it fits. Initially this is optional as the boxes will be of the size in which the text fits. - I might want to use some pattern to split it into multiple lines. E.g. if the last part of the string is “(some text)” put it on a last line by itself and if the first part of the string is “[some text]” put it on a first line by itself I am using Lua to generate METAPOST which are written by ‘context’ commands. I am not that experienced and I am looking for tips on a strategy to do this. Thanks in advance, G
Actually, I would already be helped with a way to convert this string: My “Büsiness" & sérvice into something that can be typeset by ConTeXt. Using embedded lua is fine. G
On 28 Mar 2020, at 02:01, Gerben Wierda
wrote: I have strings I get from an XML that I want to turn into labels for objects in a METAPOST picture (using MetaFun). These strings can have arbitrary characters (like accents) and some characters are coded. Examples of how these are coded:
My "Application” Fünction
[My] Application (Component)
Business & service
Besides the text, I know what the intended size (e.g. 10) and style (e.g. bold or italics) is.
I have the string and I have a size of a box it needs to be fitted in and I have set a default font. Preferably, I’d like to code these in a box of the aspect ratio of the box it needs to fit in. So, for instance, I have a box that is 50 (high) by 130 (wide) and - if the text fits in the box, just typeset it. Break the words (yes or no) - if the size set does not fit in the box, make it smaller so it fits. Initially this is optional as the boxes will be of the size in which the text fits. - I might want to use some pattern to split it into multiple lines. E.g. if the last part of the string is “(some text)” put it on a last line by itself and if the first part of the string is “[some text]” put it on a first line by itself
I am using Lua to generate METAPOST which are written by ‘context’ commands.
I am not that experienced and I am looking for tips on a strategy to do this.
Thanks in advance,
G ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net ___________________________________________________________________________________
On 28 Mar 2020, at 19:04, Wolfgang Schuster
wrote: Gerben Wierda schrieb am 28.03.2020 um 18:58:
Actually, I would already be helped with a way to convert this string: My “Büsiness" & sérvice into something that can be typeset by ConTeXt. Using embedded lua is fine.
Does enabling entities help?
\setupxml [entities=yes]
This is not in the manual. Is it documented somewhere? G
Wolfgang
I tried this and it worked. Next issue: if the string has a “ character in it, METAPOST cannot handle it. New question for the list... G
On 29 Mar 2020, at 10:47, Gerben Wierda
wrote: On 28 Mar 2020, at 19:04, Wolfgang Schuster
wrote: Gerben Wierda schrieb am 28.03.2020 um 18:58:
Actually, I would already be helped with a way to convert this string: My “Büsiness" & sérvice into something that can be typeset by ConTeXt. Using embedded lua is fine.
Does enabling entities help?
\setupxml [entities=yes]
This is not in the manual. Is it documented somewhere?
G
Wolfgang
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net ___________________________________________________________________________________
Gerben Wierda schrieb am 29.03.2020 um 10:47:
On 28 Mar 2020, at 19:04, Wolfgang Schuster
wrote: Gerben Wierda schrieb am 28.03.2020 um 18:58:
Actually, I would already be helped with a way to convert this string: My “Büsiness" & sérvice into something that can be typeset by ConTeXt. Using embedded lua is fine.
Does enabling entities help?
\setupxml [entities=yes]
This is not in the manual. Is it documented somewhere?
I added it to the syntax of the \setupxml command. Wolfgang
participants (2)
-
Gerben Wierda
-
Wolfgang Schuster