
هذا تطبيق وحدة التحكم البسيطة لـ MacOS لإنشاء خلفيات ديناميكية تم تقديمها في MacOS Mojave. هنا يمكنك مشاهدة كيفية عمل خلفيات الديناميكية. كما يمكنك قراءة المزيد حول خلفيات ديناميكية في المقالات التالية:
أدناه يمكنك تنزيل خلفيات ديناميكية جاهزة:
عرض الأرض (تنزيل) 
Cyberpunk 2077 (تنزيل) 
تحتاج إلى الحصول على أحدث Xcode (10.2) و Swift 5 مثبتة.
افتح المحطة الخاصة بك وقم بتشغيل الأوامر التالية.
brew tap mczachurski/wallpapper
brew install wallpapperافتح المحطة الخاصة بك وقم بتشغيل الأوامر التالية.
$ 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 إذا كنت تستخدم Swift في الإصدار 4.1 ، فيرجى تحرير ملف Package.swift ووضع إصدارك من Swift (في السطر الأول).
كما يمكنك البناء باستخدام برنامج build.sh Script (يستخدم swiftc بدلاً من ذلك Swift CLI).
$ 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 الآن في وحدة التحكم ، يمكنك تشغيل wallpapper -h ويجب أن تحصل على استجابة مماثلة لما يلي.
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 metadataهذا كل شيء. يمكنك الآن بناء جدار جدارية ديناميكية.
إذا حصلت على خطأ أثناء الجزء السريع من التثبيت ، فحاول تنزيل Xcode IDE بالكامل (وليس فقط الأدوات) من متجر التطبيقات. ثم ركض
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer وتشغيل الأمر التثبيت مرة أخرى.
إذا كنت قد فعلت أعلاه الأوامر الآن ، فيمكنك بناء خلفية ديناميكية. إنه أمر سهل حقًا. أولاً ، يجب عليك وضع كل الصور في مجلد واحد وفي نفس المجلد قم بإنشاء ملف json مع وصف Picture. دعم التطبيق ثلاثة أنواع من الخلفيات الديناميكية.
بالنسبة إلى خلفية الجدران التي تستند إلى إحداثيات الطاقة الشمسية ، يجب أن يكون لملف json هيكلًا كما هو الحال في المقتطف أدناه.
[
{
"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
}
]ملكيات:
fileName - اسم اسم ملف الصورة (يمكنك استخدام نفس الملف لعدد قليل من العقد).isPrimary - معلومات حول الصورة وهي صورة أساسية (ستكون مرئية بعد إنشاء ملف heic ). واحد فقط من الملف يمكن أن يكون أساسيا.isForLight - إذا تم عرض الصورة true عندما اختار المستخدم خلفية "Light (Static)"isForDark - إذا تم عرض الصورة true عندما اختار المستخدم خلفية "Dark (Static)"altitude - هي الزاوية بين الشمس والأفق المحلي للمراقب.azimuth - هذه هي زاوية الشمس حول الأفق. لحساب الارتفاع المناسب و Azimuth ، يمكنك استخدام تطبيق wallpapper-exif أو تطبيق الويب: https://keisan.casio.com/exec/system/1224682277. في صفحة الويب ، عليك وضع المكان الذي تلتقط فيه صورة وتاريخ. ثم يولد النظام لك الارتفاع وسموت الشمس طوال اليوم.
بالنسبة لخلفية الجدران التي تستند إلى ملف json OS ، يجب أن يكون لها هيكل مثل المقتطف أدناه.
[
{
"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 "
}
]ملكيات:
fileName - اسم اسم ملف الصورة (يمكنك استخدام نفس الملف لعدد قليل من العقد).isPrimary - معلومات حول الصورة وهي صورة أساسية (ستكون مرئية بعد إنشاء ملف heic ). واحد فقط من الملف يمكن أن يكون أساسيا.isForLight - إذا تم عرض الصورة true عندما اختار المستخدم خلفية "Light (Static)"isForDark - إذا تم عرض الصورة true عندما اختار المستخدم خلفية "Dark (Static)"time - الوقت الذي سيتم فيه تغيير خلفية (الأهم من ذلك هو ساعة).بالنسبة للخلفيات بناءً على إعدادات OS Apperance (Light/Dark) ، يتعين علينا إعداد ملف JSON أبسط بكثير ، وعلينا أن نستخدم صورتين فقط (واحدة للضوء وواحدة للموضوع المظلم).
[
{
"fileName" : " 1.png " ,
"isPrimary" : true ,
"isForLight" : true
},
{
"fileName" : " 2.png " ,
"isForDark" : true
}
]ملكيات:
fileName - اسم اسم ملف الصورة.isPrimary - معلومات حول الصورة وهي صورة أساسية (ستكون مرئية بعد إنشاء ملف heic ). واحد فقط من الملف يمكن أن يكون أساسيا.isForLight - إذا تم عرض الصورة true عندما يستخدم المستخدم سمة الضوءisForDark - إذا تم عرض الصورة true عندما يستخدم المستخدم السمة المظلمة عندما يكون لديك ملف json وجميع الصور ، يمكنك إنشاء ملف heic . عليك تشغيل الأمر التالي:
wallpapper -i wallpapper.json يجب أن تحصل على ملف جديد: output.heic . اضبط هذا الملف كخلفية جديدة واستمتع بك خلفية ديناميكية!
يمكنك استخراج البيانات الوصفية من ملف heic الحالي. عليك تشغيل الأمر التالي:
wallpapper -e Catalina.heicيجب طباعة البيانات الوصفية كإخراج على وحدة التحكم.
من الممكن أيضًا استخراج ملف plist بالكامل وحفظه:
wallpapper -e Catalina.heic -o output.plist إذا كانت صورك تحتوي على بيانات تعريف GPS EXIF ووقت الإنشاء ، فيمكنك استخدام تطبيق wallpapper-exif لإنشاء ملف json مع Sun altitude و azimuth . مثال استخدام التطبيق:
$ wallpapper-exif 1.jpeg 2.jpeg 3.jpeg يجب أن يتم إنتاج json كإخراج على وحدة التحكم.
تم إنشاء حسابات الشمس بناءً على مكتبة JavaScript التي أنشأتها Vladimir Agafonkin (Mourner).