[LibreOffice Draw ] Comment réduire facilement un pdf scanné ?
Dernièrement ma fille a eu besoin de diminuer la taille d'un pdf de 14 pages obtenu via un scanner/photocopieur pour pouvoir le déposer sur un site. Le document initial pesait 7,4 Mo mais n'était pas accepté à cause de son poids, ce qui se comprend. Il faut préciser que lorsqu'on scanne un document de cette façon, on obtient en fait une image pour chaque page (on n'obtient pas un fichier avec du texte sélectionnable).
Qu'à cela ne tienne en tant que "spécialiste", je pensais que ça serait facile... en utilisant notamment GhostScript en ligne de commande sur ma Linux Mint 22.1. Grave erreur : impossible de diminuer la taille (même avec l'option /screen).
N'ayant pas le temps de me pencher dans les options de la commande gs (notamment pour la compression des images), dans l'urgence, j'ai donc lâchement décidé de me rabattre sur les applications en ligne gratuites proposant ce service (oui on repassera pour ce qui est de la confidentialité...). Je peux vous dire que les résultats ont été aussi peu concluants. Sur le site Adobe et d'autres, il était indiqué que le fichier était déjà compressé ou le résultat obtenu ne montrait pas de diminution notable de la taille. Le site qui m'a permis d'atteindre les moins mauvais résultats a été https://tools.pdf24.org/fr/compresser-pdf où le mieux que j'ai pu faire à été d'arriver à 5,8 Mo. C'était un peu mieux mais loin d'être satisfaisant.
C'est là que j'ai eu un déclic ! Mais LibreOffice Draw permet d'ouvrir les PDF. Il y a peut-être un moyen d'agir sur les paramètres d'exportation pdf pour ré-exporter au format pdf ensuite. BINGO ! Avec cette méthode, j'ai obtenu un pdf lisible (sans différence notable par rapport à l'original) pesant 2,2 Mo.
Alors comment as-tu fait me direz-vous ? J'y viens 😉.
[Blender] Comment incruster une zone dans une video avec le motion tracking
J'ai eu besoin de visualiser des surfaces naturelles (bois, champs) dans une vidéo prise par un drone afin de se faire une idée de leur étendue. Au départ je pensais le faire avec Kdenlive mais l'application Blender est la plus adaptée pour cette tâche avec son outil "Motion Tracking".
Site officiel : https://www.blender.org/
Je détaille ici le process permettant d'incruster une objet avec Blender 4.0 car c'est celui dont j'aurai besoin pour afficher mes surfaces.
J'ai laissé volontairement l'interface en anglais pour qu'on ait les termes exacts des différents paramètres qu'on retrouve majoritairement sur Internet.
Voir aussi cet article sur Blender qui complète celui-ci : [Blender] Aide-mémoire et astuces
Sources intéressantes :
- Tutoriels courts en français (idéal pour commencer) :
- En anglais : https://www.youtube.com/watch?v=vB07Bws8bmY
I- Espace de travail "Motion tracking" dans Blender
- Ouvrir Blender normalement.
- Appuyer sur "+" (Add Workspace) en bout de ligne des menus en haut vers la droite.
- Choisir "VFX" -> "Motion Tracking".
II- Importation et réglages de la vidéo
[Primtux] Utilisation avec un VPI / TBI
Pour ne pas surcharger la page détaillant différentes manipulations pour installer Primtux, je regroupe ici des Informations permettant d'utiliser un TBI avec Primtux 5 Lubuntu. Voir les sources ci-dessous :
- https://forum.primtux.fr/viewtopic.php?id=1860
- https://forum.primtux.fr/viewtopic.php?id=1241
- https://forum.ubuntu-fr.org/viewtopic.php?id=418054
I. Paramétrage de l'affichage
Solution 1 : On peut utiliser l'utilitaire qui apparaît soit sous l'intitulé "Paramètres d'affichage" soit sous "LXRandR" qui est exactement ce qu'il faut pour régler l'affichage et le sauvegarder. Attention, on ne retrouve pas cette application directement dans les menus : le mieux c'est de se créer un lanceur dans la barre d'outil verticale (on peut aussi l'ajouter dans les menus).
Il est alors possible de choisir sommairement la disposition sur le premier onglet et d'ajuster la résolution, l'activation dans le deuxième :
Extraire directement les données de géocalisation d'une photo sous Linux Mint Mate
Lorsqu'on prend des photos et si celles-ci sont géolocalisées (cas à partir d'un drone ou d'un ordiphone si on n'a pas désactivé cette fonction), il est possible de récupérer les données EXIF contenant ces informations. Malheureusement ces données ne sont pas accessibles directement dans les propriétés des fichiers : on obtient les métadonnées du fichiers mais sans les autres données EXIF.
Il existe les outils "exif" et "exiftool" utilisables en ligne de commande mais pouvoir le faire via le menu contextuel de l'explorateur de fichiers (Nemo ou Caja selon les versions de Linux Mint) serait l'idéal.
Et bien quelqu'un (un grand merci à lui) y a pensé pour l'explorateur de fichiers Nemo et partagé plusieurs scripts shell pour obtenir ces info détaillées : https://github.com/s-n-ushakov/exif-gps-mapping-nemo. On ne va s'intéresser qu'à un seul script proposé et faire en sorte qu'il s'adapte à Caja.
Pour avoir des infos sur les scripts exécutables dans les explorateurs de fichiers comme Nautilus, Nemo ou Caja, voir cette page : https://doc.ubuntu-fr.org/nautilus_scripts
I- Script pour le menu contextuel dans Caja
Voici le script détaillé récupéré ici https://github.com/s-n-ushakov/exif-gps-mapping-nemo/blob/master/nemo/actions/action_scripts/exif_metadata_list_exiftool.bash :
#! /bin/bash
#-----------------------------------------------------------------------------------------------------------------------
# Script to implement rendering of Exif metadata for media files in a Zenity/Nemo dialog using 'exiftool' utility.
#
# See 'https://exiftool.org/', 'https://exiftool.sourceforge.net/' and 'https://github.com/exiftool/exiftool'
# for 'exiftool' utility.
#-----------------------------------------------------------------------------------------------------------------------# obtain bulk metadata from `exiftool` utility
bulk_exif_data=$(exiftool -coordFormat "%.6f" "$1")# prepare the text to be displayed and arrange for rendering
text_to_display="${bulk_exif_data}"
echo "${text_to_display}" \
| zenity --text-info \
--title="Exif metadata for '${1##*/}'" \
--width=1000 \
--height=500 \
--window-icon=exifinfo \
--font='DejaVu Sans Mono'
II- Intégration du script dans le menu contextuel de Caja
Voici les étapes pour intégrer cette fonctionnalité dans Linux Mint Mate avec Caja :
[Primtux] Installation de Primtux 8
Aide-mémoire pour l'installation de Primtux 8 sur un PC ou un ordinateur portable (il s'agit d'une petite mise à jour de [Primtux] Installation de Primtux7).
Je décris ici une installation "type" (selon mes critères 😉) de la version Primtux 8 bâtie à partir de Linux Mint 21.3 destinée à des machines ayant plus de 2 Go de mémoire vive (4 Go recommandé) et datant d'au moins 2010. Il s'agit de la version à privilégier à moins de disposer d'une machine poussive (moins de 2 Go de mémoire vive) pour laquelle la version i386 sera plus adaptée.
Site officiel de Primtux : https://primtux.fr.
On trouve toute la documentation utile sur le site https://documentation.primtux.fr : aussi bien pour l'installation par les administrateur⋅rices qu'un volet pédagogique pour l'exploitation en classe.
Pour la partie spécifique aux installations : https://documentation.primtux.fr/books/manuel-de-ladministrateur/chapter/installer-primtux
À noter : depuis Primtux 8, les noms des 4 comptes ont changé. Ainsi, l'ancien compte "administrateur" est devenu le compte "poe".
I. Récupération de Primtux et installation "basique" :
A- Clé USB de démarrage (clé de boot)
On récupère la version de Primtux qui nous intéresse sur le site principal : https://primtux.fr/telecharger-primtux/.
On copie l'iso téléchargée sur sa clé usb de démarrage (Easy2Boot ou Ventoy) : en général, c'est bien d'avoir les 2 car selon les ordinateurs, une marche mieux que l'autre. On vérifie bien l'intégrité de cette copie de l'iso avec le MD5SUM (impératif pour éviter des déconvenues !!!). Attention une clé Easy2Boot est assez ardue à préparer (il est même possible d'y intégrer Ventoy), par contre j'ai constaté qu'en général Easy2Boot marchait mieux (c'est utile si on a beaucoup d'installations à faire).
Attention pour certains ordinateurs verrouillés par les fabriquants comme loRdi région en Occitanie, on devra utiliser ReFind qu'il faudra installer sur une clé dédiée !!!
B- Installation
On démarre (boote) l'ordinateur sur la clé usb en appuyant sur les touches de démarrage (elles dépendent des ordinateurs mais souvent il s'agit des touches "F12", "Esc", "F1", "F2", "F8", "F9", ...). Si ça ne fonctionne pas, il faudra aller trafiquer dans le BIOS pour désactiver le "Secure Boot" ou autres options de démarrage (mais ce n'est pas l'objet de cette page). Une fois qu'on a démarré sur la clé USB, on installe en suivant les instructions qui s'affichent à l'écran. Pour ma part, je choisis toujours le clavier "Français occitan" pour disposer des majuscules accentuées et avec cédille ainsi que les voyelles accentuées de l'occitan.
C- Mise à jour du système
→ Indispensable pour disposer des dernières versions de paquets et corrections avec les commandes suivantes dans cet ordre :
sudo apt update
sudo apt upgrade
Utiliser des Raspberry Pi 4 en tant que clients lourds
PROJET EN COURS mais FONCTIONNEL !
|
Primtux en utilisation avec des clients lourds n'est pas envisageable tel quel. En effet, il y a un problème avec les comptes utilisateurs. J'ai donc choisi de me baser sur l'interface de l'administrateur car qui peut le plus, peut le moins. Par contre, les utilisateur⋅rice⋅s se connecteront avec leur propres identifiants et disposeront de leur propre dossier /home. Bref, on reprend le principe des clients Éclair. |
ATTENTION : Depuis 2019, LTSP a été ré-écrit afin de prendre en compte les évolutions comme Systemd, Wayland et autres. C'est la version que l'on trouve à partir d'Ubuntu 20.04. De fait, l'ancienne version est dénommée LTSP 5 et on la trouve dans Ubuntu 16.04 et 18.04. Du coup, pour des question de pérennité, il faut faire évoluer la version LTSP5 vers la nouvelle qui au moment de la rédaction de cette page est la LTSP 20. Plus d'info, sur cette page : https://ltsp.org/docs/ppa/
AVERTISSEMENT : La nouvelle version de LTSP ne supporte plus les clients légers dans le sens où les applications ne fonctionnent plus de façon déportée sur le serveur. Ce fonctionnement qu'on trouve dans la version LTSP 5 n'est plus adapté et il est très contraignant en terme de développement ce qui engendre des problèmes non résolus faute de suivi (voir les infos en anglais ici : https://github.com/ltsp/ltsp/discussions/243#discussioncomment-101460). On parlera donc maintenant de clients lourds (ou riches ou fat clients en anglais) dans le sens où les applications fonctionnent localement et que le lien avec le serveur ne sert que pour l'échange de données.
AVERTISSEMENT 2 : Je me suis cassé les dents sur la configuration du réseau pour l'accès à Internet des clients lourds. Faut dire aussi, que j'étais initialement sur un réseau avec proxy, sans serveur DHCP... ce qui a compliqué grandement les choses. En passant sur un réseau simple, sans proxy, avec une box pour la liaison directe avec Internet, les problèmes se sont arrangés. ÉVITER UN RÉSEAU AVEC PROXY ET SANS SERVEUR DHCP !
Sources officielles :
- https://ltsp.org
- https://github.com/ltsp
- https://github.com/ltsp/ltsp/wiki
- Forum de discussion où on peut avoir des infos : https://github.com/ltsp/ltsp/discussions
- Fil de discussion ouvert sur le forum Primtux : https://forum.primtux.fr/viewtopic.php?id=2284
1- Avantages d'un serveur de clients Lourds basé sur le projet LTSP
[Android] Application Automate
Automate est une application pour ordiphone sous Android permettant de programmer des scripts ou de lancer une série d'actions à l'aide de briques à la façon de Node-Red. Cette application est très puissante et offre un éventail de possibilités inouï, notamment en domotique. Vous trouverez sur cet artcile comment je l'utilise pour piloter mon ampli Yamaha : [Yamaha Ampli RX-V677] Pilotage par le réseau via l'API xml de Yamaha.
Site officiel : https://llamalab.com/automate/
La version gratuite est limitée à 30 blocs travaillant simultanément, sans publicité ou autre désagrément, ce qui est largement suffisant pour découvrir la puissance de cette application. Je vous conseille, comme moi, de soutenir ses développeur⋅euses en payant les 3,90€ demandés 😉 pour lever cette limitation, somme très raisonnable au demeurant.
Il faut dire qu'il faut prendre le temps de rentrer dans cette application mais avec le cas de mon ampli très particulier, je me suis rendu compte de sa puissance.
Appli sur le store : https://play.google.com/store/apps/details?id=com.llamalab.automate
Je mets sur cette page des info et des liens utiles.
A- Comment accéder à des droits avec des privilèges élevés
Certaines actions nécessitent des droits avec des privilèges élevés comme par exemple "tuer" une application (commande "App Kill"). Il est donc nécessaire de paramétrer Automate pour le lui permettre.
Source : https://llamalab.com/automate/doc/adb.html.
Dans Automate, aller dans "Settings" -> "Privileged service start method" et choisir "Android Debug Bridge (ADB). Ensuite, Automate guide l'utilisateur⋅rice pour réaliser les réglages dans Android en indiquant chaque étape.
À partir d'Android 11 (comme pour mon ordiphone Xiaomi), il faut simplement activer le debugage sans fil par wifi (Wireless debugging option) dans le mode développeur. Puis appairer l'ordiphone pour lui permettre de communiquer avec Automate, en restant appuyer sur l'option "débugage sans fil".
Page 4 sur 39
