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 !