Demo à emoji de couleur directe à Twinbasic DirectX
Malheureusement, les fonctions Windows GDI de base ne prennent pas en charge les polices colorées, donc même si vous avez des contrôles de support Unicode, vos emojis ne se présenteraient qu'en noir et blanc, tout comme lorsque vous les collez dans Windows Explorer. Il s'agit d'une simple démo qui montre comment utiliser Direct2D et DirectWrite pour afficher les emojis en couleur. Il est principalement basé sur cet exemple C ++ de Code Doggo; Pour plus de simplicité, je le rend directement sur un formulaire plutôt que de créer ma propre fenêtre, qui serait de toute façon moins utile pour les programmeurs TB. Il y a une utilisation limitée dans ce forum actuel, l'objectif ultime ici serait de transformer cela en un contrôle d'édition.
Mise à jour (03 mars 2024): .twinproj a été mis à jour pour utiliser une version plus récente de Windevlib (anciennement TBShellLib) en raison d'erreurs dans le package que la tuberculose n'a pas soulevé au moment de la publication de ce projet.
Mise à jour (19 décembre 2023): .twinproj mis à jour pour référence à Windevlib (anciennement TbShellLIB) 7.0 - Cela élimine les erreurs de package que la tuberculose n'a pas soulevée au moment où ce projet a été initialement publié.
Mise à jour (12 mai 2023): Projet mis à jour pour utiliser la nouvelle version actuelle publique de TbShellLIB; Il utilisait précédemment une version privée différente de la version publique actuelle. Si vous avez eu des problèmes avec cela dans un nouveau projet, mettez simplement à jour la référence TBShellLIB.
Officiellement, les polices colorées ne sont prises en charge que sur Windows 8 et plus récentes. Si vous avez des mises à jour appropriées installées, cela peut fonctionner sur 7, mais si ce n'est pas le cas, car MS dit qu'il ne peut pas du tout, je ne serais pas enclin à devenir fou en essayant de trouver les étapes exactes.
Beta 299 Twinbasic ou plus récente est réorganisée pour compiler; Les versions plus anciennes ne fonctionneront que lorsqu'ils sont compilés.
Cela nécessite que mon package tbshelllib, version 4.6.142 ou plus, soit ajouté à votre projet, si vous en créez un nouveau (il est déjà inclus dans le fichier .twinproj ici).
Il n'y a pas de dépendances externes.
Il existe également une version VB6 de ce projet, en utilisant OleExp.tlb au lieu de TbShellLib
[Vb6 / win8 +] Utilisation de DirectX pour afficher les emojis avec la couleur