
Il s'agit d'une application console simple pour MacOS pour créer des fonds d'écran dynamiques introduits dans MacOS Mojave. Ici, vous pouvez voir comment fonctionne les fonds d'écran dynamiques. Vous pouvez également en savoir plus sur les fonds d'écran dynamiques dans les articles suivants:
Ci-dessous, vous pouvez télécharger des fonds d'écran dynamiques préparés:
View de la Terre (téléchargement) 
Cyberpunk 2077 (téléchargement) 
Vous devez avoir installé le dernier Xcode (10.2) et Swift 5.
Ouvrez votre terminal et exécutez les commandes suivantes.
brew tap mczachurski/wallpapper
brew install wallpapperOuvrez votre terminal et exécutez les commandes suivantes.
$ git clone https://github.com/mczachurski/wallpapper.git
$ cd wallpapper
$ swift build --configuration release
$ sudo cp .build/release/wallpapper /usr/local/bin
$ sudo cp .build/release/wallpapper-exif /usr/local/bin Si vous utilisez Swift dans la version 4.1, veuillez modifier le fichier Package.swift et mettez-y votre version de Swift (en première ligne).
Vous pouvez également construire en utilisant le script build.sh (il utilise swiftc à la place CLI SWIFT).
$ git clone https://github.com/mczachurski/wallpapper.git
$ cd wallpapper
$ ./build.sh
$ sudo cp .output/wallpapper /usr/local/bin
$ sudo cp .output/wallpapper-exif /usr/local/bin Maintenant, dans la console, vous pouvez exécuter wallpapper -h et vous devriez obtenir une réponse similaire à la suivante.
wallpapper: [command_option] [-i jsonFile] [-e heicFile]
Command options are:
-h show this message and exit
-v show program version and exit
-o output file name (default is ' output.heic ' )
-i input .json file with wallpaper description
-e input .heic file to extract metadataC'est tout. Vous pouvez maintenant construire vos propres pavés dynamiques.
Si vous obtenez une erreur pendant la partie Swift Build de l'installation, essayez de télécharger l'intégralité du Xcode IDE (pas seulement des outils) de l'App Store. Puis courez
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer et exécutez à nouveau la commande d'installation.
Si vous avez fait des commandes ci-dessus maintenant, vous pouvez construire un papier peint dynamique. C'est vraiment facile. Vous devez d'abord mettre toutes vos images dans un seul dossier et dans le même dossier, créez un fichier json avec la description de l'image. Prise en charge de l'application Trois types de fonds d'écran dynamiques.
Pour le fond d'écran qui basé sur les coordonnées solaires, le fichier json doit avoir une structure comme sur l'extrait ci-dessous.
[
{
"fileName" : " 1.png " ,
"isPrimary" : true ,
"isForLight" : true ,
"altitude" : 27.95 ,
"azimuth" : 279.66
},
{
"fileName" : " 2.png " ,
"altitude" : -31.05 ,
"azimuth" : 4.16
},
...
{
"fileName" : " 16.png " ,
"isForDark" : true ,
"altitude" : -28.63 ,
"azimuth" : 340.41
}
]Propriétés:
fileName - Nom du nom du fichier d'image (vous pouvez utiliser le même fichier pour quelques nœuds).isPrimary - Informations sur l'image qui est l'image principale (elle sera visible après avoir créé un fichier heic ). Un seul des fichiers peut être primaire.isForLight - Si true image sera affichée lorsque l'utilisateur a choisi le fond d'écran "léger (statique)"isForDark - Si true image sera affichée lorsque l'utilisateur a choisi le fond d'écran "sombre (statique)"altitude - est l'angle entre le soleil et l'horizon local de l'observateur.azimuth - C'est l'angle du soleil autour de l'horizon. Pour calculer une altitude et un azimut appropriés, vous pouvez utiliser l'application ou la page Web wallpapper-exif : https://keisan.casio.com/exec/system/1224682277. Dans la page Web, vous devez mettre un endroit où vous prenez une photo et la date. Ensuite, le système génère pour vous l'altitude et l'azimut du soleil pendant toute la journée.
Pour le fond d'écran qui basé sur le fichier JSON Time json doit avoir une structure comme sur l'extrait ci-dessous.
[
{
"fileName" : " 1.png " ,
"isPrimary" : true ,
"isForLight" : true ,
"time" : " 2012-04-23T10:25:43Z "
},
{
"fileName" : " 2.png " ,
"time" : " 2012-04-23T14:32:12Z "
},
{
"fileName" : " 3.png " ,
"time" : " 2012-04-23T18:12:01Z "
},
{
"fileName" : " 4.png " ,
"isForDark" : true ,
"time" : " 2012-04-23T20:10:45Z "
}
]Propriétés:
fileName - Nom du nom du fichier d'image (vous pouvez utiliser le même fichier pour quelques nœuds).isPrimary - Informations sur l'image qui est l'image principale (elle sera visible après avoir créé un fichier heic ). Un seul des fichiers peut être primaire.isForLight - Si true image sera affichée lorsque l'utilisateur a choisi le fond d'écran "léger (statique)"isForDark - Si true image sera affichée lorsque l'utilisateur a choisi le fond d'écran "sombre (statique)"time - Heure où le papier peint sera modifié (le plus important est l'heure).Pour les fonds d'écran basés sur les paramètres d'appel de système d'exploitation (clair / sombre), nous devons préparer un fichier JSON beaucoup plus simple, et nous ne devons utiliser que deux images (une pour la lumière et une pour le thème sombre).
[
{
"fileName" : " 1.png " ,
"isPrimary" : true ,
"isForLight" : true
},
{
"fileName" : " 2.png " ,
"isForDark" : true
}
]Propriétés:
fileName - Nom du nom du fichier d'image.isPrimary - Informations sur l'image qui est l'image principale (elle sera visible après avoir créé un fichier heic ). Un seul des fichiers peut être primaire.isForLight - Si true image sera affichée lorsque l'utilisateur utilise le thème légerisForDark - Si true image sera affichée lorsque l'utilisateur utilise le thème sombre Lorsque vous avez un fichier json et toutes les images, vous pouvez générer un fichier heic . Vous devez exécuter la commande suivante:
wallpapper -i wallpapper.json Vous devriez avoir un nouveau fichier: output.heic . Définissez ce fichier en tant que nouveau fond d'écran et profitez de votre propre fond d'écran dynamique!
Vous pouvez extraire des métadonnées à partir du fichier heic existant. Vous devez exécuter la commande suivante:
wallpapper -e Catalina.heicLes métadonnées doivent être imprimées sous forme de sortie sur la console.
Il est également possible d'extraire et d'enregistrer le fichier entièrement plist :
wallpapper -e Catalina.heic -o output.plist Si vos photos contiennent des métadonnées GPS EXIF et du temps de création, vous pouvez utiliser l'application wallpapper-exif pour générer un fichier json avec Sun altitude et azimuth . Exemple d'utilisation de l'application:
$ wallpapper-exif 1.jpeg 2.jpeg 3.jpeg json doit être produit sous forme de sortie sur la console.
Les calculs Sun ont été créés sur la base de la bibliothèque JavaScript créée par Vladimir Agafonkin (@Mourner).