|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
| Tuto : Installation Police |
| Débuté par Baptiste - BLV TECH, 26 avr. 2015 15:05 - 7 réponses |
| |
| | | |
|
| |
Membre enregistré 261 messages |
|
| Posté le 26 avril 2015 - 15:05 |
Hello,
J'ai cherché sur internet comment installer une police via Windev. N'ayant rien trouver de proprement fonctionnel. J'ai crée un exécutable qui fonctionne parfaitement pour installer une ou plusieurs police au format TTF. - La ou les polices doivent etre mises a la racine de l'executable "Install_Police.exe"
- Le programme "Install_Police.exe" doit etre obligatoirement lancer en Administrateur !
- La ou les polices sont fonctionnel immédiatement apres l'instalation mais sont visible dans le dossier "Police" de Windows apres un redémarrage de l'ordianteur.
Developpé sous Windev 18 (01F180063c)
Code :
Liste_Polices est une chaîne = fListeFichier(fRepExe()+"\*.ttf", frRécursif) POUR TOUTE CHAINE Chemin_Police DE Liste_Polices SEPAREE PAR RC Nom_Fichier_Avec_Extention est une chaîne ASCIIZ sur 255 = fExtraitChemin(Chemin_Police,fFichier+fExtension) Nom_Fichier_Sans_Extention est une chaîne ASCIIZ sur 255 = fExtraitChemin(Chemin_Police,fFichier) Chemin_Police_Windows est chaîne = SysRep(srFontes)+"\"+Nom_Fichier_Avec_Extention
SI PAS RegistreExiste("HKEY_LOCAL_MACHINE\SOFTWARE\"+Nom_Fichier_Sans_Extention) ALORS RegistreEcrit("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts",Nom_Fichier_Sans_Extention+" (TrueType)",Nom_Fichier_Avec_Extention) FIN SI PAS fFichierExiste(Chemin_Police_Windows) ALORS SI fCopieFichier(Chemin_Police,Chemin_Police_Windows) ALORS API("GDI32","AddFontResourceA",&Nom_Fichier_Avec_Extention) FIN FIN FIN
Lien programme : http://cloart.fr/Windev/Installation_Police.zip
J’espère que ça en aidera plus d'un !
a+ |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 275 messages |
|
| Posté le 26 avril 2015 - 20:13 |
Bonjour Baptiste, Je n'ai personnellement jamais rencontré de problèmes de ce genre, mais ton code est intéressant comme cas d'école. Et donc merci pour le partage !
Bon dev !
-- René MALKA |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 198 messages |
|
| Posté le 29 avril 2015 - 23:41 |
Excellent ! J'ai justement le même soucis. Merci pour ce partage. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 64 messages |
|
| Posté le 01 mars 2017 - 15:23 |
Bonjour à tous, pour compléter l'excellent bout de code de Batiste, le code pour ouvrir les droits sur le répertoire FONT de Windows, ne pas oublier de lancer votre exe en mode administrateur.
Liste_Polices est une chaîne = fListeFichier(fRepExe()+[fSep]+"fonts\*.ttf", frRécursif) sAttRepFonts est une chaîne= "DRS" sAttForCopy est une chaîne= "DS" sErr est une chaîne= fAttribut(SysRep(srFontes), sAttForCopy) SI sErr = "ERR" ALORS Erreur(ErreurInfo) RETOUR SINON POUR TOUTE chaîne Chemin_Police de Liste_Polices SEPAREE PAR RC Nom_Fichier_Avec_Extention est une chaîne ASCIIZ sur 255 = fExtraitChemin(Chemin_Police,fFichier+fExtension) Nom_Fichier_Sans_Extention est une chaîne ASCIIZ sur 255 = fExtraitChemin(Chemin_Police,fFichier) Chemin_Police_Windows est chaîne = SysRep(srFontes)+"\"+Nom_Fichier_Avec_Extention SI PAS RegistreExiste("HKEY_LOCAL_MACHINE\SOFTWARE\"+Nom_Fichier_Sans_Extention) ALORS RegistreEcrit("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts",Nom_Fichier_Sans_Extention+" (TrueType)",Nom_Fichier_Avec_Extention) FIN SI PAS fFichierExiste(Chemin_Police_Windows) ALORS SI fCopieFichier(Chemin_Police,Chemin_Police_Windows) ALORS API("GDI32","AddFontResourceA",&Nom_Fichier_Avec_Extention) FIN FIN FIN sErr = fAttribut(SysRep(srFontes), sAttRepFonts) SI sErr = "ERR" ALORS Erreur(ErreurInfo) RETOUR SINON Info("Copie OK") FIN FIN |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 40 messages |
|
| Posté le 20 janvier 2021 - 19:33 |
Bonjour à tous, j'exhume ce sujet car j'y suis tombé dessus en cherchant à résoudre un problème similaire, et je vois qu'il y a ici des grosses compétences en matière de polices, registres, API... Une de mes clientes essaie d'utiliser mon application Windows avec un Mac et un émulateur (PlayOnMac). L'Etat s'affiche correctement pour les graphiques, mais aucun texte n'apparait. Pourtant, certains textes sont en police Tahoma, qui est sensée être compatible Mac. Est-ce que vous pensez que c'est un problème de compatibilité Windows / Mac ? |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 765 messages |
|
| Posté le 20 janvier 2021 - 21:28 |
| Fabrice, ta demande n'a rien à voir avec le sujet |
| |
| |
| | | |
|
| | |
| |
| Posté le 29 avril 2021 - 13:05 |
Merci à Baptiste et Frédéric pour cette belle et efficace fonction encore très utile aujourd'hui ! |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 261 messages |
|
| Posté le 07 mai 2021 - 09:20 |
Bonjour, En complément, voici comment vérifier si une police existe.
LOCAL ListePoliceRechercher est un tableau de chaîne = ["Roboto Condensed","Tw Cen MT Condensed"] ListePoliceInstaller est un tableau de chaîne ListtePoliceNonInstaller est une chaîne CSVVersTableau(PoliceListe(),ListePoliceInstaller)
POUR i = 1 _À_ ListePoliceRechercher..Occurrence SI TableauCherche(ListePoliceInstaller,tcLinéairePremier,ListePoliceRechercher[i]) <> -1 ALORS ListtePoliceNonInstaller+=[RC]+" - "+ListePoliceRechercher[i] FIN FIN
SI ListtePoliceNonInstaller <> "" ALORS TitreSuivant("Police d'écriture manquante") Erreur("Ce programme a besoin des polices d'écriture suivantes pour une utilisation optimale :"+RC,ListtePoliceNonInstaller,RC+"Merci de prendre contact avec le service informatique pour effectuer l'installation.") FIN
-- Baptiste CLOART Freelance b.cloart@blv-tech.com 06.88.74.80.65 www.linkedin.com/in/cloart www.blv-tech.com |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|