Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: alexarmato66 - Maggio 01, 2023, 10:50:03 am

Titolo: CODICI UTF8
Inserito da: alexarmato66 - Maggio 01, 2023, 10:50:03 am
Avrei bisogno di scrivere delle formule con delle lettere sia minuscole che maiuscole al pedice.
Ho cercato qui (https://www.charset.org/)ma non ho trovato nulla.

grazie
Titolo: Re:CODICI UTF8
Inserito da: Stilgar - Maggio 01, 2023, 01:13:17 pm
Ciao.
Non mi è chiaro il problema, forse ho capito male la domanda.


UTF8 è una codifica per "ridurre" il numero di byte per la persistenza e il trasferimento. Per i primi 127 caratteri coincide con ASCII.
Apice e pedice sono il modo in cui puoi "disegnare" il carattere rispetto alla "linea di base" della stringa.


Stilgar


PS:
https://www.rfc-editor.org/rfc/rfc3629
Titolo: Re:CODICI UTF8
Inserito da: alexarmato66 - Maggio 01, 2023, 02:38:19 pm
Non so come scivere al pedice lettere maiuscole o minuscole.
Tempo fa avevo risolto così per scrivere sigma min, ma non ricordo dove avevo reperito i codici:
Codice: [Seleziona]
  Form1.StringGrid15.Cells[1,0]:='σ'+#$E2#$82#$98+#$E1#$B5#$A2+#$E2#$82#$99+' [MPa]';    
Titolo: Re:CODICI UTF8
Inserito da: DragoRosso - Maggio 01, 2023, 02:39:05 pm
Se ho capito bene, forse vuole rappresentare i caratteri tipici delle formule.

Ciò che ti consiglio è recuperare i caratteri da un WORD o altro editor di testo (LibreOffice, etc.) andando magari anche a cercare i font che rappresentano maggiormente tali caratteri.

Questi caratteri possono essere rappresentati poi in un qualsiasi controllo RichEdit. Inoltre dovrebbero essere supportati anche nei normali controlli (tipo TEDIT) aggiungendo il supporto UTF8 a Lazarus (se cerchi nel forum trovi già discussioni su ciò).

Riferimento: https://wiki.freepascal.org/UTF-8 (https://wiki.freepascal.org/UTF-8)

Parti da li, poi in fondo alla pagina ci sono i link che ti interessano.

Ciao.
Titolo: Re:CODICI UTF8
Inserito da: DragoRosso - Maggio 01, 2023, 02:43:21 pm
Non so come scivere al pedice lettere maiuscole o minuscole.
Tempo fa avevo risolto così per scrivere sigma min, ma non ricordo dove avevo reperito i codici:
Codice: [Seleziona]
  Form1.StringGrid15.Cells[1,0]:='σ'+#$E2#$82#$98+#$E1#$B5#$A2+#$E2#$82#$99+' [MPa]';    

Non esiste il concetto di maiuscolo / minuscolo in UTF8.

Per pedice penso che o usi un controllo tipo RichEdit che prevede ciò, altrimenti devi farti una tua propria routine per la gestione della grafica.

Il metodo OnDraw (o OnPaint) dei singoli controlli LCL consentono di disegnare gli stessi in modo custom.

Anche qui, se cerchi nel forum ci sono discussioni ed esempi.

Ciao.
Titolo: Re:CODICI UTF8
Inserito da: alexarmato66 - Maggio 01, 2023, 06:01:53 pm
Grazie.
Titolo: Re:CODICI UTF8
Inserito da: Stilgar - Maggio 01, 2023, 10:45:07 pm
Se ti interessa, puoi fare copia e incolla da questa lista di caratteri.


https://en.wikipedia.org/wiki/List_of_Unicode_characters (https://en.wikipedia.org/wiki/List_of_Unicode_characters)


Cerchi per sigma e ne trovi 11.
Il sesto risultato è quello minuscolo.
Solo una nota.
Dipende dal font che usi, se il carattere è rappresentato correttamente.


Edit:
Per il resto, vale il discorso di Drago.


Stilgar
Titolo: Re:CODICI UTF8
Inserito da: alexarmato66 - Maggio 02, 2023, 08:45:46 am
Grazie, mancano però le maiuscole in subscript ed alcune minuscole.
Titolo: Re:CODICI UTF8
Inserito da: DragoRosso - Maggio 02, 2023, 09:41:41 am
A parte il reperimento dei caratteri / font per tutte le tipologie di formule che dovrai usare, c'è il problema (ma magari sono io che vado oltre) di "scrivere" e visualizzare le formule.

I caratteri UTF8 probabilmente non sono sufficienti, pensiamo solo a scrivere la radice quadrata con più elementi (ma ne basterebbe anche solo uno): la visualizzazione (e ancor peggio la scrittura, che però potrebbe essere fatta per macro con fà LibreOffice ad esempio) comporta comunque il disegno custom di qualcosa (la parte alta della radice che prosegue e fà da cappello agli elementi sotto radice.

Titolo: Re:CODICI UTF8
Inserito da: DragoRosso - Maggio 02, 2023, 09:51:27 am
Ti segnalo anche questo pacchetto gratuito:

https://github.com/karser/QDSEquations (https://github.com/karser/QDSEquations)

E' per Delphi ma penso sia usabile anche in Lazarus visto che ne parla nel README.

Il pacchetto non lo conosco, avevo il link in archivio.

Ciao
Titolo: Re:CODICI UTF8
Inserito da: Stilgar - Maggio 02, 2023, 10:09:00 am
(https://www.lazaruspascal.it/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGcAAAAoCAYAAADjT+RAAAAC8UlEQVR4nO2av5KiQBDGP698AJ6B3dIqQgPeAAw2MjAndAwsEgOegMCE2oQNybk6k9tASIwNDKnSuuUZ2ifwAvyDCroq6HA3vyoLkemepj+7Z7SoLRaLNSpEo9F4dgilslwud+9r6/W6UuL8T9R//vr97BgEOYjK4Zgf9xj3+/2i4qgkZd9/fbVa3e2kCB9Vpqz7v6tyBOUixOEYIQ7HCHE4piLihDAlCZKkw41T52aYOTp29dOxu9f283PTmZuxJrJneAwVEQcADPgUgMnbcxVqNMpIdIh3a3b0mQp7TiAizG3A6rk4q4/mgMiHUVDkt1IhcU5RFGA8OUpz+AnPMHITK7MhjNkYx2Y8Urw4sQv9oI2U1x6agyEU6z3lO4Y7imAP3r7tIzRTcea0yWdRsDgx3J4F2HMQEWhuQ4UBnxxoeRauDv3iIpCHhjfDw+c2p/EEY3TQlvMtYncET92P0Zyk3RH5MLysNvk8ihUnnmA8MzDcLgxyGx01lbwMZBYgYGeyeQFtYCMaJWtI+G5BGTKcepvBaiXV0bIU+EFqzG7x78K7OYpyeNyaE5rQ9WQXZZqp3VRo3lE5SL4AGGMSuhhFNgaZJbrfEFC6imMXehfwiUA0h63eHkYZFCvOplJG22THE4xnKpovm+udD5CvIGomx8VXynYnnoTrWr8MNlRgdS2g086omjN8LTBTm3jZxXqNcfkUXDkyWOBDsVpJq2hZUPz99ld5lQ+OJ3Q+QL6B6M+VlaQNYKupdnqNHSy0JAlSbwGFs8qpF+9Sg0ME5wbLXNEy50j3LxkscHKuH49NI4MFBHZ1pI+hBHFy0JyNYKfHQAMu77U9dKUI9jz9Q7QkQhNS1wNg4Pub8uJ5nDiX0I7EOrx4czXeGgvRw2bLpdL/EPzrCHE4RojDMTXGmHj6hlfWd8AYu8e88kyn01L9F/L0jaAcxJrDMUIcjhHicIwQh2OEOBwjxOEYIQ7HCHE4RojDMUIcjhHicIwQh2P+Am9poj9UaeNgAAAAAElFTkSuQmCC)
Effettivamente, come dice Alex, la griglia ha un comportamento che non conoscevo.


Appena ho tempo, indago.
Stilgar.(https://www.lazaruspascal.it/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGcAAAAoCAYAAADjT+RAAAAC8UlEQVR4nO2av5KiQBDGP698AJ6B3dIqQgPeAAw2MjAndAwsEgOegMCE2oQNybk6k9tASIwNDKnSuuUZ2ifwAvyDCroq6HA3vyoLkemepj+7Z7SoLRaLNSpEo9F4dgilslwud+9r6/W6UuL8T9R//vr97BgEOYjK4Zgf9xj3+/2i4qgkZd9/fbVa3e2kCB9Vpqz7v6tyBOUixOEYIQ7HCHE4piLihDAlCZKkw41T52aYOTp29dOxu9f283PTmZuxJrJneAwVEQcADPgUgMnbcxVqNMpIdIh3a3b0mQp7TiAizG3A6rk4q4/mgMiHUVDkt1IhcU5RFGA8OUpz+AnPMHITK7MhjNkYx2Y8Urw4sQv9oI2U1x6agyEU6z3lO4Y7imAP3r7tIzRTcea0yWdRsDgx3J4F2HMQEWhuQ4UBnxxoeRauDv3iIpCHhjfDw+c2p/EEY3TQlvMtYncET92P0Zyk3RH5MLysNvk8ihUnnmA8MzDcLgxyGx01lbwMZBYgYGeyeQFtYCMaJWtI+G5BGTKcepvBaiXV0bIU+EFqzG7x78K7OYpyeNyaE5rQ9WQXZZqp3VRo3lE5SL4AGGMSuhhFNgaZJbrfEFC6imMXehfwiUA0h63eHkYZFCvOplJG22THE4xnKpovm+udD5CvIGomx8VXynYnnoTrWr8MNlRgdS2g086omjN8LTBTm3jZxXqNcfkUXDkyWOBDsVpJq2hZUPz99ld5lQ+OJ3Q+QL6B6M+VlaQNYKupdnqNHSy0JAlSbwGFs8qpF+9Sg0ME5wbLXNEy50j3LxkscHKuH49NI4MFBHZ1pI+hBHFy0JyNYKfHQAMu77U9dKUI9jz9Q7QkQhNS1wNg4Pub8uJ5nDiX0I7EOrx4czXeGgvRw2bLpdL/EPzrCHE4RojDMTXGmHj6hlfWd8AYu8e88kyn01L9F/L0jaAcxJrDMUIcjhHicIwQh2OEOBwjxOEYIQ7HCHE4RojDMUIcjhHicIwQh2P+Am9poj9UaeNgAAAAAElFTkSuQmCC)
Titolo: Re:CODICI UTF8
Inserito da: Stilgar - Maggio 02, 2023, 10:24:41 am
Alex, su che piattaforma l'hai avuto quel comportamento del min in pedice alla stringa?
Sotto M$?
Titolo: Re:CODICI UTF8
Inserito da: DragoRosso - Maggio 02, 2023, 10:39:45 am
"min" in pedice sono caratteri UTF8.
E come tali rappresentabili dai controlli moderni.
Titolo: Re:CODICI UTF8
Inserito da: Stilgar - Maggio 02, 2023, 01:13:10 pm
Alex.
Cercando per esadecimale sono arrivato a queste tabelle


https://www.fileformat.info/info/charset/UTF-8/list.htm?start=7168


La n minuscola c'è.




Comincia qui


https://www.fileformat.info/info/charset/UTF-8/list.htm




Stilgar
Titolo: Re:CODICI UTF8
Inserito da: alexarmato66 - Maggio 02, 2023, 01:26:29 pm
si Stilgar Sotto M$.
Grazie a tutti.