Logo Cinquin Andy Signature

Gestion des Ressources Multimédias dans Obsidian

Développeur Freelance - Logo

Les sites et les ressources associées

Gestion des Ressources Multimédias dans Obsidian

Publié le 16 juin 2024 -  par Andy Cinquin

ObsidianRessources multimédiasPlugin ObsidianGestion d'imagesTraitement de fichiersNotes efficacesOrganisation ressourcesAstuce multimédia

Dans cet article, nous allons voir comment je procède dans mon plugin Obsidian pour récupérer et traiter les fichiers et les images. Cette approche permet de gérer efficacement les ressources multimédias associées à vos notes.**

Récupération du chemin du dossier d'images

Tout d'abord, nous devons obtenir le chemin du dossier contenant les images. Nous partons du principe que les images sont stockées dans un sous-dossier nommé "image" situé dans le même dossier que l'article en cours.
const articleFolderPath = file.parent?.path;
const imageFolderPath = `${articleFolderPath}/image`;
Ici, articleFolderPath représente le chemin du dossier contenant l'article actuel, et imageFolderPath est le chemin du sous-dossier "image" où nous supposons que les images sont stockées.

Vérification de l'existence du dossier d'images

Avant de tenter de récupérer les fichiers d'images, nous devons vérifier si le dossier "image" existe effectivement.
const folder = app.vault.getAbstractFileByPath(imageFolderPath);
if (folder instanceof TFolder) {
  // Le dossier d'images existe
} else {
  // Le dossier d'images n'existe pas
}
Nous utilisons app.vault.getAbstractFileByPath(imageFolderPath) pour obtenir une référence abstraite au chemin du dossier. Ensuite, nous vérifions si cette référence est une instance de TFolder, ce qui confirmerait l'existence du dossier.

Récupération des fichiers d'images dans le dossier

Si le dossier "image" existe, nous pouvons récupérer les fichiers d'images qu'il contient.
const files = folder.children.filter(
  (file) =>
    file instanceof TFile &&
    file.extension.match(/^(jpg|jpeg|png|gif|bmp|webp)$/i)
);
Nous filtrons les enfants du dossier pour ne conserver que les fichiers (TFile) ayant une extension correspondant à des formats d'image courants (jpg, jpeg, png, gif, bmp, webp).

Récupération du chemin du fichier image

Enfin, si des fichiers d'images sont présents dans le dossier, nous pouvons obtenir le chemin du premier fichier trouvé.
if (files.length > 0) {
  const file = files[0];
  const imagePath = file.path;
  // Traitez le fichier image ici
}
Cette partie du code vérifie si la liste des fichiers d'images n'est pas vide. Si c'est le cas, nous récupérons le chemin (path) du premier fichier d'image trouvé pour un traitement ultérieur.

Ainsi, voici comment je procède pour récupérer et traiter les fichiers et les images dans un plugin Obsidian. Si vous avez des questions ou avez besoin de plus de détails, n'hésitez pas à les poser !



En vous remerciant de votre visite, n'hésitez pas à me contacter pour toute demande de renseignements, devis ou proposition de collaboration. Je me ferai un plaisir de vous répondre dans les plus brefs délais.
Vous avez aimé cet article ? N'hésitez pas à le partager !

DÉVELOPPONS ENSEMBLE VOS PROJETS

Une idée, un projet ? Je suis là pour répondre à vos demandes et vous accompagner.
N’hésitez pas, je serais ravi d’échanger avec vous sur votre projet !
© 2024 Andy Cinquin - Tous droits réservés - Developed & Designed with ❤️ 🐝 ForHives co-founders