Contacte

Cum se instalează script-uri în Adobe Illustrator. Scripturi în Adobe Illustrator

Îți voi spune despre un panou foarte confortabil, despre care zvonurile merg adesea: cât de bună este ea, și indiferent cât de mult a fost, dacă a fost instalat pentru mine și a lucrat și a lucrat!

Avantajele acestui panou:

Abilitatea de a localiza dosarele cu scripturi oriunde pe computer - trebuie doar să specificați calea către ei.

Dacă le aranjați în dosar Script Bay Cross-ApplicationAcestea vor fi disponibile pentru alte programe Adobe. Și le puteți încărca pur și simplu prin specificarea adăugați dosarul Cross App.

Compactness și comoditate. Puteți poziționa toate scripturile în foldere separate, organizându-le prin frecvența de utilizare sau prin caracteristicile lor: aleatoriu, cu selecție, lucrul cu text, efecte speciale. Apropo, în setările Script Bay puteți crea categorii care vor înlocui aceste foldere.

Dar principalul motiv pentru care scriu acest articol este că metoda standard de instalare și prin modul recomandat de soluțiile in-unelte, nu m-am ajutat. Ca și cu mulți, judecând prin exclamațiile din LJ și alte comunități.

Există mai multe probleme:

Pluginul nu este instalat prin Adobe Extensan Manager și are o rezoluție vicleană a ZXP.
- Instalat, dar muște sau pierde toate scripturile atunci când Illustratorul Adobe este nou.

Prin urmare, dacă nu reușiți, de asemenea, să instalați pluginul prin Adobe Extension Manager, puteți merge în calea mea. Așa am rezolvat această problemă.

1. Instalarea ScriptBay.

A primit un plugin din arhivă. Doar deschideți Scriptbay.zxp. prin Winrar. (Archiver) și eliminați fișierele de la acesta într-un folder separat ScriptBay.

Plasat dosarul rezultat în cazul în care este necesar. Mânere :)
În versiunea mea a ilustratorului (Adobe Illustrator CS6) este dosarul extensii.


C: \\ Program Files (X86) \\ Fișiere comune \\ Adobe \\ CS6ServiceManager \\ Extensii

Pentru CS5, trebuie să puneți folderul cu plug-in-uri plugin-uri.

C: \\ Program Files \\ Adobe \\ Adobe Illustrator CS5 \\ Plug-in

Pentru alte versiuni, puteți găsi un dosar în imagine și asemănător. Pentru CC, datorită tipilor de sfaturi, iată modul în care:

C: \\ Program Files (x86) \\ Fișiere comune \\ Adobe \\ Cep \\ Extensii

2. Adăugați scripturi la ScriptBay

Apoi adăugăm scripturile dvs. preferate la panoul nostru. Puteți deschide panoul plug-in din meniul ferestrei:


Fereastră\u003e Extensie\u003e Scriptbay (fereastră\u003e Extensii\u003e Scriptbay)

Pentru a adăuga scripturi, faceți clic pe panou adăugați dosarul scriptului. Și să specificați calea către scripturile folderului de stocare de pe computer.


Dacă scripturile sunt proiectate nu numai pentru Adobe Illustrator - faceți clic pe adăugați dosarul Cross App.
Pentru a elimina folderul din stânga, evidențiați și faceți clic pe eliminați folderul de script..
Dacă nu le păstrați într-un loc special pe un alt disc, puteți specifica dosarul nativ al scripturilor Illustrator:

De obicei, calea către dosar este:


Disc C\u003e Fișiere de programe\u003e Adobe\u003e Dosar cu versiunea dvs. Adobe Illustrator\u003e Stiluri\u003e EN_GB sau RU (există un dosar - Nu pierdeți)\u003e Scripturi (scripturi)

Dar nu mai am mințit acolo. Nu le țin pe un disc cu ferestre și programe. La lucrarea panoului Script Bay, acest lucru nu este reflectat. De asemenea, panoul vă permite să selectați două moduri de vizionare: lemn și foaie - afișați scripturile ca listă sau copac.


3. Meniul Script Bay și alte funcții

Pe scurt despre alte comenzi de meniu contextual:

ascundeți / afișați dosare goale - Ascundeți / afișați dosare goale
afișați calea de fișier script - Specificați calea către fișierul script
ascundeți / afișați folderele implicite - Ascunde / Afișează folderele în mod implicit
dezvăluie scripturi instalate. - Identificați scripturile instalate
script Preferința Bay. - Meniu Settings Bay Script
verifică pentru actualizări. - Verifică pentru actualizări
despre - Versiunea Script Bay

Meniul Settings Bay Script duplică câteva comenzi de meniuri de context.


Dar are, de asemenea, diferențe. Deci, aici vă puteți crea categoriile pentru întreaga colecție a scripturilor dvs., ceea ce vă va înlocui creați și asortați scripturile de dosare.


Dacă vă simțiți capabil să scrieți un nou script strălucit, utilizați Editorul de script Bay Built-in - Editor de script.

În Illustrator, există o grămadă de instrumente, dar chiar și cu toată această abundență, va fi întotdeauna ceva dor. Aici vin la scripturile și pluginurile de salvare. Folosind-le, puteți îndeplini aceste sarcini pe care ilustratorul în sine nu le poate efectua. În acest articol vă veți familiariza cu 10 scripturi gratuite și cele mai utile (scenarii) pentru Illustrator!

Scripturi?

Illustrator suportă script-uri de la AppleScript, Visual Basic, JavaScript și Extenscript. În stare activată, aceștia efectuează diverse operațiuni în interiorul ilustratorului și pot implica și alte programe, cum ar fi editorii de text, programele de bază de date și foi de calcul. Puteți utiliza atât scripturile finite instalate în mod implicit, fie de propria persoană și să vă creați propriul dvs. Pentru informații mai mari despre scenariile din Illustrator, aflați documentația din folderul Adobe Illustrator CS3 / scripting.

Instalați script-uri

Descărcați scriptul dorit. După plasarea acestuia în dosarul Adobe Illustrator CS3 / Presets / Scripts și va apărea în submeniul scriptului. Pentru a porni scriptul de care aveți nevoie în Illustrator, faceți clic pe Fișier\u003e Scripturi și selectați-l în lista derulantă.


1) Închideți toate modalitățile de a închide toate căile dedicate (închideți toate căile / închideți toate căile selectate)

Simplu, cu toate acestea, un script foarte puternic. Folosind acest lucru, puteți separa câmpurile de text multi-line în obiecte individuale ale cadrului de text, facilitând sarcina de separare a listelor, a elementelor de navigație și multe altele.


3) Mergeți la cadru (Alăturați-vă cadrelor text)

Acest script poate reuni un cadru de text divizat. Este foarte util dacă trebuie să deschideți fișierul PRE-CS Illustrator sau trebuie să combinați împreună câteva cadre de text.


Acest script este capabil să creeze figuri florale din figurile obișnuite. Mare pentru crearea unor modele neobișnuite, logo-uri și doar pentru experimentare.


Acest script poate crea arcuri de conectare din cifrele pe care le-ați creat. Este foarte util la conectarea cifrelor obișnuite pentru a crea forme mai complexe pentru logo-uri, icoane și ilustrații.


6) CMYK Traducere în Pantone V.2 (CMYK la Pantone V.2)

Acest script va selecta cea mai exactă potrivire a PANTONE din această culoare CMYK.


7) Schimbarea nuanțelor culorilor aleatorie (culori variază de nuanțe / randomize

Acest script va crea o elipsă cu numărul specificat de puncte cheie. Acest lucru poate părea simplu, dar operațiunea facilitează în mod decent procesul de editare a cercurilor, creând perii, forme complexe și multe altele. Illustrator are o funcție care adaugă mai multe puncte cheie în figură, cu toate acestea nu puteți specifica cât de mult punctele cheie pe care doriți să le adăugați.

În această selecție veți găsi 10 scripturi utile pentru Adobe Illustrator. Aceste scripturi sunt complet gratuite. Toate referințele - în numele scripturilor. Dacă scriptul nu dorește să descărcați link-ul și, în schimb, codul se deschide în browserul dvs., atunci faceți Faceți clic dreapta\u003e Salvați linkul ca Și salvați scriptul la computer.

O mică retragere lirică pentru cei care nu se întâlneau înainte de a fi scripturi într-un ilustrat. Scriptul este un program care poate fi lansat în Adobe Illustrator din meniu. Fișier\u003e Scripturi.. Așa cum ar trebui să se facă orice program, scriptul efectuează acțiuni utile, rapid și automat. Acesta este motivul pentru care scripturile au devenit asistenți inalienabili pentru microtokeri, deoarece rutinele din munca noastră sunt chiar depanate.

Scripturile prezentate mai jos pentru Adobe Illustrator ajută designerii într-o varietate de sarcini. Pornind de la prepararea fișierelor vectoriale pe microtoki și terminând cu creația florii. Dar dacă tu și acest lucru nu este suficient, atunci la sfârșitul articolului există legături cu încă o grămadă de scripturi.

Pentru a instala scriptul la ilustratorul dvs., trebuie să copiați fișierul de script în folderul cu scripturi standard. Căutați-l unde este instalat ilustratorul.

Pentru ferestre, aceasta este de obicei: c\u003e Fișierele programului\u003e Adobe\u003e Folder cu versiunea dvs. de Adobe Illustrator\u003e Stiluri\u003e EN_GB sau RU (există un dosar care nu alunecă)\u003e Scripturi.

Pentru poppies: Aplicații\u003e Adobe\u003e Versiunea dvs. Adobe Illustrator\u003e Presetări\u003e EN_GB\u003e Scripturi.

Dacă folderul standard nu este găsit în nici un fel, scripturile pot fi pornite într-un ilustrat fără a fi instalat Fișier\u003e Scripturi\u003e Alte scripturi (CTRL + F12).

Deci să mergem!

Scriptul caută și corectează erorile care nu sunt permise pe microstoki. Fișierul vectorial este scanat automat: scriptul găsește căi în aer liber, contururi fantomă, perii neegale, simboluri, raster și așa mai departe. În cursul cazului, scriptul propune imediat să corecteze aceste erori. Descărcați gratuit Maestru de stoc gratuit pe instrumentele MAI.

Cu acest script, puteți verifica selectiv prezența anumitor obiecte din fișierul vectorial. De exemplu, căutați căi deschise, raster etc. Puteți descărca scriptul pe Oceanul Arid. Butonul verde ExtendedSelect.zip acolo la partea de sus.

Scriptul deschide în întregime PDF multifuncțional și complet, și nu o pagină, așa cum este obișnuită în ilustrator. În fereastra Script, specificați calea către fișierul PDF, numărul de pagini și se deschide într-un document pe mai multe pachete de artă.

Scripturile conduc obiectele selectate de pe grila pixelilor. Funcționează în mod similar cu opțiunea de aliniere la pixeli.

Scriptul transformă obiectul selectat că devine o floare sau un model.

Scriptul deține colțul unghiului în figuri. Modelele geometrice și pictogramele sunt obținute.

Scriptul creează noduri din obiecte, se obțin modele interesante. Scriptul are setări convenabile care se aplică imediat figurii selectate. Imediat puteți vedea ce se dovedește în spațiul de lucru.

Scriptul modifică poziția de linii și puncte, astfel încât modelul corect din punct de vedere geometric să devină mai viu. Fie curbele, dar este deja redat cu setările.

Scriptul face o coloană netedă ca pe postere din texte individuale de unică.

În această selecție veți găsi 10 scripturi utile pentru Adobe Illustrator. Aceste scripturi sunt complet gratuite. Toate referințele - în numele scripturilor. Dacă scriptul nu dorește să descărcați link-ul și, în schimb, codul se deschide în browserul dvs., atunci faceți Faceți clic dreapta\u003e Salvați linkul ca Și salvați scriptul la computer.

O mică retragere lirică pentru cei care nu se întâlneau înainte de a fi scripturi într-un ilustrat. Scriptul este un program care poate fi lansat în Adobe Illustrator din meniu. Fișier\u003e Scripturi.. Așa cum ar trebui să se facă orice program, scriptul efectuează acțiuni utile, rapid și automat. Acesta este motivul pentru care scripturile au devenit asistenți inalienabili pentru microtokeri, deoarece rutinele din munca noastră sunt chiar depanate.

Scripturile prezentate mai jos pentru Adobe Illustrator ajută designerii într-o varietate de sarcini. Pornind de la prepararea fișierelor vectoriale pe microtoki și terminând cu creația florii. Dar dacă tu și acest lucru nu este suficient, atunci la sfârșitul articolului există legături cu încă o grămadă de scripturi.

Pentru a instala scriptul la ilustratorul dvs., trebuie să copiați fișierul de script în folderul cu scripturi standard. Căutați-l unde este instalat ilustratorul.

Pentru ferestre, aceasta este de obicei: c\u003e Fișierele programului\u003e Adobe\u003e Folder cu versiunea dvs. de Adobe Illustrator\u003e Stiluri\u003e EN_GB sau RU (există un dosar care nu alunecă)\u003e Scripturi.

Pentru poppies: Aplicații\u003e Adobe\u003e Versiunea dvs. Adobe Illustrator\u003e Presetări\u003e EN_GB\u003e Scripturi.

Dacă folderul standard nu este găsit în nici un fel, scripturile pot fi pornite într-un ilustrat fără a fi instalat Fișier\u003e Scripturi\u003e Alte scripturi (CTRL + F12).

Deci să mergem!

Scriptul caută și corectează erorile care nu sunt permise pe microstoki. Fișierul vectorial este scanat automat: scriptul găsește căi în aer liber, contururi fantomă, perii neegale, simboluri, raster și așa mai departe. În cursul cazului, scriptul propune imediat să corecteze aceste erori. Descărcați gratuit Maestru de stoc gratuit pe instrumentele MAI.

Cu acest script, puteți verifica selectiv prezența anumitor obiecte din fișierul vectorial. De exemplu, căutați căi deschise, raster etc. Puteți descărca scriptul pe Oceanul Arid. Butonul verde ExtendedSelect.zip acolo la partea de sus.

Scriptul deschide în întregime PDF multifuncțional și complet, și nu o pagină, așa cum este obișnuită în ilustrator. În fereastra Script, specificați calea către fișierul PDF, numărul de pagini și se deschide într-un document pe mai multe pachete de artă.

Scripturile conduc obiectele selectate de pe grila pixelilor. Funcționează în mod similar cu opțiunea de aliniere la pixeli.

Scriptul transformă obiectul selectat că devine o floare sau un model.

Scriptul deține colțul unghiului în figuri. Modelele geometrice și pictogramele sunt obținute.

Scriptul creează noduri din obiecte, se obțin modele interesante. Scriptul are setări convenabile care se aplică imediat figurii selectate. Imediat puteți vedea ce se dovedește în spațiul de lucru.

Scriptul modifică poziția de linii și puncte, astfel încât modelul corect din punct de vedere geometric să devină mai viu. Fie curbele, dar este deja redat cu setările.

Scriptul face o coloană netedă ca pe postere din texte individuale de unică.

De obicei, dacă vorbim despre programe pentru designeri, se acordă o atenție deosebită posibilităților de aplicații - instrumente de desen, filtre etc. Dar în viața de zi cu zi trebuie să vă ocupați de rutină. Din fericire, conform Adobe (inclusiv Illustrator), a început să susțină scenariile de scriere (scripturi), permițând transferarea lucrărilor monotone pe umerii mașinii. Și nu mai lucrați în Illustrator - le gestionați, și acest lucru, așa cum spun ei în Odessa, două mari diferențe!

Datorită raportului că partea copleșitoare a utilizatorilor ilustratorilor sunt artiști și designeri care nu s-au confruntat cu programare, voi încerca să construiască o revizuire a funcționalității scenariilor, astfel încât cititorii să nu aibă impresii că pentru această ocupație au nevoie de un fel de " Special "depozit de gândire și educație specială pe termen lung. În același timp, îmi cer scuze profesioniștilor pentru unele simplificări în formularea în favoarea disponibilității materialului. Autorul însuși a fost o dată într-o situație similară și, la început, nu a considerat acest domeniu de aplicare a diecezei sale. Dar ea a petrecut mai puțin de două săptămâni pentru a studia și acum am argumentat: având idei minime despre programare, scripturi de masterat - sarcina este destul de mulțumit.

Scripturile ilustratorului pot fi scrise în orice limbă: JavaScript, Visual Basic (Windows) și AppleScript (Mac OS). Deoarece majoritatea cititorilor sunt familiarizați cu prima (multe desene pentru tipărire se confruntă cu succes cu crearea paginilor de internet în care se utilizează), ne vom baza pe ea. În plus, platforma JavaScript independentă: scrisă pe IT SCRIPT va funcționa în ambele OS - Windows și Mac OS. Metoda de circulație a elementelor este orientată pe obiecte: pentru a afla, de exemplu, grosimea tăieturii în cel de-al doilea element vector pe primul strat, trebuie să scrieți următorul design:

app.activdocument.layer.pathitems.skewidth.

Acest lucru poate fi interpretat după cum urmează: Mai întâi indică obiectul celui mai înalt nivel din Ierarhia Illustratorului (aplicația - aplicația, abreviată din aplicație) și apoi alegerea se îngustează treptat la un anumit element (în documentul activ pentru a lucra Primul strat; apoi în stratul specificat, selectați al doilea în adâncimea vectorului de glazurare din stratul specificat obiectul și aflați grosimea tăieturii). O metodă similară de circulație a articolelor este foarte convenabilă deoarece facilitează navigarea pe tot parcursul diversității tipurilor care există în editor. Cu un model complet de relații, vă puteți familiariza pe o descriere bine compilată (inclusă în kitul ilustartor).

Suporturile pătrate sugerează că elementul face parte din matrice. Matricea este o combinație a mai multor obiecte combinate de o caracteristică specifică. De exemplu, straturi, patiteme, rasterteme, grupate, selecție etc. - matrice constând din obiecte similare (straturi de documente, circuite vectoriale, imagini raster, grupuri etc.). În paranteze indică indicele (numărul de secvență) al elementului dorit din matrice. Astfel, înregistrarea stratului denotă primul strat, deoarece primul indice este întotdeauna "0".

Puteți contacta obiecte pe nume de straturi ["Diagrama"]. Pentru a face acest lucru, elementul trebuie să fie numit în mod clar - folosind manual paleta straturilor (faceți dublu clic pe numele obiectului deschide fereastra cu proprietățile sale) sau din script. Pentru a nu scrie de fiecare dată când un design voluminos cu listarea întregului "pedigree", utilizați link-urile (referințele):

pi \u003d activocument.layer.pathitems;

Apoi, codul de cod de mai sus va fi vizualizat: pi.skewidth.

La stratul Cum se poate face obiectul nu este de contact de fiecare dată, toate operațiile apar pe același strat activ. Și țineți cont de faptul că, în numele variabilelor, acesta contează în registru: dacă scrieți mai întâi pi, și al doilea - PI, atunci scenariul va da o eroare și nu va funcționa.

Într-un model orientat pe obiecte, există: aplicația însăși, clase (tipuri de obiecte sau folosind un concept mai familiar, substantive: straturi, obiecte vectoriale, etc.), metode (modalități de interacțiune cu ei - verbe: Deplasați, duplicat și etc.) și proprietăți (adjective: cursa, umplere, selectate etc.). Pentru a mai ușor de navigat, imaginați-vă că aplicația este o casă în care există diverse articole - analogice de clase (ferestre, uși) cu unele proprietăți (plastic, lemn), cu care se efectuează anumite acțiuni - metode (deschise, închise). Înțelegerea esenței unei astfel de ierarhii, este mult mai ușor să înțelegeți scripting-ul.

La nivel superior există o aplicație și, literal, urmând regulile de subordonare a obiectelor, ar trebui să fie indicată în orice acțiune. Pentru a simplifica, referința la aplicație poate fi omisă - cu excepția cazului în care este necesară într-adevăr să înveți unele proprietăți (de exemplu, fonturile disponibile - App.fonts).

Strat de clase, grup, text poate conține obiecte din aceeași clasă care pot avea și filiale. Caracteristicile utile ale abordării obiectului - moştenire Proprietăți. Deci, toate contururile vectoriale (PATYTEMS) sunt filiale pentru o clasă mai comună - elemente de pagină (Pagetems). În consecință, atribuirea anumitor proprietăți PaginiMs, le atribuim automat și patchiteme.

În ciuda similitudinii, straturile și clasele de straturi sunt încă diferite. Prima este colecția tuturor straturilor din document, al doilea este doar anumite, în consecință, metodele și proprietățile lor diferă în consecință. La început, puteți aplica adăugarea, îndepărtarea metodelor, iar al doilea este toate operațiile disponibile pentru un strat separat. Direct la obiectul recurs ca element al matricei corespunzătoare - în cazul nostru prin straturi, straturi etc.

Elementul selectat corespunde unei clase separate - selecție, care este, de asemenea, o matrice (un grup de obiecte pot fi evidențiate). Într-un cont special în clasele Illustrator de pluginitme, culori, vizualizări. Primul are multe restricții legate de faptul că obiectele de acest tip "nu sunt native" pentru ilustrator. Acestea includ amestec, plic, elemente de plasă și similare. Vom lua în considerare restul restului așa cum sunt folosite.

Pentru ca scriptul să fie "vizibil", acesta este plasat în dosarul Presets.srcripts, situat în cel în care este instalată aplicația. Vom lua în considerare exemple reale (acest lucru vă va permite să simțiți imediat utilitatea scenariilor) și să le scrieți sub ilustrator CS, deoarece scripting-ul său este flexibil versiunile anterioare.

Exemplul 1: Combinarea obiectelor

Să începem cu cea mai simplă - scrieți un script care leagă obiectele subordonate cu obiectele principale cu sarcina principală la crearea de fluxuri, documentație tehnică și lucrări similare). Și vom fi atinși de astfel de probleme de bază ca și cu obiecte dedicate, creând noi straturi, plasarea obiectelor, schimbarea comenzii, crearea și activarea curbelor într-o cale complexă (calea compușă).

Lucrul cu acest tip de documente implică utilizarea pe scară largă a simbolurilor (simboluri) - realizarea modificărilor la acestea actualizează automat toate copiile create. Cu toate acestea, cu astfel de elemente, Illustrator funcționează nu întotdeauna corect: se întâmplă că nu citește numele de obiecte care sunt copii ale caracterelor. Ca rezultat, selecția lor după nume este imparțială. Prelucrarea tuturor elementelor de acest tip în stratul curent nu are beneficii practice. Ca rezultat, am plecat în favoarea unei versiuni alternative, în care trebuie să selectați mai întâi obiectele necesare (cel mai simplu mod este alegerea unui caracter și căutarea copiilor sale prin comanda Select.Same Instances), apoi selectați apoi selectați elementul de susținere cu care vor fi conectate.

Deci, începeți. Pentru a reduce, introducem variabila SEL la care vom aplica atunci când aveți nevoie de acțiuni pe obiectul selectat. Apoi verificați câte elemente sunt alocate (deși orice simboluri text selectate includ, de asemenea, orice simboluri text selectate, verificați dacă textul nu este selectat). Înregistrarea dacă (SEL.Length<2) означает, что мы сравниваем значение length (количество объектов класса sel) с двойкой — минимальным количеством для работы сценария. Если выделенных элементов меньше, будут выполняться действия, заключённые в первые идущие за оператором if фигурные скобки, иначе — идущие после else. При этом логично предусмотреть выдачу сообщения, чтобы сориентироваться в ситуации и понять, что нужно сделать.

sel \u003d ActiveDocument.Selection
Dacă (SEL.Length.<2) {br> Alertă ("Nu sunt suficiente obiecte pentru a continua! \\ NSESELECT cel puțin 2 obiecte și ultimul obiect țintă!"))
Altfel (

Alerta este o funcție standard JavaScript care afișează o fereastră cu un text dat și butonul OK. "\\ N" înseamnă trecerea la un șir nou și este folosit astfel încât mărimea ferestrelor să rămână mică. Textul afișat în fereastră trebuie să fie închis în citate.

Etapa pregătitoare

Obținem coordonatele centrului obiectului de referință. Deoarece am fost de acord că este cel mai mare, numărul său (index) - "0" (SEL). Pentru a calcula coordonatele, vom folosi astfel de proprietăți ale obiectului ca poziție (poziție), lățimea și înălțimea (înălțime și lățime). Valorile poziției sunt stocate într-o matrice constând dintr-o pereche de valori - coordonate de-a lungul axei X și Y, respectiv. Prin urmare, fiecare trebuie să contactați ca poziție și poziție.

rEFOBJ_X \u003d SEL.POSITION + (SEL.Width / 2);
Refobj_y \u003d Sel.position - (Sel.Height / 2);

Avem coordonatele centrului obiectului de referință și le-am atribuit două variabile pentru utilizare ulterioară. În a doua linie, există un semn "-", deoarece colțul inferior stâng al documentului este adoptat pentru punctul de referință al ilustratorului, iar poziția emite coordonatele colțului din stânga sus al elementului.

Deoarece, atunci când lucrați cu un document, ultimul rol joacă confort, are grijă astfel încât modurile create să fie pe un strat separat - o astfel de structurată va ajuta la menținerea ordinii în aspectul de complexitate variabilă.

Creați un strat nou - IT, ca orice element ilustrator, este creat de metoda Adăugați () aplicată clasei de obiecte corespunzătoare. În paranteze, puteți specifica parametrii acțiunii: specificați obiectul scopului (poate fi, de exemplu, un strat sau chiar un document nou, precum și poziția la destinație). Spre deosebire de majoritatea metodelor, pentru a adăuga parametrii suplimentari nu este furnizat, prin urmare, pentru transferul la nivelul superior, folosim metoda specială - Zorder, care, specificați partea de intrare ca parametru (constantă rezervată, lista completă a cărei în documentație). În principiu, dacă documentul este doar un strat, nu este necesar să indicați în mod specific poziția celui nou, deoarece Illustratorul are întotdeauna mai presus de cea actual. Dacă obiectele conectate nu sunt la nivelul superior, va fi necesară a doua linie.

newlayer \u003d ActiveDocument.layers.Add ();
Newlayer.zorder (zdermethod.beringtofront);

Prima linie poate fi găsită astfel: creați un element nou prin zoom (Adăugare) numărul de obiecte ale tipului (straturilor) și legătura către elementul nou creat este atribuită variabila Newlayer. La momentul inițial, stratul este gol, deoarece nu este plasat în ea. Pentru a simplifica orientarea într-un aspect complex, vom da numele "conectori" (metoda de nume) - după cum puteți vedea, numele metodelor vorbesc în mod clar despre acțiunile efectuate.

nouayer.name \u003d "conectori";

În scopuri de instruire, vom crea linii de legătură fără fragmentate și vom combina în calea compusului de tip obiect - pentru ușurința editării. Crearea unui astfel de obiect repetă procedura deja cunoscută, de data aceasta aplicată clasei de compothiteme:

newcompoundpath \u003d ActiveCument.comPoundPathitems.Add ();

Deoarece în ultimul pas am creat un nou strat, este activ - în consecință, obiectele create vor fi localizate pe ea, iar nevoia de a indica în mod specific acest lucru (ActiveDocument.Newlayer) nu este.

Definiția coordonatelor elementelor subordonate

Acest proces se combină cu ieșirea liniilor de legătură în sine, deoarece numărul acestora trebuie să corespundă numărului de obiecte. Alternativ începeți să rezolvați toate elementele selectate ("I ++" înseamnă incrementări pe unitate) și citiți coordonatele lor. Căutarea va începe nu de la primul obiect din matricea de selecție (după cum vă amintiți, ele sunt un obiect de sprijin) și de la al doilea (SEL). Următoarele linii sunt deja familiare pentru noi:

pentru (i \u003d 1; eu< sel.length; i++) {
Obj_x \u003d Sel [i] .poziția + Sel [i] .width
Obj_y \u003d Sel [i] .poziția - Sel [i]

După obținerea coordonatelor centrului elementului copil, continuați să creați o linie care îi leagă cu o referință. Pentru fiecare element selectat, creăm un obiect nou - un circuit vectorial, care este inclus în clasa CompactPath, crescând numărul total de contururi:

newPath \u003d NewcompoundPath.Pathitems.Add ();

Pentru a specifica contururile simple în ilustrator, există o metodă setenttipath, ale cărei parametri au acționează de la coordonatele punctelor inițiale și celendine - pe care le cunoaștem deja, la rândul lor, sunt specificate sub formă de ariei a două valori două axe). În cele din urmă, terminăm starea introdusă la început "dacă este alocat ceva".

newPath.setentirePath (matrice (refobj_x, refobj_y), matrice (obj_x, obj_y))); )

Scriptul este gata. După cum puteți vedea, nimic complicat în ea: numele metodelor dezvăluie esența lor, iar modelul orientat pe obiecte ajută la înțelegerea clară a ierarhiei obiectelor ilustratorului. Scriptul nu reprezintă o valoare practică specială (el este mai mult ca o formare), dar, în exemplul său, multe concepte de bază au fost considerate a fi bazate pe mai multe (lucrați cu obiecte dedicate, principiul numerotării lor în masivul de selecție, Definiția coordonatelor, crearea de noi straturi, linii de concluzie).

Exemplul 2: Detectarea contururilor prea subțiri

Operațiile de scalare în grafica vectorială sunt foarte active. Prin urmare, cu o scădere a dimensiunii obiectelor cu linii subțiri (dacă parametrul cursei scalei este activat), grosimea cursei lor devine sub 0,25 pt (valorile după care liniile devin slab vizibile) și provoacă dispariția lor când imprimați pe o imprimantă cu jet. Încorporate în funcțiile ilustrator ale obiectelor de căutare cu valori ale cursei, mai puțin de cele specificate, nu sunt furnizate. Le găsiți manual foarte dificil - va trebui să alocați fiecare obiect individual, ceea ce va selecta rapid dorința de a se angaja în astfel de inspecții. Simplificați semnificativ scriptul de operare.

Prin ea însăși, scenariul din versiunea cea mai simplă este mică, dar vom alege să îl facem mai versatil - Extindeți funcționalitatea datorită capacității de a specifica grosimea minimă din caseta de dialog. Desigur, puteți înregistra cu greu această sumă în scenariul în sine și, dacă este necesar, să îl ajustați de fiecare dată, dar sunteți de acord, este incomod. Să oferim, de asemenea, o indicație a elementului selectat ca obiect obiect cu o valoare de tăiere minim admisibilă. În paralel, pentru statistici, calculează numărul de elemente cu grosimea schimbată și pentru claritate pentru a le evidenția.

Întregul script este împărțit în două părți: valoarea inițială (citire din fereastra de dialog sau elementul selectat) și finala (căutați printre toate obiectele din document și reluați grosimea tăieturii). În plus față de o demonstrație de acces la obiecte ilustrator, vom analiza crearea unei interfețe mini-interfață pentru a introduce valori personalizate.

Introducerea valorilor

Primele două linii vor fi identice cu exemplul anterior, cu excepția faptului că, în loc de "2" să pară să apară "0", deoarece înainte de a lucra scriptul, trebuie să determinăm dacă există obiecte alocate. Comparația este stabilită de un semn dublu de egalitate (unul atribuie o valoare).

var mysel \u003d app.activedocument.Selection;
Var Go \u003d Adevărat;
Dacă (Sel \u003d\u003d 0) (

Dacă nu este alocată nimic, grosimea minimă va fi setată prin caseta de dialog. Retrageți-l utilizând funcția standard JavaScript - Prompt. Se deschide o fereastră cu un câmp în care puteți introduce o valoare în viitor pentru ao folosi. Funcția de sintaxă este după cum urmează: În primul rând, vârful textului se afișează, care va fi afișat în fereastră (luând în considerare unificarea operațiunii de script, nu vom folosi chirilicul, deoarece este adesea afișat incorect), apoi valoarea Acesta va fi standul implicit în câmpul de introducere. Plus cât mai multe: capacitatea de a seta imediat grosimea minimă admisă și de a specifica orice valoare. Crearea unei variabile că este atribuită valoarea funcției prompte, puteți apoi să o utilizați din propriile scopuri.

Alpinismul înainte, am observat că Illustrator oferă accesul deplin nu la toate tipurile de obiecte - unele rămân peste bord. Prin urmare, să vedem vizualizarea nu numai a elementelor corectate, ci și inaccesibile scenariului, pentru a nu le căuta manual - deoarece pot avea și obiecte problematice. Pentru a nu emite două casete de dialog (pentru grosimea și valoarea definiției, care elemente sunt alocate), vom folosi capacitățile JavaScript pentru procesarea rândurilor. Faptul este că conținutul câmpului umplut cu câmpul este "șirul" (blocul de informații), în care orice parametri pot fi (prin separatoare). Cunoașterea separatorului, valorile parametrilor individuali pot fi ușor îndepărtați din rând.

În consecință, vârful textului ferestrei de dialog va fi astfel: setarea grosimii minime de tăiere și a numărului condițional: "1", dacă este necesar, astfel încât scriptul să aloce elementele corectate, "2" - cele la care "accesul" " a eșuat.

value \u003d Prompt ("Specificați pragul lățimii cursei (în PT), \\ n Ce trebuie selectat: obiecte corectate (1) sau inaccesibile (2)", "0.25, 1")

Inițial, în domeniu, setați 0,25 puncte (unități de măsurare în ilustratorul implicit), dar când se schimbă, va fi folosit o nouă valoare și "1". "2" trebuie să fie specificate numai dacă scriptul găsește obiecte inaccesibile (vom avea grijă astfel încât să o semnalizeze la sfârșitul lucrării). Și vor deveni dedicați că ne va salva din căutarea manuală (după cum știți, ilustratorul de căutare încorporat lasă mult de dorit).

Odată cu citirea valorilor din câmpul de utilizatori, ne-am dat seama, mergem la procesarea lor. Verificați dacă câmpul nu este gol (semnul "!" Înseamnă negare, adică "! \u003d" Este echivalent cu "nu egal cu", nul este un cuvânt înregistrat pentru o valoare goală). Dacă există ceva în el, împărțim șirul în blocuri separate, utilizând funcția Split JavaScript (ca separator, determinăm combinația de caractere ",") și valorile obținute în matricea separată. După aceasta, valorile matricei vor da nume descriptive (prima va determina grosimea, al doilea este modul de operare).

dacă (valoare! \u003d null) (
SplitString \u003d value.split (",");
Greutate \u003d SplitString;
Tip \u003d SplitString; )

Dacă nu există nimic în câmpul utilizatorului - opriți execuția scriptului. Ultimul suport de închidere este un semn de finalizare a condiției pe care le punem la început ("dacă nu este alocată nimic în document").

altceva (du-te \u003d fals)

Dacă obiectul de referință este evidențiat special

Acum scrieți o secvență de acțiuni, dacă am alocat în mod deliberat un element a cărui grosime suprapusă doresc să utilizeze ca o valoare de prag. Vom retrage un avertisment despre acțiunile ulterioare ale scriptului utilizând caracteristica de confirmare standard (creează o casetă de dialog cu două butoane - și). presa<Сancel>Lucrurile se oprește, dar dacă sunteți de acord, scriptul va continua să funcționeze.

altfel (selectatSg \u003d Confirm ("Lățimea cursei obiectului selectat va fi utilizată ca prag")
dacă (selectatmsg! \u003d TRUE) (
du-te \u003d false;
) Altfel (

Du-te la partea principală a scenariului. În mod conștient, nu luăm în considerare situația în care sunt evidențiate mai multe obiecte, deoarece este suficient să alegeți grosimea tăieturii. Și ce valoare de utilizat dacă este diferită de elemente? După cum știm deja, singurul obiect dedicat va avea indicele "0", iar ilustratorul are o proprietate de pavilion pentru a obține grosimea marginilor. Vom considera că, în principiu, selecția poate conține nu numai elemente individuale, ci și o parte a textului (de exemplu, alocată din întâmplare), care nu este inclusă în planurile noastre, deci înainte de a începe munca, verificați capacitățile de tip JavaScript tipul de element dedicat care aparține matricei:

dacă (Sel Isarray) (
Greutate \u003d Sel.Skewewidth;

Deoarece am fost de acord să alocăm obiecte modificate, de la cea mai referință alocație pe care trebuie să o eliminați (facem apel la proprietatea sa selectată):

sel.Selection \u003d FALSE; ))

Acum suntem pe deplin pregătiți pentru sarcina principală a scenariului - Căutarea obiectelor: valoarea care va fi utilizată ca o grosime minimă admisă este stocată în variabila WEI.

Circumstanțe

Compară-l cu o proprietate similară în toate obiectele din document. Puteți merge imediat la căutare, dar utilizarea scriptului în munca de zi cu zi necesită contabilizarea circumstanțelor suplimentare - în aspecte sunt adesea atât de straturi blocate, cât și obiecte individuale. Prin urmare, cel puțin în ele căutările și lucrările, dar este imposibil să se facă schimbări. Pentru a oferi o verificare totală, adăugați mai multe operații la script: Verificarea elementelor pentru a se potrivi cu criteriul specificat, le deblocați, dacă este necesar, și amintiți-vă indexul pentru a le returna la starea anterioară după finalizarea verificării. Introducem două variabile: Primul pentru accesul abreviat la toate straturile din document și cu al doilea vom obține acces doar pentru a bloca. Depozitați numerele de secvențe ale acestuia din urmă în matrice, ceea ce va crea funcția JavaScript - noua matrice ().

var dl \u003d activoclument.layers;
Var Bokyyers \u003d Array nou ();

Apoi, răsfoiți toate straturile și blocați (blocat \u003d true) Numărul de secvență va intra în postări (folosind funcția de împingere de la JavaScript), după care le permite să le editeze (blocate \u003d false).

dacă (Go \u003d\u003d Adevărat) (
Pentru (i \u003d 0; i dacă (dl [i] .locked \u003d\u003d true) (
Febră de apărare.push (i);
Dl [i] .locked \u003d false; Anterior, am fost de acord să alocăm obiecte fixe, dar după finalizarea lucrărilor de script pe straturile blocate, nu putem face acest lucru - trebuie să retrageți avertizarea corespunzătoare. Pentru a face acest lucru, utilizați semnul Lockedpresenta, care va stabili dacă cel puțin un strat este blocat.

lockedpresence \u003d true;

Aceeași repetare și cu elemente blocate separate. În cel mai simplu caz, este suficient să verificați toate elementele vectoriale (clasa PATHITEMS), în care subclasa include path-uri compuse, - astfel încât nimic nu eludează de la ochiul tot-aparent al scenariului.

Rock-uri subacvatice

În plus față de situația cu situația blocată, există o altă "piatră subacvatică". După cum sa observat deja, unele elemente (în special grupul de amestec și plic) nu sunt "native" pentru ilustrator, ele aparțin tipului special de pluginitem. În același timp, nu este furnizat accesul la astfel de obiecte din ilustrator, ele sunt "lucruri în sine". Puteți să le "atingeți" numai printr-o clasă de nivel superior - prin care să putem defini cel puțin prezența lor și să retragem avertizarea corespunzătoare. Acesta va spune că prin rularea scriptului din nou și specificând ca al doilea parametru în câmpul de intrare "2", acesta va aloca aceste "casete negre".

pGI \u003d ActiveDocument.pageites;

Pentru a stoca indicii de obiecte blocate, creați o matrice de blocare și pentru calcularea cantității de modificare, introduceți variabila corectată.

blocatepte \u003d o nouă matrice ();
Corectate \u003d 0;

Pentru toate obiectele, veți efectua o verificare a tipului pluginitem (proprietate de tip): dacă există, setați semnul pluginitexist (starea sa va determina rezultatul prevenirii unor astfel de elemente). În cazul re-verificării (când al doilea parametru din câmpul de intrare este "2"), le vom aloca:

pentru (i \u003d 0; i< pgI.length; i++) {
dacă (PGI [i] .tyPename \u003d\u003d "Pluginitem") (
Pluginitemexist \u003d Adevărat.
Dacă (tip \u003d\u003d "2") (PGI [i] .selectat \u003d TRUE)

Deci, toate (sau aproape toate) posibile situații care apar în muncă, am furnizat și determinat pentru ei.

Verificarea de bază

Acum, miezurile verifică aspectul pentru respectarea criteriului de tăiere specificat. Vom considera că printre obiectele pot exista astfel încât să nu existe nicio margine (determinată de statutul unui semn de stroke) - prin urmare, acestea ar trebui excluse din inspecție.

dacă ((Igpi [i] .skewidth< weight)&&(pgI[i].stroked)) {
dacă (PGI [i] .locked \u003d\u003d true) (
Câștigați.push (i);
PGI [i] .Cat \u003d FALSE;

Acest fragment de cod poate fi interpretat după cum urmează: Determinați fiecare element prezența marginilor și grosimii acestuia. Dacă este mai mică decât minimă (dacă (pi [i] .skewidth< weight), и объект заблокирован, его индекс занести в специально созданный для такой цели массив blokedPathes, после чего разблокировать для внесения возможных изменений. Знак && обозначает логическое «И» (обязательное совпадение двух условий) — толщины меньше минимальной и присутствия окантовки.

Apoi fixați prezența obiectelor blocate (instalez caracteristica LockedPresence la ieșirea în viitoarea alertă pe care nu este modificată toate modificările), iar corectarea sa este eliberată, iar marginile sale este atribuită valorii pragului - și astfel pentru toate elementele. Pentru statistici, în paralel, vom număra numărul de obiecte modificate.

lockedpresence \u003d true;
PGI [i] .selated \u003d Adevărat;
PGI [i] .skewidth \u003d greutate;
Corectate ++;

Anterior, acțiunile au fost considerate a evidenția elemente neconfirmate (tip \u003d "2"). Acum definim ce ar trebui să se întâmple într-o situație standard - cu căutarea obișnuită a obiectelor potențial probleme.

dacă (Tip \u003d "1") (PGI [i] .selectat \u003d TRUE)

Restaurarea stării elementelor blocate

Am îndeplinit sarcina principală - obiectele problematice sunt corectate și evidențiate. Rămâne de restabilirea statutului quo - totul este inițial blocat pentru a reveni la starea anterioară. Pentru a face acest lucru, citiți conținutul matricei în bucla curentă unde sunt stocate indicii de obiecte blocate și fiecare element corespunzător este setat de blocat \u003d Metoda TRUE (Metoda Shift afișează ultima valoare a valorii în IT). Deoarece numărul total de obiecte este mai blocat, trebuie să aveți grijă, astfel încât după golirea matricei, ciclul de verificare sa încheiat.

dacă (blochează.Length\u003e 0) (
Retrievedpathes \u003d bledpathes.Shift ();
Pi.locked \u003d true;))

Apoi acțiunile similare vor fi angajate în raport cu straturile:

pentru (i \u003d 0; i dacă (Bockedlayers.Length\u003e 0) (
Recuperat \u003d bockedyers.Shift ();
Dl.locked \u003d true; )) De fapt, pentru același tip de operațiuni, este mult mai convenabil să utilizați funcții. Avantajul lor este că, odată ce descrie anumite acțiuni, le puteți repeta în întregime, pur și simplu provocând o funcție în locurile potrivite; Astfel încât compactul și lizibilitatea scriptului sunt realizate. Pentru a crește flexibilitatea funcției, valorile utilizate în IT (parametrii) sunt transmise. Dacă nu doriți să utilizați funcții, săriți următoarele două paragrafe.

Vom forma două funcții: Primul este de a debloca straturile și obiectele, al doilea - pentru a-și restabili atributele. Numai tipurile de tipuri de obiecte vor fi modificate în ele (straturi și pagete) și matrice pentru a înregistra elementele de interes pentru noi (Bloedlayers și Folosind) - acestea vor apărea ca parametri de funcții. Primul va scrie acest lucru:

funcție Deblocare (matrice, itemttype)
dacă (itemttype [i] .locked \u003d\u003d true) (
array.push (i);
Itemttype [i] .locked \u003d false;
Blocat \u003d fals;
}

În loc de matrice, vom înlocui o matrice, în loc de itemttype - clasa dorită. Apoi primim două apeluri - deblocați (blocați, dl) și deblocați (blochează, IGI). În mod similar, scrieți o funcție pentru a restabili starea:

funcție Restore (matrice, itemtype)
dacă (Array.Length\u003e 0) (
recuperat \u003d array.Shift ();
Itemttype.locked \u003d true;
}

Afișați informații despre rezultatele inspecției

Aceasta este ultima etapă a scenariului. În primul rând, determinăm starea de ieșire a mesajului dacă este selectată căutarea obiectelor nereactibile, apoi condiția pentru apariția unui avertisment că au fost detectate astfel de obiecte:

dacă (tastați \u003d\u003d "2") (B \u003d "\\ nCheck selectat!")
Dacă (Pluginitemexist \u003d\u003d TRUE) (
ALERT ("Datorită restricțiilor de scripturi Unele obiecte nu pot fi afectate" + B))

Logica emiterii unei pierderi care nu sunt corectate poate fi alocată este după cum urmează:

dacă ((lockedpresence \u003d\u003d true) && (pluginitemexist \u003d\u003d false)) (
AVERTISMENT \u003d "\\ NBECUSE Unele dintre ele sunt blocate, nu pot fi afișate ca selecte")

După aceea, deducem rezultatele finale:

aLERT ("Numărul de obiecte corectate sunt:" + corectat + avertizare)

Aici, de fapt, întregul scenariu. După cum puteți vedea, aceste câteva linii îndeplinesc o cantitate colosală de muncă pe care este puțin probabil ca cineva să moară cu greu. Scriptul este executat instantaneu (în proiecte la scară largă, cu numărul de elemente de ordin de câteva mii, performanța procesorului începe să afecteze). Trebuie doar să o selectați din lista de dispoziții (puteți chiar să o faceți - Illustrator permite script-urilor să aloce "rapide") de către comenzile rapide de editare.MyBoard.Menu Commands.Scripts. Dar notă: numele scripturilor sunt sortate în ordine alfabetică, astfel încât adăugarea unui nou sau îndepărtarea mai în vârstă poate duce la chei de realocare la scenariile vecine. Concluzie: După modificările din dosarul Presetări \\ script-uri, verificați meciurile cheie.

Am încercat să facem un script universal, care a afectat volumul său. În versiunea cea mai primitivă (fără a ține seama de caracteristicile și capcanele descrise mai sus), aceasta ocupă literalmente câteva linii:

minwidth \u003d ActiveDocument.Selection.skewidth;
Pi \u003d activdocuments.pathitems;
pentru (i \u003d 0; i< pI.length; i++) {
dacă (pi [i] .skewidth< minWidth) && (pI[i].stroked)) {
Pi [i] .skewidth \u003d minwidth;
}}

Și desert?

Vom dedica următoarea ediție: vom scrie un script care să-și automatizeze aspectul pe foaie. Cu toate acestea, va veni la îndemână pentru o gamă mai largă de sarcini, deoarece nu are obligatorie de dimensiunea obiectelor. După cum ar trebui să fie, vom căuta crearea de probleme pentru a evita problemele cu tăierea inexactă a foii, precum și la întoarcerea cărților de vizită (dacă partea superioară și de jos sunt semnificativ diferite). În paralel, vom atinge problema căutării obiectelor, al cărui model de culoare este diferit de cele specificate, care nu este, de asemenea, neobișnuit cu astfel de lucrări.

Jurnale de acces gratuite.

Pe același subiect:

    Știri 2019-04-03.

    Deoarece cerneala albă suplimentară ajută la crearea unei noi utilizări a imprimării laterale.

    Astăzi, o serie de modele de imprimante cu ecran lat și ultra-larg pot imprima cerneală de culoare suplimentară - alb, ceea ce creează noi posibilități de utilizare a acestor dispozitive. Dar în imprimante, diverse tehnologii de tipărire pot fi implementate cu cerneală albă, iar diferite tehnologii au propriile lor capabilități și limitări.



Ți-a plăcut articolul? Împărtășește-l