Cài đặt chủ đề
Tôi đã tạo chủ đề như bạn muốn với logo Ubuntu bị mờ (hơn nữa tôi đã thêm một hình ảnh động của logo Ubuntu. Hy vọng bạn thích nó :-P)
Ảnh chụp màn hình
Bạn muốn xem nó sống?
Truy cập http://www.youtube.com/watch?v=zPo50gM3txU
Bạn có thể lấy chủ đề này ở đâu?
Tôi đã tải nó lên đám mây Mediafire ở đây .
Bạn cài đặt nó như thế nào?
Tải xuống từ liên kết trên, lưu nó trên Bàn làm việc của bạn, sau đó đưa ra từng lệnh một. Vui lòng thay thế /lib/plymouth/themes
bằng /usr/share/plymouth/themes
trong các lệnh, nếu bạn đang ở ngày 16.04 trở lên.
cd ~/Desktop/
tar -xf ubuntufaded.tar
sudo cp -r ubuntu-faded-screen '/lib/plymouth/themes'
sudo rm '/lib/plymouth/themes/default.plymouth'
sudo ln -s '/lib/plymouth/themes/ubuntu-faded-screen/ubuntu-faded-screen.plymouth' '/lib/plymouth/themes/default.plymouth'
sudo update-initramfs -u
Làm thế nào để kiểm tra nó?
- Khởi động lại Ubuntu và bạn sẽ thấy một hình ảnh động đẹp trong khi khởi động và tắt. HOẶC LÀ
Sao chép toàn bộ lệnh bên dưới và dán nó vào một thiết bị đầu cuối và nhấn enter. (Bạn có thể sẽ cần phải cài đặt một gói sudo apt-get install plymouth-x11
:)
sudo plymouthd --debug --debug-file=/tmp/plymouth-debug-out ; sudo plymouth --show-splash ; for ((I=0;I<10;I++)); do sleep 1 ; sudo plymouth --update=event$I ; done ; sudo plymouth --quit
Cách tự tạo chủ đề Plymouth
Plymouth Scripting Language rất giống với C hoặc JavaScript. Nếu bạn biết những ngôn ngữ này, sẽ rất dễ dàng để tự tạo các tập lệnh Plymouth.
Hãy bắt đầu với những điều cơ bản như toán tử, lặp, nhận xét, v.v ... Ba loại bình luận được hỗ trợ.
# comment like in bash
// single line comment like in C
/* block comments */
Báo cáo được chấm dứt bằng dấu chấm phẩy, ví dụ
foo = 10;
Khối câu lệnh có thể được tạo bằng dấu ngoặc nhọn, vd
{
foo = 10;
z = foo + foo;
}
Các nhà khai thác được hỗ trợ là +
, -
, *
, /
, %
. Toán tử gán tốc ký cũng được hỗ trợ, +=, -=, *=,
v.v ... Toán tử đơn nguyên cũng được hỗ trợ, vd
foo *= ++z;
+
được sử dụng để nối, ví dụ
foo = "Jun" + 7; # here foo is "Jun7"
Ví dụ toán tử so sánh:
x = (3 >= 1); # assign 1 to x because it's true
y = ("foo" == "bar"); # assign 0 to y because it's false
Hoạt động có điều kiện và lặp:
if (foo > 4)
{
foo--;
z = 1;
}
else
z = 0;
while (foo--)
z *= foo;
&&
, ||
, !
Cũng được hỗ trợ.
if ( foo > 0 && foo <4 )
Điều này có thể mới đối với nhiều người đọc: băm, tương tự như mảng. Băm có thể được tạo bằng cách truy cập nội dung của chúng bằng cách sử dụng dot
hoặc [ ]
ngoặc, ví dụ
foo.a = 5;
x = foo["a"] ; # x equals to 5
Sử dụng fun
từ khóa để xác định chức năng, ví dụ
fun animator (param1, param2, param3)
{
if (param1 == param2)
return param2;
else
return param3;
}
Hai đối tượng cơ bản của Plymouth
Hình ảnh, tưởng tượng
Để tạo một Hình ảnh mới, cung cấp tên tệp của một hình ảnh trong thư mục chủ đề Image()
. Hãy nhớ rằng, chỉ các tệp .png được hỗ trợ . Ví dụ:
background = Image ("black.png");
Để hiển thị một tin nhắn văn bản, bạn phải tạo một Image
văn bản. (Điều này có thể làm bạn ngạc nhiên.) Ví dụ:
text_message_image = Image.Text("I love Ubuntu");
Chiều rộng và chiều cao có thể được tìm thấy bằng cách sử dụng GetWidth()
và GetHeight()
; ví dụ:
image_area = background.GetWidth() * background.GetHeight();
Người ta có thể xoay hoặc thay đổi kích thước của Hình ảnh; ví dụ:
down_image = logo_image.Rotate (3.1415); # Image can be Rotated. Parameter to Rotate is the angle in radians
fat_image = background.Scale ( background.GetWidth() * 4 , background.GetHeight () ) # make the image four times the width
Ma
Sử dụng Sprite
để đặt một Image
màn hình.
Tạo một Sprite
:
first_sprite = Sprite ();
first_sprite.SetImage (background);
Hoặc bằng cách cung cấp hình ảnh cho nhà xây dựng của nó,
first_sprite = Sprite (background);
Cách đặt sprite khác nhau cho các vị trí khác nhau trên màn hình (x, y, z):
first_sprite.SetX (300); # put at x=300
first_sprite.SetY (200); # put at y=200
background.SetZ(-20);
foreground.SetZ(50);
Hoặc bạn có thể thiết lập tất cả cùng một lúc với SetPosition()
:
first_sprite.Setposition(300, 200, 50) # put at x=300, y=200, z=50
Thay đổi độ mờ đục:
faded_sprite.SetOpacity (0.3);
invisible_sprite.SetOpacity (0);
Một số phương pháp linh tinh được sử dụng là:
Window.GetWidth();
Window.GetHeight();
Window.SetBackgroundTopColor (0.5, 0, 0); # RGB values between 0 to 1.
Window.SetBackgroundBottomColor (0.4, 0.3, 0.6);
Plymouth.GetMode(); # returns a string of one of: "boot", "shutdown", "suspend", "resume" or unknown.
etc.
Chức năng được xác định trước
Plymouth.SetRefreshFunction (function); # Calling Plymouth.SetRefreshFunction with a function will set that function to be called up to 50 times every second
Plymouth.SetBootProgressFunction(); # function is called with two numbers, time spent booting so far and the progress (between 0 and 1)
Plymouth.SetRootMountedFunction(); # function is called when a new root is mounted
Plymouth.SetKeyboardInputFunction(); # function is called with a string containing a new character entered on the keyboard
Plymouth.SetUpdateStatusFunction(); # function is called with the new boot status string
Plymouth.SetDisplayPasswordFunction(); # function is called when the display should display a password dialogue. First param is prompt string, the second is the number of bullets.
Plymouth.SetDisplayQuestionFunction(); # function is called when the display should display a question dialogue. First param is prompt string, the second is the entry contents.
Plymouth.SetDisplayNormalFunction(); # function is called when the display should return to normal
Plymouth.SetMessageFunction(); # function is called when new message should be displayed. First arg is message to display.
Hàm toán học
Math.Abs()
Math.Min()
Math.Pi()
Math.Cos()
Math.Random()
Math.Int()
etc.
Nó là tốt hơn để sửa đổi một kịch bản hiện có hơn là bắt đầu từ đầu.
Mở .script
tập tin từ chủ đề được tải lên của tôi và cố gắng hiểu những gì nó làm. Một hướng dẫn tuyệt vời có thể được tìm thấy ở đây .
Tôi chắc chắn bạn sẽ học được điều này. Nó không khó. Hãy cho tôi biết nếu bạn cần bất kỳ sự giúp đỡ.
Hy vọng nó sẽ giúp bạn tự tạo một cái.
Trả lời bình luận của Roshan George :
Is it possible to replace the purple colour with an image as background in the default Plymouth theme names "ubuntu-logo" ?
background = Image ("your-image.png");
sprite = Sprite (background.Scale (Window.GetWidth(), Window.GetHeight()));
sprite.SetX (0); # put at x=0
sprite.SetY (0); # put at y=0
Bạn có thể cần phải thêm sprite.SetZ (-10);
Bạn nên loại bỏ
Window.SetBackgroundTopColor (p, q, r);
Window.SetBackgroundBottomColor (a, b, c);
nơi p, q, r, a, b, c
là một số giá trị.
Thêm liên kết