Seuls les membres ayant 30 points peuvent parler sur le chat.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » Police 5x7 Unicode pour add-ins et C.Basic
LephenixnoirEn ligneAdministrateurPoints: 15231 Défis: 136 Message

Police 5x7 Unicode pour add-ins et C.Basic

Posté le 01/06/2019 01:48

Ça faisait un moment que je pense qu'on a besoin d'une police Unicode, pour les applications, les cours et les maths... comme j'ai repris mon moteur d'affichage mathématique je me suis dit que c'était la bonne occasion de la faire pour de bon, ce qui m'a pris deux soirées.



Dépôt Git avec les sources et le détail d'utilisation

J'ai sélectionné les blocs Unicode les plus courants, et je peux en faire plus si jamais le besoin se présente. La police est sous CC0, toute utilisation ou dérivation est libre. Les contributions sont acceptées avec joie. Enjoy!

Voici la police complète à ce jour :



Fichier joint


Pages : 1, 2, 3Suivante
Sentaro21Hors ligneMembrePoints: 522 Défis: 0 Message

Citer : Posté le 01/06/2019 11:17 | #


This is a nice font!
There are a lot of new fonts.
I still feel the possibility of 5x7 font.
Thanks.
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
DisperseurHors ligneMembrePoints: 1475 Défis: 0 Message

Citer : Posté le 01/06/2019 11:32 | #


Génial. Il y a pleins de caractères utilise dans ta police
Planetarium

√(2+2-2+2-2+2+2-2-2-2) = 0
LephenixnoirEn ligneAdministrateurPoints: 15231 Défis: 136 Message

Citer : Posté le 01/06/2019 17:23 | # | Fichier joint


Sentaro21 a écrit :
I still feel the possibility of 5x7 font.

Thank you Sentaro! 5x7 is almost magic. It combines simple lines with an amazing expressiveness. Almost every character can be drawn.

Disperseur a écrit :
Génial. Il y a pleins de caractères utilise dans ta police

Merci ! Les add-ins en particulier auront toujours tendance à utiliser des images (contrairement au Basic où plein de choses sont faites en texte), donc c'est vraiment pour écrire du texte je suppose. Les caractères mathématiques m'intéressent en particulier !

Je viens de finir deux nouveaux blocs, Latin Extended-A et la fin de Greek and Coptic (ci-dessous et dans le post suivant).

LephenixnoirEn ligneAdministrateurPoints: 15231 Défis: 136 Message

Citer : Posté le 01/06/2019 17:23 | # | Fichier joint


Voici le second bloc.

DisperseurHors ligneMembrePoints: 1475 Défis: 0 Message

Citer : Posté le 02/06/2019 09:04 | #


Ce n'est pas encore compatible C Basic ?
Planetarium

√(2+2-2+2-2+2+2-2-2-2) = 0
Sentaro21Hors ligneMembrePoints: 522 Défis: 0 Message

Citer : Posté le 02/06/2019 09:35 | #


It can be used as the external fonts in C.Basic.
Extract the required fonts,
Rewrite the following font file and transfer it to the current folder.

FONTK8L.bmp
FONTG8L.bmp
(refer to FONT folder of C.Basic zip.)

The font can be selected with [F5](CHAR)-[F6].
(Set EnableExFont to on in setup.)
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
LephenixnoirEn ligneAdministrateurPoints: 15231 Défis: 136 Message

Citer : Posté le 02/06/2019 16:22 | #


By the way Sentaro, have you considered supporting a wider set of characters, maybe by Unicode block?

I currently only support certain subsets of ASCII in my font manager in gint, but I will extend it to support any combination of blocks (intervals) later on.
Corne2plum3Hors ligneMembrePoints: 154 Défis: 0 Message

Citer : Posté le 02/06/2019 16:41 | #


Pourquoi il y a des sortes de blocks rouges et blancs ?
N'arrêtez jamais d'apprendre ! (Leo TechMaker)

Aller à la page principale du site --->
LephenixnoirEn ligneAdministrateurPoints: 15231 Défis: 136 Message

Citer : Posté le 02/06/2019 18:55 | # | Fichier joint


C'est les caractères qui existent mais que je n'ai pas réussi à dessiner, souvent parce qu'il n'y a pas la place. Ce sont quasiment tous des caractères bien tordus.

(Fichier joint pour la RDP.)
Corne2plum3Hors ligneMembrePoints: 154 Défis: 0 Message

Citer : Posté le 02/06/2019 18:57 | #


Ah
N'arrêtez jamais d'apprendre ! (Leo TechMaker)

Aller à la page principale du site --->
Sentaro21Hors ligneMembrePoints: 522 Défis: 0 Message

Citer : Posté le 03/06/2019 01:02 | #


Lephenixnoir a écrit :
By the way Sentaro, have you considered supporting a wider set of characters, maybe by Unicode block?

Now it is still a genuine compatible specification in C.Basic,
However I want to support those characters.
If Unicode can be supported
Especially in 90+E, fonts of more languages can be supported reasonably.
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
LephenixnoirEn ligneAdministrateurPoints: 15231 Défis: 136 Message

Citer : Posté le 03/06/2019 02:01 | #


Hmm, that's right, you have to remain compatible with the FONTCHARACTER encoding.

Do you have 16-bit characters right now?

If yes, then you could use UTF-16. The extended FONTCHARACTER characters have prefixes 0x7f, 0xf9, 0xe5 and 0xe6, which fall respectively into two CJK ideograph blocks, which we are never going to support because they're monstrously immense, and the private areas.

If not, then do you use a variable-width encoding?

Cakeisalie5Hors ligneMembre de CreativeCalcPoints: 1746 Défis: 10 Message

Citer : Posté le 03/06/2019 11:46 | #


Compatibility between the two encodings of FONTCHARACTER (fixed and variable size) and the Unicode Transformation Format is really limited…

- only UTF-16BE could be supported, UTF-16 requires support of the BOM which could lead to UTF-16LE which would be unsupported.
- UTF-8 is not compatible with the variable size encoding of FONTCHARACTER (which I call FONTCHARACTER-8), because it uses the extended byte range (0x80-0xff) with prefixes where for UTF-8 it means the beginning of a sequence (depending on the number of 1 at the beginning).

Plus, there might be sanitization at some point for filtering-out or rejecting non-FONTCHARACTER characters…

Promotion ordinaire sur les inscriptions sur Planète Casio : en ce moment, c'est gratuit !
Besoin d'utilitaires de transfert vers et depuis la calculatrice sous GNU/Linux ?
Sentaro21Hors ligneMembrePoints: 522 Défis: 0 Message

Citer : Posté le 04/06/2019 09:45 | #


@Lephenixnoir
The 16-bit code is FONTCHARACTER and external font extension (FFxx).
The G+90E can use the built-in Chinese GB code, but the overlapping part with FONTCHARACTER will be garbled.

@Cakeisalie5
It is a pity that FONTCHARACTER and Unicode can not co-exist.
if stop compatibility with FONTCHARACTER, the meaning of C.Basic will diminish.
If find a way to use Unicode well, I would like to implement it.
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
LephenixnoirEn ligneAdministrateurPoints: 15231 Défis: 136 Message

Citer : Posté le 04/06/2019 14:01 | #


I see two options here.

1. First would be to use UTF-16 and ignore the overlapping with FONTCHARACTER. As you mentioned, there are conflicts on Chinese characters. But the first Chinese character block has more than 20 thousands characters, so maybe there's no overlap due to the sheer number of code points?

2. Second option would be to add an option-comment to switch between FONTCHARACTER and Unicode at runtime. Is that feasible in the code base of C.Basic?
Sentaro21Hors ligneMembrePoints: 522 Défis: 0 Message

Citer : Posté le 06/06/2019 08:45 | #


Implementing the code switching command is not difficult, but the added font needs to be able to be displayed normally by the editor.
Considering compatibility, it is difficult if it is not an extension of FONTCHARACTER.

I think both options are not easy.

So, ignoring compatibility,
I think it might be best to switch to unicode-based format like HP prime.

Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
LephenixnoirEn ligneAdministrateurPoints: 15231 Défis: 136 Message

Citer : Posté le 06/06/2019 13:21 | #


Maybe you could do like HTML? In HTML, the encoding is declared in a <meta> tag inside the document. Browsers typically look for it in the first 1024 bytes of the file and fallback to a default encoding if it's not there.

Could you search for the Unicode comment in the first few bytes of the program to decide which font to use?
HackcellEn ligneMembrePoints: 1101 Défis: 6 Message

Citer : Posté le 06/06/2019 16:24 | #


Je me propose pour le bloc U+28, enfin qu'une parti, car certain caractères risques de ne pas passer...
I usually spend meow time cosplaying as a diligent student...
So it can get pretty stressful.
That's exactly why PC is such a happy place for meow to be ⭐
LephenixnoirEn ligneAdministrateurPoints: 15231 Défis: 136 Message

Citer : Posté le 06/06/2019 16:43 | #


Pas une mauvaise idée, ils passeront tous sans difficulté ! C'est gentil !
HackcellEn ligneMembrePoints: 1101 Défis: 6 Message

Citer : Posté le 06/06/2019 16:51 | # | Fichier joint


Ha oui, effectivement, je sais plus compter

Ajouté le 06/06/2019 à 16:58 :
Donc je dois laisser deux pixel blanc entre chaque caractères, Et faire le tout en format png, Go ♥
I usually spend meow time cosplaying as a diligent student...
So it can get pretty stressful.
That's exactly why PC is such a happy place for meow to be ⭐
Pages : 1, 2, 3Suivante

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2019 | Il y a 41 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd