[UTF-8] Simboli e FidoCadJ
Ciao a tutti,
mi sono reso conto che c'è un problemino durante la conversione delle immagini in formato FidoCadJ qui sul forum. Le lettere greche non vengono rappresentate correttamente:
[fcd="Esempio"][FIDOCAD]
FJC B 0.5
LI 20 50 135 50 0
FCJ 2 0 3 1 0 1
TY 130 51 4 3 0 0 0 Helvetica y
TY 25 60 4 3 0 0 0 Helvetica
LI 65 100 65 5 0
FCJ 2 0 3 1 0 1
TY 60 8 4 3 0 0 0 Helvetica x
TY 70 85 4 3 0 0 0 Helvetica
BE 80 50 80 45 80 50 80 50 0
BE 79 42 81 45 81 48 81 50 2
FCJ 0 0 3 2 0 1
TY 83 43 4 3 0 0 2 Helvetica θ
TY 85 35 4 3 0 0 2 Helvetica
LI 65 50 95 32 2
FCJ 2 0 3 1 0 0
EV 30 15 100 85 11
FCJ 1 0[/fcd]
Così invece è come appare durante l'editing:

Quando il rendering è fatto da FidoCadJ che gira sul server di Matematicamente, manca la lettera \(\displaystyle \theta \) che dovrebbe apparire per indicare l'angolo.
FidoCadJ adotta in ogni situazione la codifica UTF-8 e credo sia lo stesso per il motore del forum, però è probabile che da qualche parte fra il momento in cui il disegno viene incollato in un messaggio ed il momento in cui viene spedito a FidoCadJ sul server, l'informazione sulla codifica viene perduta.
Qualche tempo fa, c'erano stati dei problemi simili anche su ElectroYou, ma poi si era riusciti a correggerli:
http://www.electroyou.it/forum/viewtopi ... 10#p248684
mi sono reso conto che c'è un problemino durante la conversione delle immagini in formato FidoCadJ qui sul forum. Le lettere greche non vengono rappresentate correttamente:
[fcd="Esempio"][FIDOCAD]
FJC B 0.5
LI 20 50 135 50 0
FCJ 2 0 3 1 0 1
TY 130 51 4 3 0 0 0 Helvetica y
TY 25 60 4 3 0 0 0 Helvetica
LI 65 100 65 5 0
FCJ 2 0 3 1 0 1
TY 60 8 4 3 0 0 0 Helvetica x
TY 70 85 4 3 0 0 0 Helvetica
BE 80 50 80 45 80 50 80 50 0
BE 79 42 81 45 81 48 81 50 2
FCJ 0 0 3 2 0 1
TY 83 43 4 3 0 0 2 Helvetica θ
TY 85 35 4 3 0 0 2 Helvetica
LI 65 50 95 32 2
FCJ 2 0 3 1 0 0
EV 30 15 100 85 11
FCJ 1 0[/fcd]
Così invece è come appare durante l'editing:

Quando il rendering è fatto da FidoCadJ che gira sul server di Matematicamente, manca la lettera \(\displaystyle \theta \) che dovrebbe apparire per indicare l'angolo.
FidoCadJ adotta in ogni situazione la codifica UTF-8 e credo sia lo stesso per il motore del forum, però è probabile che da qualche parte fra il momento in cui il disegno viene incollato in un messaggio ed il momento in cui viene spedito a FidoCadJ sul server, l'informazione sulla codifica viene perduta.
Qualche tempo fa, c'erano stati dei problemi simili anche su ElectroYou, ma poi si era riusciti a correggerli:
http://www.electroyou.it/forum/viewtopi ... 10#p248684
Risposte
Ho corretto il refuso nel manuale in inglese (perlomeno, nella versione nel repository). Purtroppo, ogni tanto scappano le castronerie
Se trovi altre stupidaggini, io sono sempre tutt'orecchi.

Se trovi altre stupidaggini, io sono sempre tutt'orecchi.

"DarwinNE":
Gli spazi sono sostituiti non con "+", ma con "++", c'è un errore nella documentazione?![]()
Sembrerebbe di sì, a pagina 36 del [_url=https://sourceforge.net/projects/fidocadj/files/manuals/fidocadj_manual_en.pdf/download:z394opum]manuale[/_url:z394opum] si legge:
If the font name contains spaces these must be replaced with the symbol +.
"DarwinNE":
Comunque, è molto utile sapere esattamente i font installati qui sul forum perché così se si ricerca un rendering preciso del testo si sa come procedere!
L'elenco completo è questo:
Bitstream Charter:style=Bold Bitstream Charter:style=Bold Italic Bitstream Charter:style=Italic Bitstream Charter:style=Regular Century Schoolbook L:style=Bold Century Schoolbook L:style=Bold Italic Century Schoolbook L:style=Italic Century Schoolbook L:style=Roman DejaVu Sans Mono:style=Bold DejaVu Sans Mono:style=Bold Oblique DejaVu Sans Mono:style=Book DejaVu Sans Mono:style=Oblique DejaVu Sans,DejaVu Sans Condensed:style=Condensed Bold Oblique,Bold Oblique DejaVu Sans,DejaVu Sans Condensed:style=Condensed Bold,Bold DejaVu Sans,DejaVu Sans Condensed:style=Condensed Oblique,Oblique DejaVu Sans,DejaVu Sans Condensed:style=Condensed,Book DejaVu Sans,DejaVu Sans Light:style=ExtraLight DejaVu Sans:style=Bold DejaVu Sans:style=Bold Oblique DejaVu Sans:style=Book DejaVu Sans:style=Oblique DejaVu Serif,DejaVu Serif Condensed:style=Condensed Bold Italic,Bold Italic DejaVu Serif,DejaVu Serif Condensed:style=Condensed Bold,Bold DejaVu Serif,DejaVu Serif Condensed:style=Condensed Italic,Italic DejaVu Serif,DejaVu Serif Condensed:style=Condensed,Book DejaVu Serif:style=Bold DejaVu Serif:style=Bold Italic DejaVu Serif:style=Book DejaVu Serif:style=Italic Dingbats:style=Regular Hershey\-Gothic\-English:style=Regular Hershey\-Gothic\-German:style=Regular Hershey\-Gothic\-Italian:style=Regular Hershey\-Plain\-Duplex:style=Regular Hershey\-Plain\-Duplex\-Italic:style=Regular Hershey\-Plain\-Triplex:style=Regular Hershey\-Plain\-Triplex\-Italic:style=Regular Hershey\-Script\-Complex:style=Regular Hershey\-Script\-Simplex:style=Regular Nimbus Mono L:style=Bold Nimbus Mono L:style=Bold Oblique Nimbus Mono L:style=Regular Nimbus Mono L:style=Regular Oblique Nimbus Roman No9 L:style=Medium Nimbus Roman No9 L:style=Medium Italic Nimbus Roman No9 L:style=Regular Nimbus Roman No9 L:style=Regular Italic Nimbus Sans L:style=Bold Nimbus Sans L:style=Bold Condensed Nimbus Sans L:style=Bold Condensed Italic Nimbus Sans L:style=Bold Italic Nimbus Sans L:style=Regular Nimbus Sans L:style=Regular Condensed Nimbus Sans L:style=Regular Condensed Italic Nimbus Sans L:style=Regular Italic Standard Symbols L:style=Regular URW Bookman L:style=Demi Bold URW Bookman L:style=Demi Bold Italic URW Bookman L:style=Light URW Bookman L:style=Light Italic URW Chancery L:style=Medium Italic URW Gothic L:style=Book URW Gothic L:style=Book Oblique URW Gothic L:style=Demi URW Gothic L:style=Demi Oblique URW Palladio L:style=Bold URW Palladio L:style=Bold Italic URW Palladio L:style=Italic URW Palladio L:style=Roman Utopia:style=Bold Utopia:style=Bold Italic Utopia:style=Italic Utopia:style=Regular
ma se servono possiamo installarne altri.
Ottimo!
Gli spazi sono sostituiti non con "+", ma con "++", c'è un errore nella documentazione?
[fcd="Prova simboli"][FIDOCAD]
FJC B 0.5
TY 20 15 4 3 0 0 0 Serif Font SERIF generico
TY 20 25 4 3 0 0 0 Sansserif Font SANSERIF generico
TY 20 35 4 3 0 0 0 Monospaced Font MONOSPACED generico
TY 20 45 4 3 0 0 0 Dialog Font DIALOG generico
TY 20 55 4 3 0 0 0 Dialoginput Font DIALOGINPUT generico
TY 20 65 4 3 0 0 0 BabelSans Font BABELSANS
TY 20 75 4 3 0 0 0 Liberation++Sans Font LIBERATION+SANS
TY 20 85 4 3 0 0 0 Nimbus++Sans Font NIMBUS+SANS
TY 20 95 4 3 0 0 0 Utopia Font UTOPIA
TY 20 105 4 3 0 0 0 Stonehenge Font STONEHENGE[/fcd]
Comunque, è molto utile sapere esattamente i font installati qui sul forum perché così se si ricerca un rendering preciso del testo si sa come procedere!
Gli spazi sono sostituiti non con "+", ma con "++", c'è un errore nella documentazione?

[fcd="Prova simboli"][FIDOCAD]
FJC B 0.5
TY 20 15 4 3 0 0 0 Serif Font SERIF generico
TY 20 25 4 3 0 0 0 Sansserif Font SANSERIF generico
TY 20 35 4 3 0 0 0 Monospaced Font MONOSPACED generico
TY 20 45 4 3 0 0 0 Dialog Font DIALOG generico
TY 20 55 4 3 0 0 0 Dialoginput Font DIALOGINPUT generico
TY 20 65 4 3 0 0 0 BabelSans Font BABELSANS
TY 20 75 4 3 0 0 0 Liberation++Sans Font LIBERATION+SANS
TY 20 85 4 3 0 0 0 Nimbus++Sans Font NIMBUS+SANS
TY 20 95 4 3 0 0 0 Utopia Font UTOPIA
TY 20 105 4 3 0 0 0 Stonehenge Font STONEHENGE[/fcd]
Comunque, è molto utile sapere esattamente i font installati qui sul forum perché così se si ricerca un rendering preciso del testo si sa come procedere!
Hai ragione. Da quello che ho capito Java per selezionare i font si basa su un file [_url=http://docs.oracle.com/javase/8/docs/technotes/guides/intl/fontconfig.html:3fknuge6]fontconfig.properties[/_url:3fknuge6] appropriato. Nel nostro caso i percorsi ai font nel suddetto file non combaciavano con quelli reali, quindi Java ripiegava sulla configurazione della libreria fontconfig. Dopo aver corretto i percorsi è ora possibile usare i 5 font logici sempre disponibili.
Sembra tuttavia che FidoCadJ (Java?) non riesca a usare/selezionare gli altri font installati sul sistema se il nome contiene degli spazi (sostituiti con un simbolo + come specificato nella doc.). Esempio:
[fcd="Prova font"][FIDOCAD]
FJC B 0.5
TY 20 15 4 3 0 0 0 Serif Font SERIF generico
TY 20 25 4 3 0 0 0 Sansserif Font SANSERIF generico
TY 20 35 4 3 0 0 0 Monospaced Font MONOSPACED generico
TY 20 45 4 3 0 0 0 Dialog Font DIALOG generico
TY 20 55 4 3 0 0 0 Dialoginput Font DIALOGINPUT generico
TY 20 65 4 3 0 0 0 BabelSans Font BABELSANS
TY 20 75 4 3 0 0 0 Liberation+Sans Font LIBERATION+SANS
TY 20 85 4 3 0 0 0 Nimbus+Sans Font NIMBUS+SANS
TY 20 95 4 3 0 0 0 Utopia Font UTOPIA
TY 20 105 4 3 0 0 0 Stonehenge Font STONEHENGE[/fcd]
Come si vede i *+SANS sono resi con il sanserif generico...
Sembra tuttavia che FidoCadJ (Java?) non riesca a usare/selezionare gli altri font installati sul sistema se il nome contiene degli spazi (sostituiti con un simbolo + come specificato nella doc.). Esempio:
[fcd="Prova font"][FIDOCAD]
FJC B 0.5
TY 20 15 4 3 0 0 0 Serif Font SERIF generico
TY 20 25 4 3 0 0 0 Sansserif Font SANSERIF generico
TY 20 35 4 3 0 0 0 Monospaced Font MONOSPACED generico
TY 20 45 4 3 0 0 0 Dialog Font DIALOG generico
TY 20 55 4 3 0 0 0 Dialoginput Font DIALOGINPUT generico
TY 20 65 4 3 0 0 0 BabelSans Font BABELSANS
TY 20 75 4 3 0 0 0 Liberation+Sans Font LIBERATION+SANS
TY 20 85 4 3 0 0 0 Nimbus+Sans Font NIMBUS+SANS
TY 20 95 4 3 0 0 0 Utopia Font UTOPIA
TY 20 105 4 3 0 0 0 Stonehenge Font STONEHENGE[/fcd]
Come si vede i *+SANS sono resi con il sanserif generico...

Spettacolo!!!
Che occhio che hai avuto con i font... io avrei perso un sacco di tempo con l'UTF-8!
Proviamo:
[fcd="Prova simboli"][FIDOCAD]
FJC B 0.5
TY 20 15 4 3 0 0 0 Helvetica Facciamo una prova di nuovo!
TY 20 25 4 3 0 0 0 Helvetica Segni diacritici: éèçàùò
TY 20 35 4 3 0 0 0 Helvetica Greco minuscolo: διακρίνω
TY 20 45 4 3 0 0 0 Helvetica Greco maiuscolo: ΔΙΑΚΡΙΝΩ
TY 20 55 4 3 0 0 0 Helvetica Frazioni: ¼ × ½ = ⅛
TY 20 65 4 3 0 0 0 Helvetica Relazioni: 3 ≤ x ≤ 25, y ≠ 3
TY 20 75 4 3 0 0 0 Helvetica Integrale: ∫f(x)dx[/fcd]
Edit: però Helvetica viene mappato su un font con serif...

Che occhio che hai avuto con i font... io avrei perso un sacco di tempo con l'UTF-8!
Proviamo:
[fcd="Prova simboli"][FIDOCAD]
FJC B 0.5
TY 20 15 4 3 0 0 0 Helvetica Facciamo una prova di nuovo!
TY 20 25 4 3 0 0 0 Helvetica Segni diacritici: éèçàùò
TY 20 35 4 3 0 0 0 Helvetica Greco minuscolo: διακρίνω
TY 20 45 4 3 0 0 0 Helvetica Greco maiuscolo: ΔΙΑΚΡΙΝΩ
TY 20 55 4 3 0 0 0 Helvetica Frazioni: ¼ × ½ = ⅛
TY 20 65 4 3 0 0 0 Helvetica Relazioni: 3 ≤ x ≤ 25, y ≠ 3
TY 20 75 4 3 0 0 0 Helvetica Integrale: ∫f(x)dx[/fcd]
Edit: però Helvetica viene mappato su un font con serif...
Mi rispondo da solo 
Sì, mancava il font giusto, con i DejaVu funziona:
[fcd="Esempio con il carattere theta U+03b8"][FIDOCAD]
FJC B 0.5
LI 20 50 135 50 0
FCJ 2 0 3 1 0 1
TY 130 51 4 3 0 0 0 Helvetica Y
TY 25 60 4 3 0 0 0 Helvetica
LI 65 100 65 5 0
FCJ 2 0 3 1 0 1
TY 60 8 4 3 0 0 0 Helvetica X
TY 70 85 4 3 0 0 0 Helvetica
BE 80 50 80 45 80 50 80 50 0
BE 79 42 81 45 81 48 81 50 2
FCJ 0 0 3 2 0 1
TY 83 43 4 3 0 0 2 Helvetica θ
TY 85 35 4 3 0 0 2 Helvetica
LI 65 50 95 32 2
FCJ 2 0 3 1 0 0
EV 30 15 100 85 11
FCJ 1 0[/fcd]

Sì, mancava il font giusto, con i DejaVu funziona:
[fcd="Esempio con il carattere theta U+03b8"][FIDOCAD]
FJC B 0.5
LI 20 50 135 50 0
FCJ 2 0 3 1 0 1
TY 130 51 4 3 0 0 0 Helvetica Y
TY 25 60 4 3 0 0 0 Helvetica
LI 65 100 65 5 0
FCJ 2 0 3 1 0 1
TY 60 8 4 3 0 0 0 Helvetica X
TY 70 85 4 3 0 0 0 Helvetica
BE 80 50 80 45 80 50 80 50 0
BE 79 42 81 45 81 48 81 50 2
FCJ 0 0 3 2 0 1
TY 83 43 4 3 0 0 2 Helvetica θ
TY 85 35 4 3 0 0 2 Helvetica
LI 65 50 95 32 2
FCJ 2 0 3 1 0 0
EV 30 15 100 85 11
FCJ 1 0[/fcd]
Il comando fc-list dà
Io proverei a installare i DejaVu, perché dando un'occhiata ai file fontconfig nella root del JRE è l'unico che riconosco e che ho installato anche sul mio sistema. Tu quale consigli?
Bitstream Charter:style=Bold Bitstream Charter:style=Bold Italic Bitstream Charter:style=Italic Bitstream Charter:style=Regular Century Schoolbook L:style=Bold Century Schoolbook L:style=Bold Italic Century Schoolbook L:style=Italic Century Schoolbook L:style=Roman Dingbats:style=Regular Hershey\-Gothic\-English:style=Regular Hershey\-Gothic\-German:style=Regular Hershey\-Gothic\-Italian:style=Regular Hershey\-Plain\-Duplex:style=Regular Hershey\-Plain\-Duplex\-Italic:style=Regular Hershey\-Plain\-Triplex:style=Regular Hershey\-Plain\-Triplex\-Italic:style=Regular Hershey\-Script\-Complex:style=Regular Hershey\-Script\-Simplex:style=Regular Nimbus Mono L:style=Bold Nimbus Mono L:style=Bold Oblique Nimbus Mono L:style=Regular Nimbus Mono L:style=Regular Oblique Nimbus Roman No9 L:style=Medium Nimbus Roman No9 L:style=Medium Italic Nimbus Roman No9 L:style=Regular Nimbus Roman No9 L:style=Regular Italic Nimbus Sans L:style=Bold Nimbus Sans L:style=Bold Condensed Nimbus Sans L:style=Bold Condensed Italic Nimbus Sans L:style=Bold Italic Nimbus Sans L:style=Regular Nimbus Sans L:style=Regular Condensed Nimbus Sans L:style=Regular Condensed Italic Nimbus Sans L:style=Regular Italic Standard Symbols L:style=Regular URW Bookman L:style=Demi Bold URW Bookman L:style=Demi Bold Italic URW Bookman L:style=Light URW Bookman L:style=Light Italic URW Chancery L:style=Medium Italic URW Gothic L:style=Book URW Gothic L:style=Book Oblique URW Gothic L:style=Demi URW Gothic L:style=Demi Oblique URW Palladio L:style=Bold URW Palladio L:style=Bold Italic URW Palladio L:style=Italic URW Palladio L:style=Roman Utopia:style=Bold Utopia:style=Bold Italic Utopia:style=Italic Utopia:style=Regular
Io proverei a installare i DejaVu, perché dando un'occhiata ai file fontconfig nella root del JRE è l'unico che riconosco e che ho installato anche sul mio sistema. Tu quale consigli?
In effetti, il font potrebbe essere all'origine del problema.
Faccio una prova con un po' di simboli.
[fcd="Prova simboli UTF-8"][FIDOCAD]
FJC B 0.5
TY 20 15 4 3 0 0 0 Helvetica Facciamo una prova!
TY 20 25 4 3 0 0 0 Helvetica Segni diacritici: éèçàùò
TY 20 35 4 3 0 0 0 Helvetica Greco minuscolo: διακρίνω
TY 20 45 4 3 0 0 0 Helvetica Greco maiuscolo: ΔΙΑΚΡΙΝΩ
TY 20 55 4 3 0 0 0 Helvetica Frazioni: ¼ × ½ = ⅛
TY 20 65 4 3 0 0 0 Helvetica Relazioni: 3 ≤ x ≤ 25, y ≠ 3
TY 20 75 4 3 0 0 0 Helvetica Integrale: ∫f(x)dx[/fcd]
Che font ci sono installati adesso sul server? Sono i Liberation?
Faccio una prova con un po' di simboli.
[fcd="Prova simboli UTF-8"][FIDOCAD]
FJC B 0.5
TY 20 15 4 3 0 0 0 Helvetica Facciamo una prova!
TY 20 25 4 3 0 0 0 Helvetica Segni diacritici: éèçàùò
TY 20 35 4 3 0 0 0 Helvetica Greco minuscolo: διακρίνω
TY 20 45 4 3 0 0 0 Helvetica Greco maiuscolo: ΔΙΑΚΡΙΝΩ
TY 20 55 4 3 0 0 0 Helvetica Frazioni: ¼ × ½ = ⅛
TY 20 65 4 3 0 0 0 Helvetica Relazioni: 3 ≤ x ≤ 25, y ≠ 3
TY 20 75 4 3 0 0 0 Helvetica Integrale: ∫f(x)dx[/fcd]
Che font ci sono installati adesso sul server? Sono i Liberation?
Ciao, grazie della segnalazione. Purtroppo non sembra essere un problema di codifica, perché anche eseguendo da terminale, come suggerito su ElectroYou, il comando:
si ottiene lo stesso risultato senza carattere \(\theta\).
Considerato però che altri caratteri come le accentate vengono invece rese correttamente
[fcd="Lettera con accento acuto"][FIDOCAD]
TY 130 51 4 3 0 0 0 Helvetica Perché non funziona con theta?[/fcd]
potrebbe secondo me essere che il/la font usato/a sul nostro server sia "incompleto/a" e non abbia i caratteri greci. Se trovo un attimo di tempo provo a investigare meglio il problema. Si accettano ovviamente consigli/suggerimenti/soluzioni.
env LANG=it_IT.utf8 java -jar fidocadj.jar -n -c r3 png 6ad059381ff0752fb27154ab6785165e.png 6ad059381ff0752fb27154ab6785165e.fcd
si ottiene lo stesso risultato senza carattere \(\theta\).
Considerato però che altri caratteri come le accentate vengono invece rese correttamente
[fcd="Lettera con accento acuto"][FIDOCAD]
TY 130 51 4 3 0 0 0 Helvetica Perché non funziona con theta?[/fcd]
potrebbe secondo me essere che il/la font usato/a sul nostro server sia "incompleto/a" e non abbia i caratteri greci. Se trovo un attimo di tempo provo a investigare meglio il problema. Si accettano ovviamente consigli/suggerimenti/soluzioni.
