urxvt-background - Online în cloud

Aceasta este comanda urxvt-background care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

PROGRAM:

NUME


fundal - gestionați fundalul terminalului

REZUMAT


urxvt --background-expr „expresie de fundal”
--fond-chenar
--background-interval secunde

RAPID AND MURDAR TRIȘA FOAIE


Doar încărcați o imagine jpeg aleatorie și plasați fundalul cu ea fără scalare sau nimic
altceva:

încărcați „/path/to/img.jpg”

Același, dar utilizați oglindire/reflecție în loc de tiling:

încărcare oglindă „/path/to/img.jpg”

Încărcați o imagine și scalați-o pentru a umple exact fereastra terminalului:

scale keep { load "/path/to/img.jpg" loading="lazy" }

Implementați pseudo-transparența utilizând ca fereastră o pixmap rădăcină aliniată corespunzător
fundal:

rootalign root

La fel, dar păstrați o copie neclară:

rootalign keep { estompare 10, rădăcină }

DESCRIERE


Această extensie gestionează fundalul terminalului creând o imagine care se află în spatele
text, înlocuind culoarea normală de fundal.

O face prin evaluarea unei expresii Perl care calculează imaginea din mers, pt
de exemplu, prin preluarea fundalului rădăcină sau încărcarea unui fișier.

Deși toată puterea Perl este disponibilă, operatorii au fost proiectați să fie la fel de simpli
pe cat posibil.

De exemplu, pentru a încărca o imagine și a o scala la dimensiunea ferestrei, ați folosi:

urxvt --background-expr 'scale keep { load "/path/to/mybg.png" loading="lenes" }'

Sau specificat ca o resursă X:

URxvt.background-expr: scale keep { load "/path/to/mybg.png" loading="lazy" }

TEORIE OF OPERAȚIUNEA


La pornire, chiar înainte ca fereastra să fie mapată pentru prima dată, expresia este
evaluat și trebuie să dea o imagine. Imaginea este apoi extinsă după cum este necesar pentru a acoperi
întreaga fereastră a terminalului și este setată ca hartă de imagini de fundal.

Dacă imaginea conține un canal alfa, atunci va fi folosit așa cum este în imaginile care acceptă
canale alfa (de exemplu, pentru un manager de compoziție). În alte imagini, terminalul
culoarea de fundal va fi folosită pentru a înlocui orice transparență.

Când expresia se bazează, direct sau indirect, pe dimensiunea ferestrei, poziție, rădăcină
pixmap, sau un cronometru, atunci va fi amintit. Dacă nu, atunci va fi eliminat.

Dacă vreunul dintre parametrii pe care se bazează expresia se modifică (când fereastra este mutată
sau redimensionat, poziția sau dimensiunea acestuia se modifică; când pixmap rădăcină este înlocuită cu alta
fundalul rădăcină se schimbă; sau când cronometrul trece), atunci expresia va fi
evaluat din nou.

De exemplu, o expresie precum „scale keep { load "$HOME/mybg.png" loading="lazy" }" scalează imaginea
la dimensiunea ferestrei, deci se bazează pe dimensiunea ferestrei și va fi reevaluată de fiecare dată
este schimbat, dar nu atunci când se mișcă de exemplu. Acest lucru asigură că imaginea se umple întotdeauna
terminalul, chiar și după modificarea dimensiunii acestuia.

EXPRESII
Expresiile sunt expresii Perl normale, de fapt, sunt blocuri Perl - ceea ce înseamnă că tu
ar putea folosi mai multe rânduri și declarații:

scale keep {
din nou 3600;
dacă (ora locală acum)[6]) {
returnează încărcarea „$HOME/weekday.png”;
} Else {
returnează încărcarea „$HOME/sunday.png”;
}
}

Această expresie interioară este evaluată o dată pe oră (și ori de câte ori fereastra terminalului este
redimensionat). Se fixează duminică.png ca fundal duminica și ziua săptămânii.png în toate celelalte zile.

Din fericire, ne așteptăm ca majoritatea expresiilor să fie mult mai simple, cu puțin Perl
cunoștințele necesare.

Practic, începeți întotdeauna cu o funcție care „generează” un obiect imagine, cum ar fi
„încărcare”, care încarcă o imagine de pe disc, sau „rădăcină”, care returnează fereastra rădăcină
imagine de fundal:

încărcați „$HOME/mypic.png”

Calea este de obicei specificată ca șir între ghilimele (regulile exacte pot fi găsite în fișierul
pagina de manual perlop). The $ ACASĂ la începutul șirului este extins la casă
director.

Apoi adăugați unul sau mai mulți modificatori sau expresii de filtrare, cum ar fi „scale”:

încărcare la scară „$HOME/mypic.png”

La fel ca o expresie matematică cu funcții, ar trebui să citiți aceste expresii din
de la dreapta la stânga, deoarece „încărcarea” este evaluată mai întâi, iar rezultatul său devine argumentul pentru
funcția „scale”.

Mulți operatori permit, de asemenea, unii parametri precedați imaginea de intrare care o modifică
comportament. De exemplu, „scale” fără niciun argument suplimentar scalează imaginea la dimensiune
a ferestrei terminalului. Dacă specificați un argument suplimentar, acesta îl folosește ca scară
factor (înmulțire cu 100 pentru a obține un procent):

scara 2, încărcați „$HOME/mypic.png”

Aceasta mărește imaginea cu un factor de 2 (200%). După cum puteți vedea, „scale” are acum două
argumente, 200 și expresia „încărcare”, în timp ce „încărcare” are un singur argument.
Argumentele sunt separate unele de altele prin virgule.

Scale acceptă, de asemenea, două argumente, care sunt apoi factori separați atât pentru orizontală, cât și pentru
dimensiuni verticale. De exemplu, aceasta reduce la jumătate lățimea imaginii și dublează imaginea
înălţime:

scară 0.5, 2, încărcați „$HOME/mypic.png”

DACĂ încerci aceste expresii, s-ar putea să suferi de o oarecare lenevie, pentru că fiecare
când terminalul este redimensionat, încarcă din nou imaginea PNG și o scalează. Scalare este
de obicei rapid (și inevitabil), dar încărcarea imaginii poate consuma destul de mult timp. Aceasta este
unde „ține” este util:

scară 0.5, 2, păstrați { încărcați "$HOME/mypic.png" loading="lazy" }

Operatorul „păstrare” execută toate instrucțiunile din acolade o singură dată, sau când acesta
crede că rezultatul s-ar putea schimba. În alte cazuri, returnează ultima valoare calculată de
bloc de bretele.

Aceasta înseamnă că „încărcarea” se execută o singură dată, ceea ce o face mult mai rapidă, dar și
înseamnă că este utilizată mai multă memorie, deoarece imaginea încărcată trebuie păstrată în memorie la
toate timpurile. În această expresie, compromisul merită probabil.

Dar să revenim la efecte: Alte efecte decât scalarea sunt, de asemenea, ușor disponibile, de exemplu,
puteți plasa imaginea pentru a umple toată fereastra, în loc să o redimensionați:

țiglă păstrați { încărcați "$HOME/mypic.png" loading="lenes" }

De fapt, imaginile returnate de „încărcare” sunt implicit în modul „tigla”, deci operatorul „tigla”.
este oarecum de prisos.

Un alt efect comun este de a oglindi imaginea, astfel încât aceleași margini să atingă:

oglindă păstrează { încărcare "$HOME/mypic.png" loading="lenes" }

O altă expresie de fundal comună este:

rootalign root

Acesta face mai întâi un instantaneu al imaginii de fundal a ecranului, apoi îl mută la
colțul din stânga sus al ecranului (spre deosebire de colțul din stânga sus al terminalului
window)- rezultatul este pseudo-transparență: imaginea pare a fi statică în timp ce fereastra
este mutat în jur.

CULOARE SPECIFICAȚII
Ori de câte ori un operator se așteaptă la o „culoare”, atunci aceasta poate fi specificată în unul din două moduri:
Fie ca șir cu o specificație de culoare X11, cum ar fi:

„roșu” # culoare numită
„#f00” # rgb simplu
„[50]roșu” # roșu cu 50% alfa
„TekHVC:300/50/50” # orice merge

SAU ca referință de matrice cu una, trei sau patru componente:

[0.5] # 50% gri, 100% alfa
[0.5, 0, 0] # roșu închis, fără verde sau neclar, 100% alfa
[0.5, 0, 0, 0.7] # același cu alfa explicit de 70%.

CACHING AND SENSIBILITATE
Deoarece unele operațiuni (cum ar fi „încărcare” și „blur”) pot dura mult timp, păstrarea în cache a rezultatelor
poate fi foarte important pentru o funcționare bună. Memorarea în cache poate fi utilă și pentru a reduce memoria
utilizarea, deși, de exemplu, când o imagine este stocată în cache prin „încărcare”, aceasta ar putea fi partajată de
mai multe ferestre terminale care rulează în urxvtd.

"a pastra { ... }" cache

Cea mai importantă modalitate de a stoca în cache operațiuni costisitoare este să folosiți „keep { ... }”. „Păstrarea”
operatorul preia un bloc de instrucțiuni multiple închise de „{}” și păstrează valoarea returnată
in memoria.

O expresie poate fi „sensibilă” la diverse evenimente externe, cum ar fi scalarea sau mutarea
fereastră, modificări de fundal rădăcină și temporizatoare. Folosind pur și simplu o expresie (cum ar fi „scale”
fără parametri) care depinde de anumite valori în schimbare (numite „variabile”) sau de utilizare
acele variabile în mod direct, vor face o expresie sensibilă la aceste evenimente - de exemplu,
utilizarea „scale” sau „TW” va face expresia sensibilă la dimensiunea terminalului și, prin urmare, la
redimensionarea evenimentelor.

Când are loc un astfel de eveniment, „păstrare” va declanșa automat o reevaluare a întregului
expresie cu noua valoare a expresiei.

„păstrare” este cel mai util pentru operațiuni costisitoare, cum ar fi „blur”:

rootalign keep { estompare 20, rădăcină }

Acest lucru face o copie neclară a fundalului rădăcină o dată, iar la apelurile ulterioare, doar root-
îl aliniază. Deoarece „blur” este de obicei destul de lent și „rootalign” este destul de rapid, acest lucru se schimbă
memorie suplimentară (pentru harta de imagini încețoșată din cache) cu viteză (neclaritatea trebuie refăcută numai atunci când
modificări ale rădăcinii).

"sarcină" cache

Operatorul „încărcare” în sine nu păstrează imaginile în memorie, ci atâta timp cât imaginea este
încă în memorie, „load” va folosi imaginea din memorie în loc să o încarce proaspăt din
disc.

Asta înseamnă că această expresie:

păstrați { încărcați „$HOME/cale...” }

Nu doar cachează imaginea în memorie, ci și alte instanțe terminale care încearcă să „încarce” aceasta
reutilizați acea copie în memorie.

REFERINȚE


COMMAND LINE COMUTATOARE
--background-expr expresie-perl
Specifică expresia Perl de evaluat.

--fond-chenar
În mod implicit, expresia creează o imagine care umple toată fereastra, suprascriind
granițe și orice alte zone, cum ar fi bara de defilare.

Specificarea acestui steag modifică comportamentul, astfel încât imaginea îl înlocuiește doar pe
fundalul zonei caracterului.

--background-interval secunde
Deoarece unele operațiuni din extensia XRender de bază vă pot îngheța efectiv
X-server pentru timp prelungit, această extensie impune un timp minim între actualizări,
care în mod normal este de aproximativ 0.1 secunde.

Dacă doriți să faceți actualizări mai des, puteți reduce acest interval de siguranță cu aceasta
intrerupator.

FURNIZORI/GENERATORI
Aceste funcții oferă o imagine, încărcând-o de pe disc, luând-o de la rădăcină
ecran sau pur și simplu prin generarea acestuia. Ele sunt folosite ca puncte de plecare pentru a vă obține o imagine
se poate juca cu.

încărcați $path
Încarcă imaginea pe calea $ dată. Imaginea este setată în modul de acoperire plană.

Dacă imaginea este deja în memorie (de exemplu, deoarece o altă instanță terminală o folosește),
apoi copia în memorie este returnată în schimb.

load_uc $cale
Încărcare necache - la fel ca încărcarea, dar nu memorează imaginea în cache, ceea ce înseamnă că este mereu
încărcat din nou din sistemul de fișiere, chiar dacă o altă copie a acestuia este în memorie în acel moment.

rădăcină
Returnează pixmap fereastra rădăcină, adică, sperăm, imaginea de fundal a dvs
ecran.

Această funcție face ca expresia să fie sensibilă la rădăcina dvs., ceea ce înseamnă că va fi reevaluată
când imaginea bg se schimbă.

$culoare solidă
solid $lățime, $înălțime, $culoare
Creează o nouă imagine și o umple complet cu culoarea dată. Imaginea este setată la
modul de tiling.

Dacă $width și $height sunt omise, se creează o imagine 1x1, care este utilă pentru solid
fundaluri sau pentru utilizare în efecte de filtrare.

clona $img
Returnează o copie exactă a imaginii. Acest lucru este util dacă doriți să aveți mai multe copii
a aceleiași imagini pentru a aplica efecte diferite.

îmbina $img...
Preia orice număr de imagini și le îmbină împreună, creând o singură imagine
conținându-le pe toate. Modul de aranjare al primei imagini este utilizat ca mod de aranjare a
imaginea rezultată.

Această funcție este apelată automat atunci când o expresie returnează mai multe imagini.

PLACARE MODURI
Următorii operatori modifică modul de aranjare al unei imagini, adică modul în care pixelii
în afara zonei imaginii sunt pictate atunci când imaginea este utilizată.

țiglă $img
Plasează întregul plan cu imaginea și returnează această nouă imagine - sau, cu alte cuvinte,
returnează o copie a imaginii în modul plane tiling.

Exemplu: încărcați o imagine și plasați-o peste fundal, fără a redimensiona. "tigla"
apelul este de prisos, deoarece „încărcare” este deja implicit în modul tiling.

încărcare țiglă „mybg.png”

oglindă $img
Similar cu țiglă, dar reflectă imaginea de fiecare dată când folosește o copie nouă, astfel încât partea de sus
marginile ating întotdeauna marginile de sus, marginile din dreapta ating întotdeauna marginile din dreapta și așa mai departe (cu
placare normală, marginile din stânga ating întotdeauna marginile din dreapta și de sus ating întotdeauna marginile de jos).

Exemplu: încărcați o imagine și oglindiți-o peste fundal, evitând marginile ascuțite la
marginile imaginii în detrimentul oglindirii imaginii în sine

oglindă încărcare „mybg.png”

pad $img
Preia o imagine și o modifică astfel încât să devină toți pixelii din afara zonei imaginii
transparent. Acest mod este cel mai util atunci când doriți să plasați o imagine peste alta
imaginea sau culoarea de fundal lăsând toți pixelii de fundal în afara imaginii
neschimbat.

Exemplu: încărcați o imagine și afișați-o în colțul din stânga sus. Restul spațiului
este lăsat „gol” (transparent sau orice face compozitorul tău în modul alfa, altfel
culoarea de fundal).

încărcare tampon „mybg.png”

extinde $img
Extinde imaginea pe întregul plan, folosind cel mai apropiat pixel din zona exterioară
imaginea. Acest mod este util mai ales atunci când utilizați operațiuni de filtrare mai complexe
și doriți ca pixelii din afara imaginii să aibă aceleași valori ca pixelii din apropierea
margine.

Exemplu: doar de curiozitate, cum funcționează aceste extensii de pixeli?

extinde mutarea 50, 50, încărcare „mybg.png”

VARIABIL VALORI
Următoarele funcții oferă date variabile, cum ar fi dimensiunile ferestrei terminalului. ei
nu sunt variabile (Perl-), ci doar returnează lucruri care variază. Cele mai multe dintre ele vă fac
expresie sensibilă la unele evenimente, de exemplu, folosirea „TW” (lățimea terminalului) înseamnă dvs
expresia este evaluată din nou când terminalul este redimensionat.

TX
TY Returnează coordonatele X și Y ale ferestrei terminale (fereastra terminalului este plină
fereastră în mod implicit, iar zona de caractere numai atunci când sunteți în modul respect de chenar).

Folosirea acestor funcții face ca expresia să fie sensibilă la mișcările ferestrelor.

Aceste funcții sunt utile în principal pentru a alinia imaginile la fereastra rădăcină.

Exemplu: încărcați o imagine și aliniați-o astfel încât să pară ancorată pe fundal
(exact asta face "rootalign" de altfel.):

mutați -TX, -TY, păstrați { load "mybg.png" loading="lazy" }

TW
TH Returnează lățimea ("TW") și înălțimea ("TH") ale ferestrei terminalului (fereastra terminalului
este fereastra completă în mod implicit, iar zona de caractere numai atunci când este vorba de margine
Mod).

Folosirea acestor funcții face ca expresia să fie sensibilă la redimensionările ferestrelor.

Aceste funcții sunt utile în principal pentru a scala imaginile sau pentru a decupa imaginile în fereastră
dimensiune pentru a conserva memoria.

Exemplu: luați fundalul ecranului, decupați-l la dimensiunea ferestrei, estompați-l puțin, aliniați
în poziția ferestrei și folosiți-l ca fundal.

clip mutați -TX, -TY, păstrați { blur 5, root }

FOCUS
Returnează o valoare booleană care indică dacă fereastra terminalului are focus pe tastatură, în care
în cazul în care se întoarce adevărat.

Utilizarea acestei funcții face ca expresia să fie sensibilă la schimbările de focalizare.

Un caz obișnuit de utilizare este de a estompa imaginea de fundal atunci când terminalul își pierde focalizarea, adesea
împreună cu opțiunea de linie de comandă „-fade”. De fapt, există o funcție specială
doar pentru acel caz de utilizare: „focus_fade”.

Exemplu: utilizați două imagini de fundal complet diferite, în funcție de fereastra
are focalizare.

FOCUS? păstrați { încărcare "has_focus.jpg" loading="lenes" } : păstrați { încărcați "no_focus.jpg" încărcare="leneș" }

now Returnează ora curentă ca secunde (fracționare) de la epocă.

Folosind această expresie face nu fă-ți expresia sensibilă la timp, dar la următoarea
două funcții fac.

din nou $secunde
Când se utilizează această funcție, expresia va fi reevaluată în $secunde
secunde.

Exemplu: încărcați o imagine și rotiți-o în funcție de ora din zi (ca și cum ar fi
indicatorul de oră al unui ceas). Actualizați această imagine în fiecare minut.

din nou 60;
rotiți 50, 50, (acum % 86400) * -72 / 8640, scară păstrați { load "myclock.png" loading="lazy" }

contor $secunde
Ca „din nou”, dar returnează și o valoare de contor crescătoare, începând cu 0, ceea ce ar putea
fi util pentru unele efecte de animație simple.

FORMĂ SCHIMBARE OPERATORI
Următorii operatori modifică forma, dimensiunea sau poziția imaginii.

clip $img
clip $lățime, $înălțime, $img
clip $x, $y, $lățime, $înălțime, $img
Decupează o imagine în dreptunghiul dat. Dacă dreptunghiul se află în afara zonei imaginii
(de exemplu, când $x sau $y sunt negative) sau dreptunghiul este mai mare decât imaginea, atunci
modul Tiling definește modul în care pixelii suplimentari vor fi umpluți.

Dacă $x și $y lipsesc, atunci se presupune 0 pentru ambele.

Dacă $width și $height lipsesc, atunci se va presupune dimensiunea ferestrei.

Exemplu: încărcați o imagine, estompați-o și decupați-o la dimensiunea ferestrei pentru a economisi memorie.

clip keep { blur 10, load "mybg.png" loading="lazy" }

scară $img
scala $size_factor, $img
scară $factor_lățime, $factor_înălțime, $img
Scala imaginea în funcție de factorii dați în orizontală ($lățime) și verticală ($înălțime)
direcție.

Dacă este dat un singur factor, acesta este utilizat pentru ambele direcții.

Dacă nu sunt indicați factori, scala imaginea la dimensiunea ferestrei fără a păstra aspectul.

redimensionați $lățime, $înălțime, $img
Redimensionează imaginea la exact $width ori $height pixeli.

potrivi $img
potrivește $lățime, $înălțime, $img
Se potrivește imaginea în lățimea și înălțimea $ date fără a schimba aspectul sau
dimensiunea terminalului. Asta înseamnă că va fi micșorat sau crescut până când întreaga imagine se potrivește
zona dată, eventual părăsind granițe.

coperta $img
acoperire $lățime, $înălțime, $img
Similar cu „potrivire”, dar se micșorează sau crește până când toată zona este acoperită de imagine,
așa că, în loc să părăsească potențial margini, va tăia datele de imagine care nu o fac
potrivi.

muta $dx, $dy, $img
Mută ​​imaginea cu $dx pixeli pe orizontală și $dy pixeli pe verticală.

Exemplu: mutați imaginea spre dreapta cu 20 de pixeli și cu 30 în jos.

mutarea 20, 30,...

align $xalign, $yalign, $img
Aliniază imaginea în funcție de un factor - 0 înseamnă că imaginea este mutată spre stânga sau sus
marginea (pentru $xalign sau $yalign), 0.5 înseamnă că este exact centrată și 1 înseamnă că atinge
marginea dreaptă sau inferioară.

Exemplu: eliminați orice chenar vizibil din jurul unei imagini, centrați-o pe verticală, dar mutați-o
în partea dreaptă.

align 1, 0.5, pad $img

centru $img
centru $lățime, $înălțime, $img
Centrează imaginea, adică centrul imaginii este mutat în centrul terminalului
fereastră (sau caseta specificată de $width și $height dacă sunt date).

Exemplu: încărcați o imagine și centrați-o.

center keep { pad load "mybg.png" loading="lazy" }

rootalign $img
Mută ​​imaginea astfel încât să apară lipită pe ecran, spre deosebire de fereastră. Acest
dă iluzia unei zone mai mari în spatele ferestrei. Este exact echivalent cu
„move -TX, -TY”, adică mută imaginea în partea stângă sus a ecranului.

Exemplu: încărcați o imagine de fundal, puneți-o în modul oglindă și aliniați-o la root.

rootalign keep { oglindă încărcare "mybg.png" loading="lenes" }

Exemplu: luați fundalul ecranului și aliniați-l, dând iluzia de transparență
atâta timp cât fereastra nu este în fața altor ferestre.

rootalign root

rotiți $center_x, $center_y, $grade, $img
Rotește imaginea în sensul acelor de ceasornic cu $grade grade, în jurul punctului din $center_x și
$center_y (specificat ca factor al lățimii/înălțimii imaginii).

Exemplu: rotiți imaginea cu 90 de grade în jurul centrului acesteia.

rotiți 0.5, 0.5, 90, păstrați { încărcați "$HOME/mybg.png" loading="lazy" }

CULOARE MODIFICARI
Următorii operatori modifică pixelii imaginii.

nuanță $culoare, $img
Nuanță imaginea în culoarea dată.

Exemplu: nuanțați imaginea în roșu.

nuanță „roșu”, încărcă „rgb.png”

Exemplu: la fel, dar specificați culoarea după componentă.

nuanță [1, 0, 0], încărcați „rgb.png”

umbră $factor, $img
Umbriți imaginea după factorul dat.

contrast $factor, $img
contrast $r, $g, $b, $img
contrast $r, $g, $b, $a, $img
Reglează contrast a unei imagini.

Prima formă aplică un singur $factor roșu, verde și albastru, a doua formă
aplică factori separați fiecărui canal de culoare, iar ultima formă include alfa
canal.

Valorile de la 0 la 1 scad contrastul, valorile mai mari decât 1 măresc contrastul.

Datorită limitărilor din extensia XRender de bază, scăderea contrastului se reduce, de asemenea
luminozitatea, în timp ce creșterea contrastului în prezent crește și luminozitatea.

luminozitate $bias, $img
luminozitate $r, $g, $b, $img
luminozitate $r, $g, $b, $a, $img
Reglează luminozitatea unei imagini.

Prima formă aplică un singur $bias la roșu, verde și albastru, a doua formă se aplică
prejudecăți separate pentru fiecare canal de culoare, iar ultima formă include canalul alfa.

Valorile mai mici de 0 reduc luminozitatea, în timp ce valorile mai mari de 0 o măresc. Util
intervalul este de la -1 la 1 - prima rezultă într-o imagine neagră, cea din urmă într-o imagine albă.

Datorită idiosincraziilor din extensia XRender de bază, distorsiunile mai mici decât zero pot
be foarte încet.

Puteți încerca și operatorul experimental(!) „muladd”.

muladd $mul, $add, $img # EXPERIMENTAL
Mai întâi înmulțește pixelii cu $mul, apoi adaugă $add. Acesta poate fi folosit pentru implementare
luminozitate și contrast în același timp, cu un interval de valori mai larg decât contrastul și
operatori de luminozitate.

Datorită numeroaselor erori în implementările XRender, poate introduce și o serie de
artefacte vizuale.

Exemplu: măriți contrastul cu un factor de $c fără a modifica și luminozitatea imaginii
mult.

muladd $c, (1 - $c) * 0.5, $img

estompa $raza, $img
estompare $radius_horz, $radius_vert, $img
Gaussian estompează imaginea cu (aproximativ) $radius raza pixelului. Razele pot fi de asemenea
specificate separat.

Încețoșarea este adesea foarte lent, cel puțin comparat sau alți operatori. Raze de estompare mai mari
sunt și mai lente decât cele mai mici, așa că dacă nu doriți să înghețați ecranul pentru mult timp
ori, începeți să experimentați cu valori scăzute pentru rază (<5).

focus_fade $img
focus_fade $factor, $img
focus_fade $factor, $culoare, $img
Estompează imaginea cu factorul (și culoarea) dat atunci când focalizarea este pierdută (la fel ca și pentru
Opțiunile din linia de comandă „-fade”/“-fadecolor”, care furnizează și valorile implicite pentru
„factor” și $culoare. Spre deosebire de „-fade”, factorul $ este o valoare reală, nu a
valoare procentuală (adică 0..1, nu 0..100).

Exemplu: faceți ceea ce trebuie atunci când este solicitată estomparea focalizării.

focus_fade încărcare „mybg.jpg”;

ALTE STUFF
Orice lucru care nu se potrivea cu oricare dintre celelalte categorii, chiar și după aplicarea forței și
închizând ochii.

a pastra { ... }
Acest operator ia ca argument un bloc de cod, adică una sau mai multe instrucțiuni incluse
prin bretele.

Trucul este că acest bloc de cod este evaluat numai atunci când rezultatul se schimbă - activat
alte apeluri „keep” returnează pur și simplu imaginea pe care a calculat-o anterior (da, ar trebui
poate fi folosit numai cu imagini). Sau, cu alte cuvinte, „păstrați” memorii cache rezultatul codului
bloc, astfel încât să nu fie nevoie să fie calculat din nou.

Acest lucru poate fi extrem de util pentru a evita refacerea operațiunilor lente - de exemplu, dacă dvs
expresia de fundal ia fundalul rădăcină, îl estompează și apoi îl aliniază la rădăcină
ar trebui să estompeze fundalul rădăcină la fiecare mișcare sau redimensionare a ferestrei.

Un alt exemplu este „încărcarea”, care poate fi destul de lentă.

De fapt, urxvt însuși înglobează întreaga expresie într-un fel de bloc „păstrați”, astfel încât
este reevaluată numai după caz.

Punerea neclarității într-un bloc de „păstrare” se va asigura că estomparea este făcută o singură dată, în timp ce
„Rootalign” se face în continuare de fiecare dată când fereastra se mișcă.

rootalign keep { estompare 10, rădăcină }

Aceasta lasă întrebarea cum să forțați reevaluarea blocului, în cazul rădăcinii
modificări de fundal: dacă expresia din interiorul blocului este sensibilă la un anumit eveniment (rădăcină
modificări de fundal, modificări ale geometriei ferestrei), apoi va fi reevaluată
automat după cum este necesar.

Utilizați urxvt-background online folosind serviciile onworks.net



Cele mai recente programe online Linux și Windows