Transcription parole vers texte
Générer un ficher Excel en C++
- libxlsxwriter : bibliothèque en C, simple à utiliser, très bien documentée et avec peu de dépendances.
- openxlsx : simple à utiliser, permet aussi de lire et manipuler des fichiers Excel.
- xlnt : même démarche de la bibliothèque précédente.
- qtxlswriter : simple a utilisée, elle est basée sur la bibliothèque Qt (Qtlib - est-ce encore du C++ ?)
- libxl : très complète, peut utilisée pour lire et modifier des fichier xlsx mais aussi xls. Pb : c'est la seule bibliothèque présentée ici qui n'est pas open-source. Elle nécessite en outre l'achat d'une licence dont le prix est de l'ordre de 200$ par développeur et par environnement (Windows, Linux, Ios, ...) - existe en version C, C++, C# et Delphi
Il serait intéressant aussi de voir quels outils utilise libre-office (écrit en C++) pour manipuler les fichier Excel...
Arrêter la carte Nvidia Optimus Prime sous Ubuntu 20.04
Pour arriver à cela, il faut
- installer les drivers nvidia
- sélectionner la carte graphique Intel
- installer bbswitch
- empêcher le driver open-source "nouveau" de se lancer au démarrage
- lancer bbswitch au démarrage pour éteindre la carte Nvidia
source : https://medium.com/@agathver/nvidia-gpu-optimus-prime-and-ubuntu-18-04-woes-f52e7f850f3d Continuer à lire "Arrêter la carte Nvidia Optimus Prime sous Ubuntu 20.04"
Pb de PhpMyAdmin avec PhP 7.2 : count(): Parameter must be an array or an object that implements Countable
Source : https://openclassrooms.com/forum/sujet/erreur-dans-phpmyadmin Continuer à lire "Pb de PhpMyAdmin avec PhP 7.2 : count(): Parameter must be an array or an object that implements Countable "
Mode portrait et touchpad sous Ubuntu
Il est assez facile de réorienter l'écran sous Ubuntu, mais cela ne suffit pas. Il peut aussi être utile de retourner en même temps l'écran tactile et le touchpad (sinon il reste la possibilité d'utiliser une souris).
La commande xinput permet d'appliquer une matrice de transformation aux entrées de ces périphériques et d'inverser ainsi l'axe des X et celui des Y.Sources :
- https://askubuntu.com/questions/368317/rotate-touch-input-with-touchscreen-and-or-touchpad
- https://wiki.ubuntu.com/X/InputCoordinateTransformation
⎡ X ⎤ ⎡ a11 a12 a13 ⎤ ⎡ X réél ⎤
⎜ Y ⎥ = ⎜ a21 a22 a23 ⎥ . ⎜ Y réél ⎥
⎣ Z ⎦ ⎣ a31 a32 a3 ⎦ ⎣ Z réél ⎦
Pourquoi un axe des Z alors que le périphérique n'est qu'en deux dimensions ? Hypothèse le Z représenterait la dimension max de l'écran. Si un coefficient est inférieur à 0 sur un ligne N, il faudrait ajuster le coefficient an3 de manière à ce que : an1+an2+an3=0.
Je ne peux véirifier l'hypothèse n'ayant pas d'écran tactile sous la main, étant donné que le touchpad, n'envoie, lui, que des (x,y) relatifs. Pour ce périphérique, les coefficient an3 ne semblent pas avoir d'effets.
Voici en pratique comment passer en portrait et revenir en paysage avec l'exemple de trois scripts.
Continuer à lire "Mode portrait et touchpad sous Ubuntu"Calendrier des vacances scolaires 2020-2021 sous Excel
Visual Studio Code et X2go
Deux solutions :
1. Utilser VNC (qui est tout de même moins performant que X2go)
2. Patcher libxcb.so Continuer à lire "Visual Studio Code et X2go"
Plus de son sous Android lors des appels ?
*#0*#
Source : https://www.phonandroid.com/forum/threads/resolu-pas-de-son-lors-dun-appel.61215/
Google et site en JS
1) une indexation purement HTML
2) une indexation à l'aide un moteur de rendu (Chrome 41) qui permet de prendre en compte le Javascript.
Problème : la phase II n'est réalisée que lorsque des ressources sont disponibles dans les datacentres de Google. Dans la pratique; pluiseurs semaines peuvent s'écouler entre les deux phases.
Voir la vidéo : https://youtu.be/PFwUbgvpdaQ
Source : https://www.searchenginejournal.com/google-strongly-recommends-using-html-to-get-content-indexed-quickly/269841/ Continuer à lire "Google et site en JS"
Générateurs de sites web statiques

Les générateurs de sites statiques sont apparus en 2008 (Jeckyll, Middleman). Ils permettent à partir d'un CMS, typiquement un logiciel de blog dynamique de type Wordpress, de générer des pages statiques. Cette approche permet de mettre en ligne un site très performant et offrant très peu de surface aux attaques. Il n'impose de plus que peu de contrainte à l'hébergeur.
Cet article liste quelques générateurs de sites statiques.
Sources :
- https://www.creativebloq.com/features/10-best-static-site-generators
- https://medium.com/codingthesmartway-com-blog/top-static-site-generators-for-2019-26a4c8afcc05
- https://www.sitepoint.com/static-site-generators/
Headless CMS - decoupled CMS - idées théoriques

Dans un CMS classique comme Drupal, le backend (qui permet de composer les pages) et le frontend (qui affiche ces pages) sont inséparables.
Un CMS headless ne fournit que le backend et une API qui permet d'exposer le contenu saisi. La partie frontend (head) est absente.
Un CMS découplé est un CMS headless auquel est associé un frontend par défaut qui utilise l'API pour récupérer les contenus et les mettre en forme.
Sources :
- https://www.coredna.com/blogs/headless-vs-decoupled-cms
- https://www.contentful.com/blog/2019/02/04/difference-between-headless-decoupled-contentful/ Continuer à lire "Headless CMS - decoupled CMS - idées théoriques"
Installer un imprimante canon MG5350 sur Ubuntu 19.10
mkdir drivers
cd drivers
mv ../Téléchargements/cnijfilter-mg5300series-3.60-1-deb.tar.gz .
wget http://old-releases.ubuntu.com/ubuntu/pool/universe/t/tiff3/libtiff4_3.9.7-2ubuntu1_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/g/gtk+2.0/libgtk2.0-0_2.24.32-3ubuntu1_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/g/gtk+2.0/libgtk2.0-common_2.24.32-3ubuntu1_all.deb
wget -O libpng12-0_1.2.54-1ubuntu1b_amd64.deb https://www.dropbox.com/s/79x3imq73tcqyw4/libpng12-0_1.2.54-1ubuntu1b_amd64.deb?dl=1
wget http://ftp.br.debian.org/debian/pool/main/g/glibc/multiarch-support_2.28-10_amd64.deb
sudo dpkg -i libgtk2.0-common_2.24.32-3ubuntu1_all.deb libgtk2.0-0_2.24.32-3ubuntu1_amd64.deb libpng12-0_1.2.54-1ubuntu1b_amd64.deb libtiff4_3.9.7-2ubuntu1_amd64.deb multiarch-support_2.28-10_amd64.deb
tar xfz cnijfilter-mg5300series-3.60-1-deb.tar.gz
cd cnijfilter-mg5300series-3.60-1-deb/
sudo ./install.sh
suivre ensuite les instructions.
Source : https://medium.com/@domdomegg/installing-canon-mg5200-series-drivers-on-ubuntu-19-10-f82c6c8fcc88
Installer Visual Studio Code sous Ubuntu 18.04
sudo apt install software-properties-common apt-transport-https wget
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
sudo apt update
sudo apt install code Continuer à lire "Installer Visual Studio Code sous Ubuntu 18.04"
Convertir un PDF en image sous Ubuntu
les options rx et ry permette de définir la résolution du résultat
Continuer à lire "Convertir un PDF en image sous Ubuntu"