اسکریپت ابر را در تصویرگر برچسب کنید. نحوه نصب اسکریپت ها در Adobe Illustrator

Adobe Illustrator ابزارها و ویژگیهای بسیاری برای اجرای هر ایده دارد. اما حتی با وجود امکانات بسیار زیاد در زرادخانه خود ، مطمئناً چیزی از دست نخواهد رفت. در اینترنت ، اکنون می توانید اسکریپت ها و افزونه های بسیاری را برای Adobe Illustrator پیدا کنید و عملکرد آن را گسترش دهید. بدون این موارد اضافی ، Adobe Illustrator ممکن است نتواند برخی از کارها را برطرف کند یا کارهای اضافی را برای هنرمند اضافه کند. بنابراین ، امروز ما چند مورد را در نظر خواهیم گرفت اسکریپت های مفید و رایگان برای Adobe Illustrator.

نصب اسکریپت

برای اینکه اسکریپت در Adobe Illustrator کار کند ، باید آن را در پوشه Scriptts که در فهرست Adobe Illustrator قرار دارد ، قرار دهیم. در مورد من ، این است ... / Adobe / Adobe_Illustrator_CS5 / ایستگاه از پیش تنظیم شده / en_GB / اسکریپت. اگر به جای Adobe_Illustrator_CS5 از نسخه قبلی برنامه استفاده می کنید ، در مورد شما ممکن است Adobe_Illustrator_CS4 ، Adobe_Illustrator_CS3 و غیره وجود داشته باشد.
  اگر اسکریپت هایی را که در یک بایگانی فشرده شده اند بارگیری کرده اید ، پس از باز کردن آنها را فراموش نکنید. پس از نصب ، باید Adobe Illustrator را مجدداً راه اندازی کنید.

اسکریپت های موجود را می توان در زبانه File در زیرمنوی Scriptts یافت.

مسیر باز را انتخاب کنید

این اسکریپت با استفاده از یک مسیر باز ، تمام اشکال را پیدا و انتخاب می کند. این اسکریپت در هنگام ایجاد وکتور میکرواستاک مفید خواهد بود ، زیرا حلقه های بسته یکی از معیارهای پذیرش کار شما در پایگاه داده microstock است.

بستن همه مسیرها / بستن همه مسیرهای انتخابی

این اسکریپت طرح کلیه شکل ها یا شکل های انتخاب شده را می بندد. بنابراین ، برای مثال ، پس از جستجوی مدارهای باز با استفاده از Select Open Path ، می توانید آنها را بسته نگه دارید.

فریم های متن را بکشید

با استفاده از این اسکریپت ، می توانید یک قسمت متن واحد را به متن های کوچکتر تقسیم کنید ، با انتقال به یک خط جدید محل جداسازی است.

به قاب های متن بپیوندید

این اسکریپت چندین قسمت متن را در یک ترکیب می کند.

فرار کردن

با تشکر از این فیلمنامه ، چهره ها با منحنی های زیبا از گل تزئین می شوند.

متابال

پس از استفاده از این اسکریپت ، چندین شکل ساده به شکل های پیچیده تر تبدیل می شوند.

CMYK to Pantone v. 2

این اسکریپت حالت رنگی CMYK را به Pantone تبدیل می کند

دایره

با تشکر از این اسکریپت ، می توانید شکل دایره ای را با تعداد مورد نیاز در آن ایجاد کنید.

لنگرها را جدا کنید

این اسکریپت نقاط انتخاب شده روی شکل را حذف می کند.

دور هر گوشه

پس از استفاده از این اسکریپت ، گوشه های تیز شکل به گرد تبدیل می شود.

تعویض اشیاء

این اسکریپت به یک جسم خواص دوم ، و مورد دوم - خصوصیات اولی را می دهد. به عنوان خصوصیات ، از اندازه و مکان موجود در فضای کاری استفاده می شود.

مسیر را با اندازه انتخاب کنید

این افزونه به شما کمک می کند ارقام با اندازه خاصی پیدا کنید.

معمولاً وقتی صحبت از برنامه هایی برای طراحان می شود ، اولویت با امکانات هنری برنامه ها - ابزارهای رسم ، فیلترها و غیره است اما در زندگی روزمره باید با روال روبرو شوید. خوشبختانه ، نرم افزارهای Adobe (از جمله Illustrator) شروع به پشتیبانی از نوشتن اسکریپت ها (اسکریپت ها) کردند و به شما امکان می دهند کار یکنواخت را روی شانه های دستگاه تغییر دهید. و شما دیگر در Illustrator کار نمی کنید - شما آن را مدیریت می کنید ، و این ، همانطور که در اودسا می گویند ، دو تفاوت بزرگ است!

با درک اینکه اکثریت قریب به اتفاق کاربران Illustrator هنرمندان و طراحانی هستند که برنامه نویسی را تجربه نکرده اند ، سعی می کنم نمای کلی از عملکرد برنامه نویسی را ایجاد کنم تا خوانندگان این تصور را نداشته باشند که این درس به برخی از طرز تفکر "خاص" و یک آموزش خاص طولانی نیاز دارد. در همین حال ، من به دلیل در دسترس بودن مطالب ، از برخی متخصصان برای برخی از ساده سازی ها در جمله بندی عذرخواهی می کنم. خود نویسنده یک بار در وضعیت مشابهی قرار داشت و در ابتدا این حوزه را دیوایس خود نمی دانست. اما من کمتر از دو هفته از مطالعه آن صرف کردم و اکنون تأیید می کنم: داشتن درک کم از برنامه نویسی ، تسلط بر اسکریپت ها کاری کاملاً عملی است.

اسکریپت ها برای Illustrator می توانند به هر زبان نوشته شوند: JavaScript ، Visual Basic (Windows) و AppleScript (Mac OS). از آنجا که اکثر خوانندگان با نفر اول آشنا هستند (بسیاری از طراحان برای چاپ با موفقیت با ایجاد صفحات اینترنتی که در آن استفاده می شود مقابله می کنند) ، ما به آن اعتماد خواهیم کرد. علاوه بر این ، جاوا اسکریپت مستقل از سیستم عامل است: اسکریپت هایی که روی آن نوشته شده اند در هر دو سیستم عامل - ویندوز و Mac OS کار می کنند. روش دستیابی به عناصر شی گرا است: برای پیدا کردن ، به عنوان مثال ، ضخامت مرز عنصر بردار دوم روی لایه اول ، باید ساخت زیر را بنویسید:

app.activeDocument.Layer.pathItems.strokeWidth

این را می توان به صورت زیر تفسیر کرد: اول ، بالاترین سطح شیء در سلسله مراتب Illustrator نشان داده شده است (برنامه کاربردی برای برنامه کوتاه است) ، و سپس انتخاب به تدریج به یک عنصر خاص باریک می شود (کار روی لایه اول در سند فعال است) سپس بردار عمق دوم را در لایه مشخص شده انتخاب کنید ضخامت مرز را پیدا کرده و پیدا کنید) چنین روشی برای دسترسی به عناصر بسیار مناسب است ، زیرا به شما امکان می دهد به راحتی انواع مختلفی از آنها را که در ویرایشگر وجود دارد ، مرور کنید. یک مدل رابطه کامل را می توان در توضیحات کاملاً نوشتاری (همراه با Illustartor) یافت.

براکت های مربع نشان می دهد که عنصر بخشی از آرایه است. آرایه مجموعه ای از چندین اشیاء است که با یک ویژگی خاص متحد می شوند. به عنوان مثال ، لایه ها ، pathItems ، RasterItems ، GroupItems ، Selection و غیره آرایه هایی هستند که از اشیاء یک نوع تشکیل شده اند (لایه های سند ، مسیرهای برداری ، تصاویر شطرنجی ، گروه ها و غیره). در پرانتز شاخص (شماره سریال) عنصر مورد نیاز در آرایه را نشان می دهد. بنابراین ، ورودی لایه لایه اول را نشان می دهد ، زیرا شاخص اول همیشه "0" است.

به اشیاء نیز می توان با نام Layer ["نمودار"] دسترسی پیدا کرد. برای انجام این کار ، این عنصر باید صریحاً نامگذاری شود - به صورت دستی ، با استفاده از پالت لایه ها (با کلیک دوبار روی نام شیء ، پنجره ای با خصوصیات آن باز می شود) ، یا از یک اسکریپت استفاده کنید. برای اینکه بنویسی دست و پا گیر هر بار که در آن "شجره نامه" ذکر نشده است ، از منابع استفاده کنید:

pI \u003d activDocument.Layer.pathItems؛

سپس قسمت کد بالا مانند: pI.strokeWidth خواهد بود.

مجاز است در صورت وقوع تمام عملیات در همان لایه فعال ، هر بار به لایه به عنوان یک شی مراجعه نکنید. و توجه داشته باشید که نام متغیرها دارای یک مورد است: اگر برای اولین بار pI را بنویسید و برای بار دوم pi را بزنید ، آنگاه اسکریپت خطایی را پرتاب می کند و کار نخواهد کرد.

در یک مدل شی گرا ، موارد زیر وجود دارد: برنامه کاربردی ، کلاس ها (انواع اشیاء ، یا با استفاده از یک مفهوم آشناتر ، اسم ها: لایه ها ، اشیاء برداری ، گروه ها و غیره) ، روش ها (راه های تعامل با آنها - افعال: حرکت ، تکثیر و و غیره) و خصوصیات (صفت ها: صبر: عرض ، پر کننده ، انتخاب شده و غیره). برای آسانتر حرکت ، تصور کنید که یک برنامه کاربردی خانه ای است که در آن اشیاء مختلفی وجود دارد - یک کلاس آنالوگ (پنجره ها ، درها) که دارای برخی خصوصیات (پلاستیک ، چوبی) است که با آنها اقدامات خاصی انجام می دهند - روش ها (باز ، بسته). با فهم ماهیت چنین سلسله مراتبی ، درک متن نویسی بسیار ساده تر است.

در بالاترین سطح برنامه کاربردی است و به معنای واقعی کلمه پیروی از قانون تسلیم اشیاء ، باید در هر عملی نشان داده شود. به منظور ساده سازی ، پیوند برنامه را می توان از دست داد - به جز در مواردی که واقعاً باید برخی از خصوصیات آن را بشناسید (به عنوان مثال ، فونت های موجود - فونت ها).

کلاسهای Layer ، Group ، Text می توانند شامل اشیاء در همان کلاس باشند که همچنین می توانند کودک داشته باشند. یک ویژگی مفید از رویکرد شی است وراثت  خواص بنابراین ، تمام مسیرهای برداری (pathItems) فرزندان یک کلاس کلیتر هستند - عناصر صفحه (pageItems). بنابراین ، با اختصاص ویژگی های خاص به pageItems ، ما به طور خودکار آن را اختصاص داده و pathItems.

علیرغم شباهت آنها ، کلاسهای Layers و Layer هنوز متفاوت هستند. حالت اول مجموعه ای از تمام لایه های موجود در سند است ، دومی فقط برخی از موارد خاص است و بر این اساس روش ها و خصوصیات آنها با یکدیگر فرق می کند. می توانید روشهای add ، removeAll را در مرحله اول و در مرحله دوم کلیه عملیات موجود برای یک لایه جداگانه اعمال کنید. به خود شیء به عنوان عنصر آرایه مربوطه دسترسی پیدا می کند - در مورد ما ، از طریق لایه ها ، لایه ها و غیره.

عنصر انتخاب شده مربوط به یک کلاس جداگانه است - انتخاب ، که این نیز یک آرایه است (می توان یک گروه از اشیاء را انتخاب کرد). کلاسهای pluginItems ، Colors ، Views در یک حساب ویژه در Illustrator قرار دارند. اولی محدودیتهای بسیاری دارد که مربوط به این واقعیت است که اشیاء از این نوع بومی Illustrator نیستند. اینها شامل عناصر Blend ، پاکت نامه ، مش و غیره است. ما ویژگی های بقیه را در هنگام استفاده در نظر خواهیم گرفت.

برای اینکه اسکریپت "قابل رویت" باشد ، در پوشه Presets.Scriptts واقع در یکی از برنامه های نصب شده قرار می گیرد. ما نمونه های واقعی را در نظر خواهیم گرفت (این فوراً فواید اسکریپت ها را احساس خواهد کرد) و آنها را تحت Illustrator CS می نویسیم ، زیرا نسخه نویسی آن نسبت به نسخه های قبلی انعطاف پذیر تر است.

مثال 1: ترکیب اشیاء

بیایید با ساده ترین آن شروع کنیم - ما یک اسکریپت را خواهیم نوشت که خطوط اشیاء فرعی را به اصلی متصل می کند (یک کار مکرر هنگام ایجاد نمودارهای جریان ، اسناد فنی و کارهای مشابه). و ما به موضوعات اساسی مانند کار با اشیاء انتخاب شده ، ایجاد لایه های جدید ، قرار دادن اشیاء ، تغییر ترتیب آنها ، ایجاد و شامل منحنی ها در یک مسیر مرکب خواهیم پرداخت.

کار با چنین اسناد مستلزم استفاده گسترده از نمادها (نمادها) است - ایجاد تغییرات در آنها بطور خودکار تمام نسخه های ایجاد شده را به روز می کند. با این حال ، Illustrator همیشه به طور صحیح با چنین عناصر کار نمی کند: اتفاق می افتد که نام اشیاء را که نسخه شخصیت ها هستند ، نمی خواند. در نتیجه انتخاب آنها با نام امکان پذیر نیست. پردازش تمام عناصر این نوع در لایه فعلی فایده ای ندارد. در نتیجه ، من به نفع یک گزینه جایگزین تکیه کردم ، که در آن شما ابتدا باید اشیاء موردنیاز را انتخاب کنید (ساده ترین راه انتخاب یک کاراکتر و جستجوی نسخه های آن از طریق دستور Select.Same Incepts) است ، و سپس عنصر مرجع را که با آنها متصل می شود ، انتخاب کنید.

بنابراین در اینجا ما بروید برای کوتاه کردن ، متغیر sel را معرفی می کنیم که در صورت نیاز به انجام هرگونه عملی در مورد شیء انتخاب شده ، به آنها اشاره خواهیم کرد. سپس بررسی خواهیم کرد که چند عنصر انتخاب شده اند (گرچه هر یک از شخصیت های انتخاب شده متن نیز به مجموعه انتخاب تعلق دارند ، ما بررسی نمی کنیم که متن انتخاب شده انتخاب شده باشد). اگر (sel.l طول) بنویسید<2) означает, что мы сравниваем значение length (количество объектов класса sel) с двойкой — минимальным количеством для работы сценария. Если выделенных элементов меньше, будут выполняться действия, заключённые в первые идущие за оператором if фигурные скобки, иначе — идущие после else. При этом логично предусмотреть выдачу сообщения, чтобы сориентироваться в ситуации и понять, что нужно сделать.

sel \u003d ActiveDocument.selection
   اگر (sel.l طول<2) {br>  هشدار ("اشیاء کافی برای ادامه کار نیست! \\ n حداقل 2 مورد را انتخاب کنید و هدف نهایی را انتخاب کنید!")
   دیگری (

Alert یک عملکرد استاندارد JavaScript است که با متن مشخص شده و دکمه OK ، پنجره ای را نمایش می دهد. "\\ N" یعنی رفتن به یک خط جدید و از آن برای کوچک نگه داشتن پنجره استفاده می شود. متن نمایش داده شده در پنجره باید در سهمیه بندی محصور شود.

مرحله آماده سازی

مختصات مرکز شیء مرجع را بدست آورید. از آنجا که ما توافق کردیم که او بالاترین است ، تعداد (شاخص) او "0" (انتخاب) است. برای محاسبه مختصات ، از چنین خصوصیاتی از جسم به عنوان موقعیت (موقعیت) ، عرض و ارتفاع (ارتفاع و عرض) استفاده خواهیم کرد. مقادیر موقعیت در یک آرایه متشکل از یک جفت مقادیر - مختصات در امتداد محور X و Y - ذخیره می شوند. بنابراین ، باید به همه به عنوان موقعیت و مقام توجه شود.

refObj_x \u003d sel.position + (sel.width / 2)؛
   refObj_y \u003d sel.position - (sel.height / 2)؛

مختصات مرکز شیء مرجع را بدست آوردیم و برای استفاده بیشتر آنها را به دو متغیر اختصاص دادیم. خط دوم حاوی علامت "-" است ، زیرا Illustrator گوشه سمت چپ پایین سند را به عنوان نقطه مرجع می پذیرد ، و موقعیت مختصات گوشه سمت چپ بالای عنصر را می دهد.

از آنجا که راحتی هنگام کار با یک سند نقش مهمی ایفا می کند ، ما مطمئن خواهیم شد که خطوط ایجاد شده روی یک لایه جداگانه هستند - چنین ساختاری به حفظ نظم در یک طرح با پیچیدگی های مختلف کمک می کند.

یک لایه جدید ایجاد کنید - آن ، مانند هر عنصر Illustrator ، با روش افزودن () اعمال شده برای کلاس مربوط به اشیاء ایجاد می شود. در براکت ها می توانید پارامترهای عمل را مشخص کنید: مقصد را مشخص کنید (می تواند مثلاً یک لایه یا حتی یک سند جدید و همچنین موقعیت در مقصد باشد). برخلاف اکثر روشها ، پارامترهای اضافی برای افزودن ارائه نشده است ، بنابراین برای انتقال به بالاترین سطح ، از یک روش ویژه - zOrder استفاده خواهیم کرد که BRINGTOFRONT را به عنوان یک پارامتر مشخص خواهیم کرد (یک ثابت رزرو شده ، لیست کاملی از آن در مستندات آورده شده است). در اصل ، اگر سند فقط یک لایه داشته باشد ، لازم نیست به طور خاص موقعیت جدید را مشخص کنید ، زیرا Illustrator همیشه آن را بالاتر از حالت فعلی قرار می دهد. اگر اشیاء قابل اتصال در بالاترین سطح قرار نگیرند ، به خط دوم نیاز خواهید بود.

newlayer \u003d activDocument.layers.add ()؛
   newlayer.ZOrder (ZOrderMethod.BRINGTOFRONT)؛

اولین خط را می توان به این صورت خواند: با افزودن (اضافه کردن) تعداد اشیاء از نوع مورد نیاز (لایه ها) یک عنصر جدید ایجاد کنید و یک لینک را به عنصر تازه ایجاد شده به متغیر newlayer اختصاص دهید. در لحظه اولیه ، لایه خالی است ، زیرا هنوز هیچ چیزی در آن قرار نگرفته است. برای ساده تر کردن جهت یابی در یک طرح پیچیده ، نام "اتصالات" (به روش نام) را به لایه بدهید - همانطور که می بینید ، نام روشها به روشنی عملکردهای انجام شده را نشان می دهد.

newlayer.name \u003d "اتصالات"؛

برای اهداف آموزشی ، ما خطوط جداگانه ای ایجاد نخواهیم کرد ، بلکه برای سهولت در ویرایش به یک شیء از نوع Compound Path می پردازیم. ایجاد چنین شیء روش قبلی را که تکرار شده است تکرار می کند ، این بار برای کلاس مرکب PathItems اعمال می شود:

newCompoundPath \u003d activDocument.compoundPathItems.add ()؛

از آنجا که در آخرین مرحله ما یک لایه جدید ایجاد کردیم ، فعال است - بر این اساس ، اشیاء ایجاد شده روی آن قرار می گیرند ، و نیازی به مشخص کردن آن نیست (ActiveDocument.newlayer).

تعیین مختصات عناصر فرعی

ما این فرآیند را با خروجی خطوط اتصال به خود ترکیب می کنیم ، زیرا تعداد آنها باید با تعداد اشیاء مطابقت داشته باشد. به نوبه خود ، ما شروع به مرتب سازی در بین همه عناصر انتخاب شده ("i ++" به معنی افزایش یک با یک) می کنیم و مختصات آنها را می خوانیم. ما جستجو را نه از اولین شیء از آرایه Selection شروع می کنیم (همانطور که به یاد دارید شیء مرجع مانند آن عمل می کند) بلکه از حالت دوم (sel) استفاده می کند. خطوط زیر در حال حاضر برای ما آشنا هستند:

برای (i \u003d 1؛ i< sel.length; i++) {
   obj_x \u003d sel [i] .postion + sel [i]. عرض
   obj_y \u003d sel [i] .postion - sel [i]. قد

پس از دریافت مختصات مرکز کودک ، ما به ساختن خطی می پردازیم که آن را با مرجع متصل می کند. برای هر عنصر انتخاب شده ، یک شی جدید ایجاد کنید - یک مسیر بردار که در کلاس CompoundPath قرار دارد ، تعداد کل مسیرها را افزایش دهید:

newPath \u003d newCompoundPath.pathItems.add ()؛

برای تنظیم کانتورهای ساده در Illustrator ، یک روش setEntirePath وجود دارد که پارامترهای آن آرایه ای از مختصات نقاط شروع و پایان است - که همانطور که از قبل می دانیم به نوبه خود به عنوان آرایه های دو مقدار (موقعیت در امتداد دو محور) مشخص می شوند. سرانجام ، شرط "اگر چیزی برجسته است" را که در همان ابتدا معرفی شده بود ، به پایان می رسانیم.

newPath.setEntirePath (آرایه (آرایه (آرایه (refObj_x ، refObj_y) ، آرایه (obj_x ، obj_y)))؛ )

فیلمنامه آماده است. همانطور که مشاهده می کنید ، هیچ چیز پیچیده ای در آن وجود ندارد: اسامی روش ها جوهره آنها را آشکار می کند ، و مدل شی گرا به درک صحیح سلسله مراتب اشیاء Illustrator کمک می کند. فیلمنامه هیچ ارزش عملی خاصی ندارد (احتمال زیاد تدریس است) ، اما در مثال آن بسیاری از مفاهیم اساسی در نظر گرفته شده است که ما در آینده به آنها اعتماد خواهیم کرد (کار با اشیاء انتخاب شده ، اصل شماره گذاری آنها در آرایه انتخاب ، تعیین مختصات ، ایجاد لایه های جدید ، خروجی). خطوط)

مثال 2: شناسایی کانتورهای خیلی نازک

عملیات مقیاس گذاری در گرافیک های برداری بسیار فعال هستند. بنابراین ، هنگام کاهش سایز اشیاء با خطوط نازک (اگر پارامتر مقیاس Strokes فعال باشد) ، اغلب ضخامت سکته مغزی آنها از 0.25 pt پایین می آید (مقداری که پس از آن خطوط ضعیف دیده می شوند) و باعث می شود هنگام چاپ بر روی چاپگر جوهر افشان ناپدید شوید. توابع جستجوی داخلی Illustrator برای اشیاء با ارزش سکته مغزی کمتر از مقدار مشخص شده ارائه نشده است. دستی یافتن آنها بسیار دشوار است - شما باید هر شیء را جداگانه انتخاب کنید ، که به سرعت میل به مشارکت در چنین چک هایی را ناامید می کند. این اسکریپت عملکرد بسیار ساده ای خواهد داشت.

خود اسکریپت در ساده ترین نسخه کوچک است ، اما ما یک هدف را برای جهانی تر کردن آن تعیین خواهیم کرد - به دلیل امکان مشخص کردن حداقل ضخامت در کادر گفتگو ، عملکرد را گسترش خواهیم داد. البته ، شما می توانید به سختی این مقدار را در خود اسکریپت ثبت کنید و در صورت لزوم ، هر بار آن را تنظیم کنید ، اما ، می بینید ، این کار ناخوشایند است. ما همچنین نشانه ای از عنصر انتخاب شده را به عنوان یک شیء مرجع با حداقل مقدار مرزی قابل قبول ارائه می دهیم. به موازات ، برای آمار ، تعداد عناصر با ضخامت تغییر یافته را محاسبه می کنیم و آنها را برای وضوح انتخاب می کنیم.

کل اسکریپت به دو قسمت تقسیم می شود: اولیه (خواندن مقدار از کادر گفتگوی یا مورد انتخاب شده) و نهایی (جستجو در بین همه اشیاء موجود در سند و تغییر مجدد ضخامت مرز). علاوه بر نشان دادن دسترسی به اشیاء Illustrator ، ما برای ایجاد مقادیر سفارشی ، ایجاد یک رابط مینی را در نظر خواهیم گرفت.

وارد کردن مقادیر

دو خط اول با مثال قبلی یکسان هستند ، به جز اینکه به جای "2" "0" ظاهر می شود ، زیرا قبل از فیلم نامه باید تعیین کنیم که آیا اشیاء انتخاب شده وجود دارد یا خیر. مقایسه با یک علامت برابر برابر برابر می شود (واحد یک مقدار را اختصاص می دهد).

var mySel \u003d app.activeDocument.selection؛
   var go \u003d درست؛
   اگر (sel \u003d\u003d 0) (

اگر چیزی انتخاب نشده باشد ، حداقل ضخامت از طریق کادر گفتگو تنظیم می شود. ما آن را با استفاده از عملکرد استاندارد JavaScript - سریع - استخراج می کنیم. پنجره ای را با فیلد باز می کند که در آن می توانید یک مقدار وارد کنید و بعداً از آن استفاده کنید. نحو عملکرد به شرح زیر است: ابتدا متن اشاره ای وجود دارد که در پنجره نمایش داده می شود (با در نظر گرفتن یکسان سازی اسکریپت ، ما از الفبای سیریلیک استفاده نخواهیم کرد ، زیرا اغلب غالباً به صورت نادرست نمایش داده می شود) ، سپس مقداری که به طور پیش فرض در قسمت ورودی بدست می آید. دو مورد وجود دارد: امکان تنظیم فوری حداقل ضخامت مجاز و مشخص کردن هر مقدار. با ایجاد متغیری که مقدار تابع سریع به شما اختصاص داده شده است ، می توانید از آن برای اهداف خود استفاده کنید.

با نگاه به آینده ، توجه می كنم كه Illustrator دسترسی كامل به همه انواع اشیاء را ندارد - بعضی از آنها از آنجا خارج می شوند. بنابراین ، ما به تجسم نه تنها عناصر ثابت ، بلکه برای فیلمنامه نیز غیرقابل دسترسی خواهیم پرداخت ، تا بدنبال دستی به جستجوی آنها نباشیم - زیرا آنها همچنین می توانند حاوی اشیاء مشکل باشند. برای اینکه دو کادر گفتگو نمایش داده نشود (برای مقدار ضخامت و تعیین اینکه کدام عناصر را انتخاب کنید) ، از قابلیت پردازش رشته JavaScript استفاده خواهیم کرد. واقعیت این است که محتویات یک قسمت پر از کاربر یک "رشته" (یک بلوک از اطلاعات) است ، که می تواند شامل تعدادی از پارامترها (از طریق تعیین کننده ها) باشد. با دانستن جداکننده ، مقادیر پارامترهای فردی را می توان به راحتی از رشته استخراج کرد.

بر این اساس ، متن ایجاد کننده کادر گفتگو به شرح زیر است: تنظیم حداقل ضخامت مرز و یک عدد شرطی: "1" ، اگر می خواهید اسکریپت عناصر تصحیح شده را برجسته کند ، "2" - مواردی که شما نتوانستید به آنها برسید.

مقدار \u003d سریع ("آستانه عرض سکته مغزی را مشخص کنید (در pt) ، \\ n چه چیزی را انتخاب کنید: اشیاء اصلاح شده (1) یا غیرقابل دسترسی (2)" ، "0.25 ، 1")

در ابتدا ، زمینه را روی 0.25 نقطه تنظیم کنید (واحد اندازه گیری در Illustrator به طور پیش فرض) ، اما هنگام تغییر آن ، از مقدار جدید استفاده می شود ، و "1". "2" فقط باید مشخص شود اگر فیلمنامه اشیاء غیرقابل دسترسی را پیدا کند (ما مطمئن خواهیم شد که این کار را در انتهای کار نشان می دهد). و آنها برجسته خواهند شد ، که ما را از جستجوی دستی نجات می دهد (همانطور که می دانید جستجو داخلی Illustrator باعث می شود مورد نظر شما بیشتر شود).

با خواندن مقادیر از قسمت کاربر ، متوجه شدیم که به پردازش آنها می پردازیم. بررسی کنید که این فیلد واقعاً خالی است (علامت "!" نشانگر نفی است ، یعنی "! \u003d" معادل "برابر نیست" است ، تهی کلمه ثبت شده برای یک مقدار خالی است). اگر چیزی در آن وجود داشته باشد ، ما با استفاده از تابع تقسیم جاوا اسکریپت (ما ترکیب کاراکترها "،" را به عنوان جداکننده تعریف می کنیم) رشته را به بلوک های جداگانه می شکنیم و مقادیر حاصل را در آرایه splitString قرار می دهیم. پس از آن ، نامهای توصیفی را به مقادیر از آرایه می دهیم (اولی ضخامت را تعیین می کند ، دوم - حالت عملکرد).

اگر (مقدار! \u003d null) (
   splitString \u003d مقدار.split ("،")؛
   وزن \u003d splitString؛
   نوع \u003d splitString؛ )

اگر در زمینه کاربری چیزی نباشد ، اسکریپت را متوقف می کنیم. آخرین براکت بسته شدن نشانه تکمیل شرطی است که در ابتدا تعیین کردیم ("اگر هیچ چیزی در سند برجسته نباشد").

دیگری (برو \u003d غلط)

اگر موضوع مرجع به طور خاص انتخاب شده باشد

اگر ما عمداً عنصری را انتخاب کنیم که ضخامت مرز آن را می خواهیم به عنوان مقدار آستانه استفاده کنیم ، اکنون دنباله ای از اقدامات را خواهیم نوشت. ما یک هشدار در مورد اقدامات بیشتر این اسکریپت با استفاده از عملکرد استاندارد تأیید نمایش می دهیم (یک کادر گفتگوی با دو دکمه ایجاد می کند - و). اگر کلیک کنید<Сancel>، کار متوقف می شود ، اگر موافقت کنید ، فیلمنامه به کار خود ادامه می دهد.

دیگری (انتخابMsg \u003d تأیید ("عرض ضربه ای از شی انتخاب شده به عنوان آستانه استفاده خواهد شد"))
   if (انتخاب شده Msg! \u003d true) (
   برو \u003d نادرست؛
   ) دیگری (

ما به قسمت اصلی فیلم نامه می پردازیم. ما هنگامی که چندین مورد برجسته می شود ، آگاهانه وضعیت را در نظر نمی گیریم ، زیرا برای تنظیم ضخامت مرز کافی است فقط یک مورد را انتخاب کنید. و اگر معلوم شود برای عناصر متفاوت است از چه ارزشی استفاده کنم؟ همانطور که قبلاً می دانیم ، تنها شی انتخاب شده دارای نمایه ای از "0" است و برای بدست آوردن ضخامت لبه ، Illustrator دارای یک ویژگی Width عرض است. این نکته را در نظر خواهیم گرفت که در اصل ، انتخاب می تواند نه تنها عناصر مجزا ، بلکه بخشی از متن را نیز شامل شود (برای مثال ، بصورت اتفاقی انتخاب شده است) که در برنامه های ما گنجانده نشده است ، بنابراین قبل از شروع کار ، قابلیت های JavaScript را بررسی کنید تا نوع عنصر انتخاب شده را که متعلق به یک آرایه است:

if (sel isArray) (
   وزن \u003d sel.strokeWidth؛

از آنجا که ما توافق کردیم فقط اشیاء تغییر یافته را انتخاب کنیم ، باید انتخاب را از بیشترین مرجع حذف کنیم (به ویژگی انتخاب شده آن مراجعه کنید):

sel.selected \u003d false؛ )))

اکنون ما کاملاً آماده هستیم تا وظیفه اصلی اسکریپت را انجام دهیم - جستجوی اشیاء: مقداری که به عنوان حداقل ضخامت مجاز استفاده می شود در متغیر وی ذخیره می شود.

شرایط

آن را با یک ویژگی مشابه برای همه اشیاء موجود در سند مقایسه کنید. می توانید بلافاصله به جستجو ادامه دهید ، اما استفاده از اسکریپت در کار روزانه با در نظر گرفتن شرایط اضافی - در چیدمان ها اغلب لایه های قفل شده و اشیاء مجزا وجود دارد. بنابراین ، حتی اگر جستجو در آنها کار کند ، شما نمی توانید تغییراتی ایجاد کنید. برای اطمینان از تأیید صحت کامل ، چندین عملیات را به اسکریپت اضافه می کنیم: بررسی عناصر برای رعایت معیار مشخص شده ، در عین حال در صورت لزوم آنها را باز کنید و ایندکس را به خاطر بسپارید تا پس از اتمام صحت ، آنها را به حالت قبلی خود برگردانید. ما دو متغیر را معرفی می کنیم: اولین مورد برای دسترسی کمتر به همه لایه های موجود در سند و با حالت دوم فقط به حالت های قفل شده دسترسی پیدا می کنیم. ما شماره سریال دومی را در یک آرایه ذخیره می کنیم ، که با عملکرد JavaScript ایجاد می کنیم - Array جدید ().

var dL \u003d activDocument.layers؛
   var blokeLayers \u003d Array جدید ()؛

سپس تمام لایه ها را بررسی خواهیم کرد و برای قفل شده ها (ویژگی قفل شده \u003d صحیح) شماره دنباله را در آرایه blokeLayers (با استفاده از عملکرد فشار از JavaScript) قرار می دهیم ، پس از آن اجازه ویرایش آنها را می دهیم (قفل شده \u003d غلط).

اگر (برو \u003d\u003d واقعی) (
   برای (i \u003d 0؛ i if (dL [i] .locked \u003d\u003d true) (
   blokenLayers.push (i)؛
   dL [i] .locked \u003d false؛ پیش از این ، ما توافق کردیم تا اشیاء ثابت را برجسته کنیم ، اما پس از پایان کار اسکریپت روی لایه های قفل شده ، ما قادر به انجام این کار نخواهیم بود - باید یک هشدار مناسب را نشان دهیم. برای انجام این کار ، از ویژگی LockedPresence استفاده کنید که حداقل در صورت قفل شدن یک لایه تنظیم می شود.

lockedPresence \u003d true؛

همین کار را با عناصر قفل شده فرد تکرار خواهیم کرد. در ساده ترین حالت ، کافی است تمام عناصر برداری (pathItems کلاس) ، که شامل تکه های مرکب به عنوان یک طبقه فرعی هستند- را بررسی کنید تا هیچ چیزی از دیدن همه چرند فیلمنامه فرار نکند.

گودالها

علاوه بر وضعیت در نظر گرفته شده با انسداد ، "گرفتگی" دیگری نیز وجود دارد. همانطور که قبلاً نیز اشاره شد ، برخی از عناصر (به ویژه ، گروه ترکیبی و پاکت) از Illustrator "بومی" نیستند ، آنها متعلق به یک نوع پلاگین ویژه است. در عین حال ، Illustrator دسترسی به چنین اشیاء را فراهم نمی کند ، آنها یک "چیز به خودی خود" هستند. فقط می توانید از طریق طبقه ای از سطح بالاتر به آنها دسترسی پیدا کنید - pageItems ، که از طریق آنها حداقل می توانیم حضور آنها را تعیین کنیم و در پایان یک اخطار به نمایش بگذاریم. می گوید با اجرای دوباره فیلمنامه و مشخص کردن "2" به عنوان دومین پارامتر در قسمت ورودی ، این "جعبه های سیاه" برجسته می شود.

pgI \u003d activDocument.pageItems؛

برای ذخیره کردن شاخص های اشیاء مسدود شده ، آرایه ای بنام blokePathes ایجاد کرده و برای محاسبه تعداد اشیاء تغییر یافته ، متغیر تصحیح شده را معرفی می کنیم.

bloсkedPathes \u003d آرایه جدید ()؛
   تصحیح \u003d 0؛

برای همه اشیاء ، ما متعلق به نوع PluginItem (ویژگی نامگذاری) را بررسی خواهیم کرد: در صورت وجود ، پرچم pluginItemExist را تنظیم کنید (حالت آن خروجی هشدار دهنده درباره وجود چنین عناصر را تعیین می کند). در صورت بررسی مکرر (هنگامی که پارامتر دوم در قسمت ورودی "2" است) آنها را انتخاب می کنیم:

برای (i \u003d 0؛ من< pgI.length; i++) {
   if (pgI [i] .typename \u003d\u003d "PluginItem") (
   pluginItemExist \u003d درست است
   if (نوع \u003d\u003d "2") (pgI [i]. انتخاب \u003d صحیح)

بنابراین ، تمام (یا تقریباً همه) موقعیتهای ممکن که در کار بوجود می آیند ، اقدامات برای آنها پیش بینی کرده و شناسایی کرده ایم.

چک اصلی

اکنون نوبت فرا رسیده است که طرح را برای رعایت معیارهای مشخص شده فرینگ بررسی کنیم. ما در نظر می گیریم که در بین اشیاء ممکن است مواردی نیز وجود داشته باشد که اصلاً لبه وجود نداشته باشد (تعیین شده توسط وضعیت صفت نوازی) - بنابراین ، آنها باید از اسکن خارج شوند.

if ((pgI [i] .strokeWidth< weight)&&(pgI[i].stroked)) {
   if (pgI [i] .locked \u003d\u003d true) (
   blokenPathes.push (i)؛
   pgI [i] .locked \u003d false؛

این قطعه کد را می توان به شرح زیر تفسیر کرد: ما وجود یک مرز و ضخامت آن برای هر عنصر را تعیین می کنیم. اگر کمتر از حداقل باشد (اگر (pI [i] .strokeWidth< weight), и объект заблокирован, его индекс занести в специально созданный для такой цели массив blokedPathes, после чего разблокировать для внесения возможных изменений. Знак && обозначает логическое «И» (обязательное совпадение двух условий) — толщины меньше минимальной и присутствия окантовки.

سپس ما وجود اشیاء قفل شده را برطرف می کنیم (ما پرچم LockedPresence را تنظیم می کنیم تا در آینده هشداری را نشان دهد که همه موارد تغییر یافته نمی توانند برجسته شوند) و مورد اصلاح شده را انتخاب کرده و مقدار آستانه را به مرز آن اختصاص می دهیم - و غیره برای همه عناصر. برای آمار ، ما به طور همزمان تعداد اشیاء تغییر یافته را محاسبه خواهیم کرد.

lockedPresence \u003d true؛
   pgI [i] .selected \u003d true؛
   pgI [i] .strokeWidth \u003d وزن؛
   اصلاح شده ++؛

مراحل برجسته سازی عناصر غیرقابل اطمینان (نوع \u003d "2") قبلاً در نظر گرفته شده بود. اکنون با جستجوی معمول اشیاء بالقوه مشکل ساز ، آنچه را باید اتفاق بیفتد را تعریف می کنیم.

if (نوع \u003d "1") (pgI [i]. انتخاب \u003d صحیح)

بازگرداندن وضعیت موارد مسدود شده

ما کار اصلی را انجام دادیم - اشیاء مشکل دار برطرف و برجسته شدند. برای بازگرداندن وضع موجود باقی مانده است - همه در ابتدا مسدود شده اند تا به حالت قبلی خود برگردند. برای این کار ، در چرخه فعلی محتویات آرایه را می خوانیم ، جایی که شاخص های اشیاء مسدود شده در آن ذخیره می شود ، و ویژگی را قفل شده \u003d صحیح برای هر عنصر مربوطه تنظیم می کنیم (روش shift آخرین مقدار وارد شده از آرایه را از آرایه نشان می دهد). از آنجا که تعداد کل اشیاء بیش از مسدود شده است ، باید مراقب باشید چرخه اسکن پس از خالی کردن آرایه انجام شود.

if (blokesPathes.l طول\u003e 0) (
   retrievedPathes \u003d blokingPathes.shift ()؛
   pI.locked \u003d true؛))

سپس اقدامات مشابه را با توجه به لایه ها انجام خواهیم داد:

برای (i \u003d 0؛ i if (blokeLayers.l طول\u003e 0) (
   بازیابی \u003d blokenLayers.shift ()؛
   dL.locked \u003d true؛ ))) در واقع ، برای عملیات مشابه استفاده از توابع بسیار راحت تر است. مزیت آنها این است که به محض توصیف اقدامات خاص ، می توانید آنها را به طور کامل و فقط با فراخوانی عملکرد در مکان های مناسب تکرار کنید. از این طریق فشردگی و خوانایی فیلمنامه حاصل می شود. برای افزایش انعطاف پذیری عملکرد ، مقادیر (پارامترهای) مورد استفاده در آن منتقل می شود. اگر نمی خواهید از توابع استفاده کنید ، دو پاراگراف بعدی را پرش کنید.

بیایید دو کارکرد انجام دهیم: اول - برای باز کردن لایه ها و اشیاء ، دوم - برای بازگرداندن صفات آنها. فقط انواع شی (کلاس Layers و pageItems) و آرایه هایی برای ضبط عناصر مورد علاقه ما (blokeLayers و blokePathes) در آنها تغییر خواهد کرد - آنها به عنوان پارامترهای عملکرد ظاهر می شوند. ما اولین مورد را مانند این می نویسیم:

بازکردن عملکرد (آرایه ، آیتم نوع)
   if (itemType [i] .locked \u003d\u003d true) (
   array.push (i)؛
   itemType [i] .locked \u003d false؛
   قفل شده \u003d غلط؛
}

به جای آرایه ، یک آرایه را جایگزین خواهیم کرد ، به جای classType - کلاس لازم. سپس دو تماس دریافت می کنیم - قفل (blockLayers ، dL) و باز کردن قفل (blokePathes ، pgI). به همین ترتیب ، ما برای بازگرداندن وضعیت ، ما یک تابع می نویسیم:

بازیابی عملکرد (آرایه ، آیتم نوع)
   if (array.l طول\u003e 0) (
   بازیابی \u003d array.shift ()؛
   itemType.locked \u003d true؛
}

نمایش اطلاعات در مورد نتایج تأیید

این آخرین مرحله فیلمنامه است. ابتدا شرط نمایش پیام را در صورت انتخاب جستجوی اشیاء غیر قابل ویرایش تعریف می کنیم ، سپس شرط اخطار مبنی بر شناسایی چنین اشیاء:

if (نوع \u003d\u003d "2") (b \u003d "\\ n بررسی کنید!")
   if (pluginItemExist \u003d\u003d true) (
   هشدار ("به دلیل محدودیت های برنامه نویسی بعضی از اشیاء نمی توانند تحت تأثیر قرار گیرند" + ب))

منطق صدور اخطار مبنی بر اینکه همه موارد اصلاح شده قابل برجسته نیستند به شرح زیر است:

if ((lockedPresence \u003d\u003d true) && (pluginItemExist \u003d\u003d false)) (
   هشدار \u003d "\\ n زیرا برخی از آنها قفل شده اند و نمی توانند به عنوان انتخاب شده نشان داده شوند")

سپس نتایج نهایی را به دست می آوریم:

هشدار ("تعداد اشیاء اصلاح شده عبارتند از:" + تصحیح شده + هشدار)

در اینجا ، در واقع ، تمام فیلمنامه است. همانطور که مشاهده می کنید ، این چند سطر کارهای عظیمی انجام می دهند ، که به سختی کسی جرات انجام دستی را دارد. اسکریپت فوراً اجرا می شود (در پروژه های در مقیاس بزرگ ، با تعداد عناصر به سفارش چندین هزار ، عملکرد پردازنده شروع به تأثیر می کند). شما فقط باید آن را از لیست لیست های موجود انتخاب کنید (حتی نمی توانید این کار را انجام دهید - Illustrator به اسکریپت ها اجازه می دهد "کلیدهای داغ" را اختصاص دهند) با دستورات Edit.Keyboard short.uts.Menu. اما بخاطر داشته باشید: نام اسکریپت ها به ترتیب حروف الفبا مرتب شده اند ، بنابراین اضافه کردن نامهای جدید یا حذف موارد قدیمی می تواند منجر به تنظیم مجدد کلیدهای اسکریپتهای همسایه شود. نتیجه گیری: پس از تغییر در پوشه Presets \\ Scriptts ، مکاتبات کلیدها را بررسی کنید.

ما سعی کردیم فیلمنامه را جهانی کنیم ، که بر حجم آن تأثیر گذاشت. در ابتدایی ترین نسخه (بدون در نظر گرفتن ویژگی ها و مشکلات موجود در بالا) به معنای واقعی کلمه چند خط طول می کشد:

minWidth \u003d activDocument.selection.strokeWidth؛
   pI \u003d activDocument.pathItems؛
   برای (i \u003d 0؛ من< pI.length; i++) {
   if ((pI [i] .strokeWidth< minWidth) && (pI[i].stroked)) {
   pI [i] .strokeWidth \u003d minWidth؛
}}

دسر چیست؟

شماره بعدی را به کارتهای ویزیت اختصاص خواهیم داد: ما اسکریپتی خواهیم نوشت که طرح آنها را بر روی یک ورقه خودکار می کند. اما ، برای طیف وسیع تری از کارها مفید است ، زیرا هیچ اشاره ای به اندازه اشیاء ندارد. همانطور که انتظار می رود ، ما برای جلوگیری از بروز مشکل در برش نادرست ورق و همچنین چرخش کارت ویزیت (در صورتی که قسمت بالا و پایین آنها به طور قابل توجهی متفاوت باشد) ، مواردی را ایجاد می کنیم. در همان زمان ، ما به موضوع جستجوی اشیاء خواهیم پرداخت که مدل رنگ آن با مورد متفاوت است ، که این نیز در کارهای مشابه غیر معمول نیست.

مجلات آزادانه در دسترس هستند.

در همین موضوع:

    اخبار 2019-04-03

    چگونه جوهر اضافی سفید به ایجاد برنامه های جدید برای چاپ با فرمت بزرگ کمک می کند.

    امروزه تعدادی از چاپگرهای با فرمت بزرگ و فرمت بسیار گسترده می توانند با جوهر یک رنگ اضافی - سفید چاپ کنند ، که این امر امکانات جدیدی را برای استفاده از این دستگاه ها ایجاد می کند. اما چاپگرها می توانند فن آوری های مختلفی را برای چاپ با جوهر سفید پیاده سازی کنند و فناوری های مختلف قابلیت ها و محدودیت های خاص خود را دارند.

عملکرد Adobe Illustrator بسیار زیاد است ، اما اشکالاتی نیز وجود دارد ، فایده این برنامه اسکریپت است ، که این باعث ساده سازی و حتی گسترش توانایی برنامه می شود. علاوه بر اسکریپت ، برنامه های افزودنی وجود دارد - پانل های سفارشی برای گسترش برنامه ، اما این موضوع کمی متفاوت است.

نصب اسکریپت

اگر تاکنون از اسکریپت ها در Adobe Illustrator استفاده نکرده اید ، در اینجا یک راهنمای سریع در مورد نحوه اجرای یک اسکریپت ارائه شده است.

ابتدا باید اسکریپت هایی را که می خواهید از آنها استفاده کنید در پوشه "اسکریپت" بگذارید. چگونه مسیر این پوشه را پیدا کنیم؟ این ساده است ، ما به ریشه پوشه ای می رویم که برنامه خود Adobe Illustrator در آن قرار دارد ، سپس "Presets -\u003e en_US -\u003e Scriptts" ، به جای en_US ممکن است یک پوشه دیگر با بومی سازی وجود داشته باشد ، چه نوع محلی سازی Illustrator را دارد ، چنین پوشه ای را انتخاب کنید.

بعد از اینکه اسکریپت ها را در پوشه قرار دادید ، می توانید آنها را با استفاده از روش استاندارد اجرا کنید - این کار از طریق "File -\u003e Scriptts" راه اندازی می شود ، لیست اسکریپت های شما در منوی کشویی قرار خواهد گرفت ، روی هر یک از آنها کلیک کنید و اسکریپت را اجرا خواهید کرد. حتی اگر اسکریپت های شما در یک پوشه مختلف قرار دارند ، می توانید آنها را اجرا کنید و به چندین روش:

  1. به منوی "File -\u003e Scriptts -\u003e Other Script ..." بروید ، اکسپلورر باز خواهد شد ، پس از آن باید فایل اسکریپت را پیدا کنید ، و سپس اسکریپت را اجرا کنید
  2. به سادگی می توانید اسکریپت را از Explorer به Illustrator بکشید و رها کنید ، پس از آن اسکریپت راه اندازی می شود
  3. برای اجرای اسکریپت ها می توانید از برنامه های افزودنی استفاده کنید - این پنل برای Illustrator است که به شما امکان می دهد اسکریپت ها را مستقیماً از برنامه اجرا کنید. چندین پسوند وجود دارد. توصیه می کنم از LAScriptts استفاده کنید.

هماهنگ کننده

اسکریپت برای تنظیم عناصر روی یک شبکه

اشیاء را انتخاب کنید ، اسکریپت را اجرا کنید ، تعداد ستون ها را انتخاب کنید (خطوط به طور خودکار محاسبه می شوند) ، فاصله بین عناصر و همچنین مرکز گرایش آنها را انتخاب کنید (به طور پیش فرض ، بزرگترین عنصر انتخاب می شود).

ArtboardsResizeWithObjects

اسکریپتی برای تغییر اندازه آرشیو به همراه محتوا.

در Adobe Photoshop تابعی از "اندازه تصویر" وجود دارد که می توان در کنار محتویات ، artboard را تغییر داد ، اما در Adobe Illustrator چنین عملکردی وجود ندارد. بعضی اوقات ممکن است لازم باشد که مقوا را به همراه محتویات تغییر دهید ، به گونه ای که پس از تغییر ، تمام حالت ها حفظ می شوند.

فرض کنید تصمیم دارید artboard را با دستان خود تغییر دهید ، ترتیب اقدامات خود: artboard را تغییر دهید ، سپس تمام عناصر موجود در قسمت artboard را انتخاب کرده و اندازه را تغییر دهید ، اما فقط یک مشکل در اینجا ظاهر می شود. اگر عناصری با سكته مغزی دارید ، هنگام تغییر با سكته ، سكته مغزی همراه با كاهش شیء كاهش نمی یابد ، اما می توانید با علامت زدن جعبه "مقیاس نوارها و جلوه ها" ، این مسئله را بدست آورید ، اما اگر نیاز به تغییر اندازه چندین تابلوی گرافیکی دارید ، چه می شود؟ برای ساده و صرفه جویی در وقت ، از اسکریپت artboardsResizeWithObjects.jsx استفاده کنید


  • ضریب جدید مقیاس  - مقیاس مقوا به عنوان درصد
  • عرض مقوا جدید  - عرض جدیدی از مقوا ، ارتفاع متناسب تغییر خواهد کرد
  • قد جدید کارتن  - ارتفاع جدید مقوا ، عرض متناسب تغییر خواهد کرد
  • فقط مقوا فعال  - فقط کادر فعال را تغییر دهید
  • همه تخته های هنری  - کلیه کارتهای هنری را تغییر دهید
  • تخته های هنری سفارشی  - کادرهای دلخواه را تغییر دهید ، می توانید به صورت کاما یا به عنوان خوابگاه بنویسید (مثل وقتی صفحات را هنگام چاپ مشخص می کنید)
  • موارد پنهان و قفل شده را وارد کنید  - عناصر قفل شده و پنهان را در نظر بگیرید
  • قسمت ورودی برای اندازه  - بطور پیش فرض ، عرض آرشیو فعال گرفته می شود.

ArtboardsRotateWithObjects

یک اسکریپت برای چرخاندن صفحه نمایش به همراه محتویات.

در Adobe Photoshop ، می توانید artboard را بچرخانید و محتوا نیز چرخانده شود ، اما در Adobe Illustrator چنین عملکردی از جعبه وجود ندارد.

این اسکریپت در صورت نیاز به چرخش چندین تخته هنری مفید خواهد بود ، یا اگر نمی خواهید بعد از چرخیدن موقعیت خود را نسبت به قسمت artboard تلف کنید.


شرح مختصری از هریک از موارد موجود در فیلمنامه:

  • تخته فعال #  - فقط کادر فعال را بچرخانید
  • همه تخته های هنری  - همه تخته های هنری را بچرخانید
  • زاویه چرخش 90 CW  - منطقه نصب را در جهت عقربه های ساعت بچرخانید
  • زاویه چرخش 90 CCW  - منطقه نصب را خلاف عقربه های ساعت بچرخانید

InlineSVGToAI

اسکریپتی برای درج svg (و تبدیل کد svg) به یک سند.

در نسخه Adobe Illustrator CC 2018 v.22.1 (مارس 2018) ، توانایی درج شیء svg اضافه شده است ، در این حالت اسکریپت نیازی به استفاده ندارد.

من همیشه اذیت می شدم که svg را نمی توان در برنامه ای که در زمینه برداری تخصص دارد چسباند ، منظور من این است که اگر کدهای swg را از یک ویرایشگر یا از جاهای دیگری کپی کرده ایم ، اما به صورت متن ، ما نمی توانیم آن را در برنامه بچسبانیم. ابتدا باید کد را در یک پرونده ذخیره کنید ، تنها پس از آن پرونده را در Illustraor باز کنید ، محتویات را کپی کرده و در سند مورد نظر قرار دهید. بسیاری از اقدامات غیر ضروری است ، نه؟

برای خلاص شدن از این سوء تفاهم ، من یک اسکریپت نوشتم که بطور خودکار یک پرونده ایجاد می کند ، محتویات را در سند شما وارد می کند و سپس آن را حذف می کند. من فیلمنامه همان کار را انجام می دهد ، اما فقط بدون مشارکت ما و نیازی به صرف وقت برای آن نیست.


شرح مختصری از هریک از موارد موجود در فیلمنامه:

  • ساده است - محتویات را در قسمت فیلد قرار دهید و روی "چسباندن" کلیک کنید

گیره پازل


اسکریپت برای ایجاد معماها بر اساس اشیاء.

فیلمنامه گروههایی را با ماسک های برش ایجاد می کند ، عنصری که "اره" خواهد شد کمترین شی از موارد انتخاب شده است. حالت های عملی ، اگر شما یک گروه در بالا و یک شیء در پایین دارید ، سپس تمام عناصر موجود در گروه با یک ماسک قطع کننده و یک شی از پایین قسمت های انتخابی به گروه ها تبدیل می شوند. اسکریپت رابط کاربری ندارد ، فقط عناصر مورد نیاز خود را انتخاب کرده و اسکریپت را اجرا کنید.


ReplaceItems

اسکریپتی برای جایگزینی اشیاء با اصلی ، اشیاء از یک گروه یا از کلیپ بورد.

به عنوان مثال ، شما باید برخی از عناصر را در طرح جایگزین کنید ، اما آنها را برای مدت طولانی با دستان خود تعویض کنید ، می توانید از این اسکریپت برای جایگزینی آن استفاده کنید ، فقط عنصر مورد نیاز خود را انتخاب کنید ، آن را کپی کنید ، سپس اسکریپت را اجرا کنید ، "Object Buffer" را انتخاب کنید.

همچنین اسکریپت می تواند بطور تصادفی هر یک از عناصر را بچرخاند ، اندازه عنصر تعویض شده را بگیرد ، پر کند و همچنین شما نمی توانید عنصر اصلی را حذف کنید.


شرح مختصری از هریک از موارد موجود در فیلمنامه:

  • شی در بافر - شیء در کلیپ بورد است
  • شیء بالا - شیء اولین مورد از لیست انتخاب شده است
  • همه در گروه (تصادفی) - به طور تصادفی یک شیء را از گروه انتخاب می کند
  • زمینه مقیاس - مقیاس عنصر درج شده
  • موارد را در یک گروه جایگزین کنید؟ - آیا موارد جایگزین در گروه هستند؟ (اگر عناصری که نیاز به تعویض دارند در گروه هستند ، این کادر را علامت بزنید ، در غیر این صورت کل گروه جایگزین خواهد شد ، و هر عنصر از گروه نیست)
  • کپی عرض و ارتفاع - مقادیر عرض و ارتفاع را از عنصر جایگزین کپی کنید
  • عنصر اصلی را ذخیره کنید - عنصر جایگزین را ذخیره کنید (حذف نکنید)
  • کپی رنگ ها از عنصر - پر کردن از عنصر جایگزین
  • چرخش عنصر تصادفی - هر عنصر را بطور تصادفی بچرخانید

ایجادArtboardsFromTheSelection

اسکریپتی برای ایجاد تابلوهای هنری بر اساس عناصر انتخاب شده.

اسکریپت بر اساس عناصر انتخاب شده و همچنین برای هر یک از برگزیده ها ، آرشیوی ایجاد می کند.


شرح مختصری از هریک از موارد موجود در فیلمنامه:

  • هرکدام در انتخاب - برای هر یک از مجموعه موارد انتخاب شده ایجاد کنید
  • فقط محدودیت های انتخاب - یک کادر هنری را بر اساس یک انتخاب ایجاد کنید.
  • مرزهای مورد Vsible - مرزهای مورد قابل مشاهده
  • مرزهای هندسی - مرزهای عنصر هندسی

ترانسفورماتورها

یک اسکریپت برای وارد کردن سوییچ های رنگی از یک سند به یک سند فعال.

اسکریپت را اجرا کنید ، یک سند را از لیست انتخاب کنید ، همچنین می توانید کادر را بررسی کنید تا رنگ هایی با همین نام جایگزین شوند.


ArtboardItemsMoveToNewLayer

اسکریپتی که محتویات artboard را بر روی یک لایه جدید قرار می دهد.

اسکریپت را اجرا کنید ، کادرهای هنری را انتخاب کنید ، همچنین می توانید "حذف لایه های خالی و زیر لایه ها" و "نام لایه از نام artboard" را انتخاب کنید.


Adobe Illustrator ابزار و ویژگی های بسیاری دارد ، اما همیشه چیزی برای کاربر پیشرفته وجود نخواهد داشت. بنابراین ، توسعه دهندگان اسکریپت ها و افزونه هایی را ایجاد می کنند که به حل انواع کارها و سرعت بخشیدن به فرآیندهای فشرده سازی کمک می کند. امروز ما مروری بر بهترین اسکریپت های رایگان برای Illustrator را برای شما آماده کرده ایم. لیست آنها با توجه به کارایی سیستماتیک شده و به چندین گروه تقسیم می شود. این کار با مسیرها و نقاط ، انواع مختلف توزیع اشکال ، تولید اشیاء ، کار با پنل لایه ها ، اشیاء متن ، رنگ و غیره انجام می شود.

اسکریپت ها را نصب و اجرا کنید

شما باید اسکریپت را در پوشه های زیر نصب کنید:

برای ویندوز: C: \\ File Files \\ Adobe \\ Adobe Illustrator CC 2014 \\ ایستگاه از پیش تنظیم شده \\ en_GB \\ اسکریپت

برای سیستم عامل مک: برنامه ها / Adobe \\ Adobe Illustrator CC 2014 \\ ایستگاه از پیش تنظیم \\ en_GB \\ اسکریپت

برای اجرای اسکریپت ، به File\u003e Scriptts\u003e ...

همچنین می توانید اسکریپت ها را در هر مکان مناسب دیگری روی هارد دیسک خود قرار دهید. در این حالت ، برای اجرای اسکریپت ، به File\u003e Scriptts\u003e Other Script ... (Cmd / Ctrl + F12) بروید.

اگر غالباً از اسکریپت ها استفاده می کنید ، برای شروع راحت شما مفید خواهید بود. این افزونه رایگان از پنل به شما امکان دسترسی به اسکریپت را می دهد که همیشه می تواند در یک مکان مناسب قرار بگیرد.

حال بیایید لیست اسکریپت ها را که با قابلیت تقسیم شده است نگاه کنیم:

اسکریپت برای کار با مسیرها ، نقاط و دسته

این اسکریپت دسته های نقاط کنترل را می چرخاند و طول آنها را به طور مساوی تغییر می دهد. پس از اجرای اسکریپت ، شما می توانید یکی از پنج نوع دسته را انتخاب کنید ، سپس پارامترها را برای طول و زاویه تنظیم کنید.

این فیلمنامه از شکل های معمولی گل می دهد. عالی برای ایجاد الگوهای جالب ، آرم ها و غیره.

اسکریپت نقاط همپوشانی را حذف می کند و گزارش می دهد که تعداد زیادی حذف شده اند.

اسکریپت مسیرهای باز را در سند فعلی می بندد. مسیرهای لمسی را وصل نمی کند.

اسکریپت مسیر مسیرهای منتخب را مطابق با جهت قسمت بالایی تغییر می دهد. یعنی بعد از اعمال فیلمنامه ، تمام مسیرهای انتخابی یک جهت خواهند داشت.

اسکریپت عالیترین شی را در موقعیت و اندازه سایر اشیاء کپی می کند. توصیف آن دشوار است ، نگاه کردن به تصویر زیر ساده تر است.

اسکریپت های توزیع اشیاء

اسکریپت فرم را با محافل پر می کند.

اسکریپت اشیاء را در همان فاصله در امتداد مسیر انتخاب شده قرار می دهد. می توانید اشیاء موجود در یک یا چند گروه را مجددا توزیع کنید.

اسکریپت شیء بالا را کپی می کند و نسخه ها را در نقاط انتخاب شده قرار می دهد.

اسکریپت اشیاء را به مرکز شیء بالایی می چرخاند.

اسکریپت تمام اشیاء را به موقعیت شیء بالا می چرخاند.

این اسکریپت باعث می شود که مساحت یک شیء بردار مطابق با داده هایی که می توانند به صورت مطلق یا درصد تقسیم شوند ، تقسیم شود.

اسکریپت مطابق با نوع انتخاب شده از پانل ، یک تصویر آینه ایجاد می کند.

اسکریپت هایی که بر اساس اشیاء یا داده های دیگر اشیاء تولید می کنند

فیلمنامه اشکال را به سبک یک متا توپ (ترکیبی از اسم روسی می دانید)؟

اسکریپت مماسهای مشترک (همه ممکن) برای اشیاء انتخاب شده ایجاد می کند.

اسکریپت راهنماهایی را از نقطه انتخاب شده به بخشهای منحنی انتخاب شده ایجاد می کند.

این اسکریپت به شما امکان می دهد تا یک کد QR را در Illustrator تولید کنید.

با استفاده از این اسکریپت ، می توانید فقط با چند کلیک یک شبکه تقویم ایجاد کنید. زبانهای پشتیبانی شده: EN، RU، DE، UA.

اسکریپت ها با یک پارامتر تصادفی

اسکریپت اشیاء را به ترتیب تصادفی با توجه به عدد مشخص شده انتخاب می کند.

اسکریپت RandomSwatchesFill به طور تصادفی اشیاء انتخاب شده را در رنگ های انتخاب شده در پالت Swatches رنگ می کند.

اسکریپت RandOpacity شفافیت اشیاء انتخاب شده را بطور تصادفی در محدوده 0٪ تا 100٪ شفافیت اصلی اشیاء تغییر می دهد.

اسکریپت زاویه شیب خطی کلیه اشیاء انتخاب شده را به ترتیب تصادفی تغییر می دهد.

اسکریپت Random Order به شما امکان می دهد اشیاء را به صورت تصادفی در پنل Layers توزیع کنید. من هنگام نوشتن از این فیلمنامه استفاده کردم

اسکریپت برای کار در پانل Layers

اسکریپت تمام لایه های خالی موجود در سند فعلی را حذف می کند.

شما یک فرصت منحصر به فرد برای گسترش قابلیت های Adobe Illustrator دارید. هیچ چیز ساده تر از استفاده از اسکریپت ها (فایل های اسکریپت) وجود ندارد ، فقط شی را انتخاب کرده و اسکریپت مورد نیاز خود را اجرا کنید. اسکریپت های ارائه شده در این مقاله باعث صرفه جویی در وقت شما می شود ، کار شما را لذت بخش تر و کارآمد تر می کند. باور کنید ، آنها ارزش توجه شما را دارند. تمام اسکریپت ها در نسخه های Illustrator CS3 و CS4 مورد آزمایش قرار گرفتند.

اگر به افزونه های Illustrator با کیفیت عالی نیاز دارید ، می توانید آنها را در بخش Actions and Scriptts Illustrator از منابع GraphicRiver ما ، مانند: Isometric Guides Grid Action ، Pattern Maker و Long پیدا کنید. عمل سایه.

   بهترین اقدامات (عملیات) و اسکریپت ها برای Illustrator در رودخانه Graphic.

در غیر این صورت ، از "چیزهای خوب" که اکنون به شما خواهیم گفت ، استفاده کنید. اما ابتدا بیایید ببینیم چگونه اسکریپت ها را برای Illustrator نصب کنید.

نصب اسکریپت

توصیه می شود همیشه اسکریپت هایی را که می خواهید در همان مکان استفاده کنید ، مثلاً در فهرست اسکریپت ها ذخیره کنید. برای اجرای اسکریپت ، به File\u003e Scriptts\u003e Another Script (Command + F12) (پرونده\u003e اسکریپت ها\u003e سایر اسکریپت ها) بروید.

دایرکتوری را با اسکریپت ها باز کنید و پرونده مورد نظر را اجرا کنید.

این را به اشتراک بگذارید