نقاشی gui.paint
نقاش دوبعدی تماما سلام برای جعبههای CSS: مستطیل گرد، کادر، گرادیان، سایه، تصویر، مسیر، برش و لایه، با پیکسلهای یکسان روی همهی سیستمها.
واردسازی رابط گرافیکی.نقاشی
نام آرگومانها شناسهی خود کد است و معادل فارسی ندارد؛ گونهها، کلیدواژهها و نام بستهها با معادل فارسی نوشته میشوند.
این بسته لایهی کشیدن رابط کاربری بومی است: هر چیزی که یک جعبهی CSS میتواند نشان دهد را، تماما با سلام، در یک بافر پیکسل میکشد و روی همهی سیستمعاملها پیکسلهای یکسان میدهد. یک بوم پیکسلهای ۳۲ بیتی پیشضربشده (0xAARRGGBB، یعنی بایتهای B، G، R، A در حافظه) نگه میدارد که پنجرههای X11، Win32، Cocoa و Wayland بدون کپی نشانش میدهند. رنگها در رابط برنامهنویسی همان RGBA مستقیم CSS هستند.
جعبه به ترتیب CSS کشیده میشود: رسم سایه، سپس پسزمینه با پرکردن مستطیل گرد، پرکردن گرادیان یا رسم تصویر، سپس رسم کادر، محتوا و رسم دورخط. هر گوشهی گرد یک شعاع افقی و یک شعاع عمودی دارد و اگر جا نشود مانند CSS کوچک میشود. لبهها با پوشش دقیقی که خط به خط با ممیز ثابت حساب میشود نرم کشیده میشوند، هر ضلع کادر پهنا، رنگ و سبک (توپر، خطچین، نقطهچین) خودش را دارد و سایهها تاری گاوسی هستند که به صورت تحلیلی، بیرون یا درون جعبه، حساب میشوند.
برشها (افزودن برش، افزودن برش گرد)، تبدیلها و لایههای بیرون از صفحه با کدری گروهی (آغاز لایه، ادغام لایه) پشته هستند. تنظیم ناحیه کشیدن را به یک ناحیهی آسیب با حداکثر سه مستطیل محدود میکند و کشیدن یک صحنه تکه به تکه دقیقا همان پیکسلهای کشیدن یکجای آن را میدهد. پرکردن مسیر و خط کشی مسیر مسیرهای برداری با خط، منحنی، کمان، سرخط، اتصال و خطچین را میکشند و رسم ماسک گلیفهای متن را از یک ماسک پوشش میکشد.
نکتهها
- مختصات بر حسب پیکسل منطقی و از نوع
اعشار۶۴است. لبههای کسری نرم کشیده میشوند؛ تصویرها، برشها و لایهها روی پیکسل کامل مینشینند. - رسم فقط با عدد صحیح و ممیز ثابت است، پس قرار است یک تصویر روی همهی سیستمها و پشتیبانها چکیدهی یکسان داشته باشد. آزمونها
چکیده()و چند پیکسل را مقایسه میکنند. - هر فرمان کشیدن کل تبدیل، از جمله چرخش و کجی، را دنبال میکند. کادر، گرادیان، سایه و تصویر کاشیشده زیر چرخش یا کجی، راست در یک لایهی کمکی کشیده و سپس بازنمونهبرداری میشوند، و برش زیر چرخش به یک ماسک پوشش تبدیل میشود.
- ضلع خطچین و نقطهچین روی گوشههای گردش هم الگو میگیرد و فاصلهها طوری تنظیم میشود که هر گوشه یک خط یا نقطهی کامل بگیرد.
- پالایهها روی لایه کار میکنند:
آغاز لایه پالایهوادغام لایه با پالایههمانfilterدر CSS است وپالایه پس زمینههمانbackdrop-filter، که روی پسزمینهی مات، نیمهشفاف و تودرتو با Chromium مقایسه شده است. پالایههای رنگ مانند مرورگرها روی رنگ مستقیم در sRGB کار میکنند و تاری، چنانکه مشخصهی پالایهها میگوید، از سه تاری جعبهای ساخته میشود. رسم نه برشتصویری را نهتکه دور یک مستطیل میکشد، همانگونه کهborder-imageدر CSS، با لبههای کشیده، تکراری، گردشده یا فاصلهدار.- هر بوم، مسیر و گرادیانی که میسازید را آزاد کنید. بومی که از
بوم روی حافظهیازیربوممیآید هم برای حافظهی کمکیاشرهاسازیلازم دارد، ولی به پیکسلها دست نمیزند. - محک
tools/bench/paint_frame.salamدویست جعبهی گرد با سایه، پسزمینه و کادر را روی یک گرادیان تمام صفحه در ۱۹۲۰ در ۱۰۸۰ میکشد.
کشیدن یک جعبهی CSS
جعبه به ترتیب CSS کشیده میشود: نخست سایه، سپس پسزمینه، سپس کادر و در پایان دورخط. همهی آنها یک مستطیل و یک شعاع را میگیرند، پس سایه، گرادیان و کادر دقیقا روی هم مینشینند. سایهی بیرونی زیر جعبه بریده میشود تا پسزمینهی نیمهشفاف آن را نشان ندهد.
// زبان: فارسی
واردسازی رابط گرافیکی.نقاشی
تابع ریشه:
ناپایا بوم۱ := نقاشی.بوم تازه(۱۶۰، ۱۰۰)
بوم۱.پاک کردن(نقاشی.رنگ از سه مولفه(۲۴۰، ۲۴۲، ۲۴۷))
جعبه := نقاشی.مستطیل از(۲۰.۰، ۲۰.۰، ۱۲۰.۰، ۶۰.۰)
شعاع ها := نقاشی.شعاع گوشه ها(۱۶.۰، ۱۶.۰، ۴.۰، ۴.۰)
بوم۱.رسم سایه(جعبه، شعاع ها، نقاشی.سایه { جابجایی ایگرگ = ۴.۰، تاری = ۱۲.۰، رنگ = نقاشی.رنگ از چهار مولفه(۲۰، ۳۰، ۶۰، ۸۰) })
ناپایا پس زمینه := نقاشی.گرادیان خطی(۱۸۰.۰)
پس زمینه.افزودن ایست(۰.۰، نقاشی.رنگ از سه مولفه(۲۵۵، ۲۵۵، ۲۵۵))
پس زمینه.افزودن ایست(۱.۰، نقاشی.رنگ از سه مولفه(۲۲۶، ۲۳۴، ۲۵۲))
بوم۱.پرکردن گرادیان(جعبه، شعاع ها، پس زمینه)
پس زمینه.رهاسازی()
بوم۱.رسم کادر(جعبه، شعاع ها، نقاشی.کادر توپر(۱.۵، نقاشی.رنگ از سه مولفه(۱۵۰، ۱۷۰، ۲۲۰)))
بوم۱.رسم دورخط(جعبه، شعاع ها، ۲.۰، ۲.۰، نقاشی.رنگ از چهار مولفه(۶۰، ۱۱۰، ۲۳۰، ۱۶۰))
بالا۱ := بوم۱.پیکسل(۸۰، ۲۴)
پایین۱ := بوم۱.پیکسل(۸۰، ۷۵)
سرچاپ "بالای کارت:"، بالا۱.قرمز، بالا۱.سبز، بالا۱.آبی
سرچاپ "پایین کارت:"، پایین۱.قرمز، پایین۱.سبز، پایین۱.آبی
سرچاپ "چکیده:"، بوم۱.چکیده()
بوم۱.رهاسازی()
پایانکشیدن دوبارهی فقط بخش تغییرکرده
وقتی چیزی جابجا میشود، فقط جای قبلی و جای تازهاش باید دوباره کشیده شود. هر دو مستطیل را در یک ناحیه بگذارید، آن را با تنظیم ناحیه روی بوم بنشانید و کل صحنه را مثل همیشه بکشید: بیرون ناحیه دست نمیخورد. پوشش برای کل شکل حساب و سپس بریده میشود، پس نتیجه پیکسل به پیکسل همان کشیدن دوبارهی همه چیز است.
// زبان: فارسی
واردسازی رابط گرافیکی.نقاشی
تابع بکش(بوم۱ &: نقاشی.بوم، ایکس۱: اعشار۶۴):
بوم۱.پاک کردن(نقاشی.رنگ از سه مولفه(۲۵۵، ۲۵۵، ۲۵۵))
بوم۱.پرکردن مستطیل گرد(نقاشی.مستطیل از(ایکس۱، ۱۰.۰، ۳۰.۰، ۳۰.۰)، نقاشی.شعاع یکسان(۸.۰)، نقاشی.رنگ از سه مولفه(۲۳۰، ۸۰، ۴۰))
پایان
تابع ریشه:
ناپایا صفحه۱ := نقاشی.بوم تازه(۱۰۰، ۵۰)
بکش(صفحه۱، ۱۰.۰)
ناپایا آسیب := نقاشی.ناحیه {}
آسیب.افزودن(نقاشی.مستطیل پیکسلی از(۱۰، ۱۰، ۳۰، ۳۰))
آسیب.افزودن(نقاشی.مستطیل پیکسلی از(۵۰، ۱۰، ۳۰، ۳۰))
صفحه۱.تنظیم ناحیه(آسیب)
بکش(صفحه۱، ۵۰.۰)
صفحه۱.حذف ناحیه()
ناپایا تازه۱ := نقاشی.بوم تازه(۱۰۰، ۵۰)
بکش(تازه۱، ۵۰.۰)
سرچاپ "مستطیل های بازکشیده:"، آسیب.شمار()
سرچاپ "همانند بازکشیدن کامل:"، صفحه۱.چکیده() برابر تازه۱.چکیده()
تازه۱.رهاسازی()
صفحه۱.رهاسازی()
پایانگونهها
سبککادر BorderStyle
جداشمار سبککادر| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| هیچ | None | | این ضلع خطی ندارد. |
| توپر | Solid | | خط توپر. |
| خطچین | Dashed | | خطچین همانگونه که Chromium میکشد: وقتی ضلع ۳ پیکسل یا پهنتر است، تکهها دو برابر پهنای ضلع و فاصلهها هماندازهی پهنای ضلعاند، و برای ضلع نازکتر تکهها سه برابر و فاصلهها دو برابر پهنا. فاصله کمی کش میآید یا کوتاه میشود تا هر دو سر ضلع یک تکهی کامل داشته باشند. |
| نقطهچین | Dotted | | نقطههای گرد به پهنای ضلع، با فاصلهای که هر دو سر ضلع یک نقطه داشته باشند. روی ضلعهای صاف نقطهها روی پیکسل کامل مینشینند تا خط نقطهچین نازک تیز بماند. |
// زبان: فارسی
واردسازی رابط گرافیکی.نقاشی
تابع ریشه:
ناپایا بوم۱ := نقاشی.بوم تازه(۱۲۰، ۸۰)
بوم۱.پاک کردن(نقاشی.رنگ از سه مولفه(۲۴۵، ۲۴۶، ۲۵۰))
کارت := نقاشی.مستطیل از(۲۰.۰، ۱۵.۰، ۸۰.۰، ۵۰.۰)
شعاع ها := نقاشی.شعاع یکسان(۱۰.۰)
بوم۱.رسم سایه(کارت، شعاع ها، نقاشی.سایه { جابجایی ایگرگ = ۳.۰، تاری = ۸.۰، رنگ = نقاشی.رنگ از چهار مولفه(۰، ۰، ۰، ۹۰) })
بوم۱.پرکردن مستطیل گرد(کارت، شعاع ها، نقاشی.رنگ از سه مولفه(۲۵۵، ۲۵۵، ۲۵۵))
ناپایا کادر۱ := نقاشی.کادر توپر(۲.۰، نقاشی.رنگ از سه مولفه(۶۰، ۱۱۰، ۲۲۰))
کادر۱.پهنای چپ = ۶.۰
کادر۱.رنگ چپ = نقاشی.رنگ از سه مولفه(۲۳۰، ۸۰، ۴۰)
بوم۱.رسم کادر(کارت، شعاع ها، کادر۱)
بوم۱.رسم دورخط(کارت، شعاع ها، ۱.۰، ۳.۰، نقاشی.رنگ از چهار مولفه(۶۰، ۱۱۰، ۲۲۰، ۱۲۰))
رنگ۱ := بوم۱.پیکسل(۶۰، ۴۰)
سرچاپ "درون:"، رنگ۱.قرمز، رنگ۱.سبز، رنگ۱.آبی
رنگ۲ := بوم۱.پیکسل(۲۲، ۴۰)
سرچاپ "کادر چپ:"، رنگ۲.قرمز، رنگ۲.سبز، رنگ۲.آبی
سرچاپ "چکیده:"، بوم۱.چکیده()
بوم۱.رهاسازی()
پایاننوعگرادیان GradientKind
جداشمار نوعگرادیان| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| خطی | Linear | | رنگها در امتداد یک خط عوض میشوند، مانند linear-gradient در CSS. |
| شعاعی | Radial | | رنگها از یک مرکز به بیرون در یک بیضی عوض میشوند، مانند radial-gradient در CSS. |
| مخروطی | Conic | | رنگها دور یک مرکز عوض میشوند، مانند conic-gradient در CSS. |
// زبان: فارسی
واردسازی رابط گرافیکی.نقاشی
تابع ریشه:
ناپایا بوم۱ := نقاشی.بوم تازه(۱۲۰، ۴۰)
ناپایا آسمان := نقاشی.گرادیان خطی(۹۰.۰)
آسمان.افزودن ایست(۰.۰، نقاشی.رنگ از سه مولفه(۲۵۵، ۱۲۰، ۰))
آسمان.افزودن ایست(-۱.۰، نقاشی.رنگ از سه مولفه(۲۵۵، ۰، ۱۲۰))
آسمان.افزودن ایست(۱.۰، نقاشی.رنگ از سه مولفه(۶۰، ۰، ۲۰۰))
بوم۱.پرکردن گرادیان(نقاشی.مستطیل از(۰.۰، ۰.۰، ۶۰.۰، ۴۰.۰)، نقاشی.شعاع گوشه ها(۱۲.۰، ۰.۰، ۰.۰، ۱۲.۰)، آسمان)
آسمان.رهاسازی()
اندازه۱ := نقاشی.شعاع گرادیان شعاعی(۶۰.۰، ۴۰.۰، ۳۰.۰، ۲۰.۰، درست، نقاشی.گسترهشعاعی.نزدیکترین ضلع)
ناپایا درخشش := نقاشی.گرادیان شعاعی(۳۰.۰، ۲۰.۰، اندازه۱.ایکس، اندازه۱.ایگرگ)
درخشش.افزودن ایست(۰.۰، نقاشی.رنگ از سه مولفه(۲۵۵، ۲۵۵، ۲۵۵))
درخشش.افزودن ایست(۱.۰، نقاشی.رنگ از چهار مولفه(۰، ۱۶۰، ۱۲۰، ۲۵۵))
بوم۱.پرکردن گرادیان(نقاشی.مستطیل از(۶۰.۰، ۰.۰، ۶۰.۰، ۴۰.۰)، نقاشی.شعاع یکسان(۰.۰)، درخشش)
درخشش.رهاسازی()
سرچاپ "شعاع:"، اندازه۱.ایکس
چپ۱ := بوم۱.پیکسل(۲، ۲۰)
راست۱ := بوم۱.پیکسل(۵۷، ۲۰)
سرچاپ "چپ:"، چپ۱.قرمز، چپ۱.سبز، چپ۱.آبی
سرچاپ "راست:"، راست۱.قرمز، راست۱.سبز، راست۱.آبی
سرچاپ "مرکز:"، بوم۱.پیکسل(۹۰، ۲۰).قرمز
بوم۱.رهاسازی()
پایانگسترهشعاعی RadialExtent
جداشمار گسترهشعاعیشعاع گرادیان شعاعی به کار میبرد.| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| نزدیکترین ضلع | ClosestSide | | شکل پایانی به نزدیکترین ضلع به مرکز میرسد. |
| دورترین ضلع | FarthestSide | | شکل پایانی به دورترین ضلع از مرکز میرسد. |
| نزدیکترین گوشه | ClosestCorner | | شکل پایانی از نزدیکترین گوشه میگذرد. |
| دورترین گوشه | FarthestCorner | | شکل پایانی از دورترین گوشه میگذرد (پیشفرض CSS). |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
برازش ObjectFit
جداشمار برازشobject-fit در CSS که برازش تصویر به کار میبرد.| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| پرکردن | Fill | | تصویر تا اندازهی جعبه کشیده میشود. |
| جاگیری کامل | Contain | | تصویر با حفظ نسبت، کامل درون جعبه جا میگیرد. |
| پوشش | Cover | | تصویر با حفظ نسبت، همهی جعبه را میپوشاند. |
| هیچ | None | | اندازهی طبیعی تصویر حفظ میشود. |
| کوچک سازی | ScaleDown | | مانند جاگیری کامل، ولی هرگز بزرگتر از اندازهی طبیعی نمیشود. |
// زبان: فارسی
واردسازی رابط گرافیکی.نقاشی
واردسازی سیستم عامل
واردسازی مسیر پرونده
تابع ریشه:
ناپایا کاشی := نقاشی.بوم تازه(۲، ۲)
کاشی.پاک کردن(نقاشی.رنگ از سه مولفه(۲۳۰، ۲۳۰، ۲۳۰))
کاشی.پرکردن مستطیل(نقاشی.مستطیل از(۰.۰، ۰.۰، ۱.۰، ۱.۰)، نقاشی.رنگ از سه مولفه(۹۰، ۹۰، ۹۰))
کاشی.پرکردن مستطیل(نقاشی.مستطیل از(۱.۰، ۱.۰، ۱.۰، ۱.۰)، نقاشی.رنگ از سه مولفه(۹۰، ۹۰، ۹۰))
ناپایا بوم۱ := نقاشی.بوم تازه(۸۰، ۶۰)
بوم۱.رسم تصویر کاشی(کاشی، نقاشی.مستطیل از(۰.۰، ۰.۰، ۸۰.۰، ۶۰.۰)، نقاشی.مستطیل از(۰.۰، ۰.۰، ۸.۰، ۸.۰)، ۱.۰)
عکس := نقاشی.برازش تصویر(نقاشی.برازش.جاگیری کامل، ۴، ۲، نقاشی.مستطیل از(۱۰.۰، ۱۰.۰، ۶۰.۰، ۴۰.۰)، ۰.۵، ۰.۵)
سرچاپ "جای عکس:"، عکس.ایکس، عکس.ایگرگ، عکس.پهنا، عکس.بلندی
بوم۱.افزودن برش گرد(عکس، نقاشی.شعاع یکسان(۶.۰))
بوم۱.آغاز لایه(عکس)
بوم۱.پرکردن مستطیل(عکس، نقاشی.رنگ از سه مولفه(۰، ۱۲۰، ۲۵۵))
بوم۱.پرکردن مستطیل(نقاشی.مستطیل از(۳۰.۰، ۲۰.۰، ۲۰.۰، ۲۰.۰)، نقاشی.رنگ از سه مولفه(۲۵۵، ۶۰، ۶۰))
بوم۱.ادغام لایه(۰.۸)
بوم۱.برداشتن برش()
مسیر۱ := مسیر پرونده.پیوند(سیستم عامل.پوشه موقت()، "salam_paint_example_fa.png")
سرچاپ "ذخیره شد:"، نقاشی.ذخیره پی ان جی(بوم۱، مسیر۱)
ناپایا موفق := نادرست
ناپایا برگشتی := نقاشی.خواندن پی ان جی(مسیر۱، موفق)
سرچاپ "خوانده شد:"، موفق، برگشتی.پهنا، برگشتی.بلندی، برگشتی.چکیده() برابر بوم۱.چکیده()
سیستم عامل.حذف(مسیر۱)
برگشتی.رهاسازی()
کاشی.رهاسازی()
بوم۱.رهاسازی()
پایانقانونپرکردن FillRule
جداشمار قانونپرکردن| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| ناصفر | NonZero | | جایی درون است که عدد پیچش صفر نباشد. |
| زوج فرد | EvenOdd | | جایی درون است که پرتویی از آن، مرز را به تعداد فرد قطع کند. |
// زبان: فارسی
واردسازی رابط گرافیکی.نقاشی
تابع ریشه:
ناپایا بوم۱ := نقاشی.بوم تازه(۱۰۰، ۶۰)
بوم۱.پاک کردن(نقاشی.رنگ از سه مولفه(۲۵۵، ۲۵۵، ۲۵۵))
ناپایا ستاره := نقاشی.مسیر تازه()
ستاره.حرکت به(۳۰.۰، ۵.۰)
ستاره.خط به(۴۲.۰، ۵۲.۰)
ستاره.خط به(۵.۰، ۲۲.۰)
ستاره.خط به(۵۵.۰، ۲۲.۰)
ستاره.خط به(۱۸.۰، ۵۲.۰)
ستاره.بستن مسیر()
بوم۱.پرکردن مسیر(ستاره، نقاشی.قانونپرکردن.زوج فرد، نقاشی.رنگ از سه مولفه(۲۵۰، ۱۹۰، ۰))
بوم۱.خط کشی مسیر(ستاره، نقاشی.قلم { پهنا = ۲.۰، اتصال = نقاشی.اتصالخط.گرد }، نقاشی.رنگ از سه مولفه(۱۲۰، ۶۰، ۰))
ستاره.رهاسازی()
ناپایا موج := نقاشی.مسیر تازه()
موج.حرکت به(۰.۰، ۰.۰)
موج.منحنی درجه سه به(۱۰.۰، -۱۵.۰، ۲۰.۰، ۱۵.۰، ۳۰.۰، ۰.۰)
بوم۱.جابجا کردن(۶۲.۰، ۳۰.۰)
بوم۱.خط کشی مسیر(موج، نقاشی.قلم { پهنا = ۳.۰، سرخط = نقاشی.سرخط.گرد، خط چین = ۶.۰، فاصله خط چین = ۴.۰ }، نقاشی.رنگ از سه مولفه(۰، ۱۰۰، ۲۰۰))
بوم۱.برداشتن تبدیل()
موج.رهاسازی()
سرچاپ "وسط ستاره خالی است:"، بوم۱.پیکسل(۳۰، ۳۰).آبی برابر ۲۵۵
سرچاپ "نوک ستاره:"، بوم۱.پیکسل(۳۰، ۱۲).سبز
سرچاپ "چکیده:"، بوم۱.چکیده()
بوم۱.رهاسازی()
پایانسرخط LineCap
جداشمار سرخط| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| صاف | Butt | | خط در نقطهی پایانی تمام میشود. |
| گرد | Round | | یک نیمدایره پس از نقطهی پایانی. |
| مربعی | Square | | یک نیممربع پس از نقطهی پایانی. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
اتصالخط LineJoin
جداشمار اتصالخط| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| تیز | Miter | | گوشهی تیز که پس از حد تیزی پخ میشود. |
| گرد | Round | | گوشهی گرد. |
| پخ | Bevel | | گوشهی پخ. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
نوعپالایه FilterKind
جداشمار نوعپالایهپالایه به کار میبرد.| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| تار کردن | Blur | | تاری گاوسی؛ اندازه پالایه انحراف معیار است، مانند blur() در CSS. |
| روشنایی | Brightness | | کانالهای رنگ را در اندازه پالایه ضرب میکند. |
| تضاد | Contrast | | کانالها را به اندازهی اندازه پالایه از خاکستری میانه دور یا به آن نزدیک میکند. |
| خاکستری | Grayscale | | رنگها را خاکستری میکند؛ ۱ یعنی کاملا خاکستری. |
| قهوه ای کهنه | Sepia | | رنگها را قهوهای کهنه میکند؛ ۱ یعنی کامل. |
| اشباع | Saturate | | اشباع را تغییر میدهد؛ ۰ خاکستری است و ۱ رنگها را دست نمیزند. |
| چرخش فام | HueRotate | | فام را به اندازهی اندازه پالایه درجه میچرخاند. |
| وارون رنگ | Invert | | رنگها را وارون میکند؛ ۱ یعنی کاملا وارون. |
| ماتی | Opacity | | آلفا را در اندازه پالایه ضرب میکند. |
| سایه افتاده | DropShadow | | رونوشتی تار و جابجاشده از شکل که زیر آن کشیده میشود، مانند drop-shadow() در CSS. |
// زبان: فارسی
واردسازی رابط گرافیکی.نقاشی
تابع ریشه:
ناپایا بوم۱ := نقاشی.بوم تازه(۱۲۰، ۶۰)
بوم۱.پاک کردن(نقاشی.رنگ از سه مولفه(۲۵۵، ۲۵۵، ۲۵۵))
تکرار ۶ در ای:
بوم۱.پرکردن مستطیل(نقاشی.مستطیل از((ای * ۲۰) برگردان اعشار۶۴، ۰.۰، ۱۰.۰، ۶۰.۰)، نقاشی.رنگ از سه مولفه(۳۰، ۳۰، ۳۰))
پایان
ناپایا شیشه := نقاشی.زنجیرهپالایه {}
شیشه.افزودن پالایه(نقاشی.پالایه تازه(نقاشی.نوعپالایه.تار کردن، ۳.۰))
شیشه.افزودن پالایه(نقاشی.پالایه تازه(نقاشی.نوعپالایه.روشنایی، ۱.۳))
بوم۱.پالایه پس زمینه(نقاشی.مستطیل از(۴.۰، ۴.۰، ۵۰.۰، ۳۰.۰)، نقاشی.شعاع یکسان(۶.۰)، شیشه)
شیشه.رهاسازی()
ناپایا نما := نقاشی.زنجیرهپالایه {}
نما.افزودن پالایه(نقاشی.پالایه تازه(نقاشی.نوعپالایه.قهوه ای کهنه، ۱.۰))
نما.افزودن پالایه(نقاشی.پالایه سایه افتاده(۳.۰، ۳.۰، ۲.۰، نقاشی.رنگ از چهار مولفه(۰، ۰، ۰، ۱۶۰)))
سرچاپ "فضای دور لایه:"، نما.گستره پالایه()، "خالی:"، نما.خالی است()
کاشی := نقاشی.مستطیل از(۷۰.۰، ۱۰.۰، ۳۰.۰، ۳۰.۰)
بوم۱.آغاز لایه پالایه(کاشی، نما)
بوم۱.پرکردن مستطیل گرد(کاشی، نقاشی.شعاع یکسان(۶.۰)، نقاشی.رنگ از سه مولفه(۴۰، ۱۲۰، ۲۲۰))
بوم۱.ادغام لایه با پالایه(نما، ۱.۰)
نما.رهاسازی()
سرچاپ "شیشهی مات خاکستری است:"، بوم۱.پیکسل(۱۴، ۲۰).قرمز > ۶۰
سرچاپ "کاشی قهوهای کهنه:"، بوم۱.پیکسل(۸۵، ۲۵).قرمز > بوم۱.پیکسل(۸۵، ۲۵).آبی
سرچاپ "چکیده:"، بوم۱.چکیده()
بوم۱.رهاسازی()
پایانرنگ Color
ساختار رنگ| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| قرمز | r | صحیح = 0 | قرمز، ۰ تا ۲۵۵. |
| سبز | g | صحیح = 0 | سبز، ۰ تا ۲۵۵. |
| آبی | b | صحیح = 0 | آبی، ۰ تا ۲۵۵. |
| آلفا | a | صحیح = 255 | آلفا (کدری)، ۰ تا ۲۵۵. پیشفرض ۲۵۵ است. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
نقطه Point
ساختار نقطه| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| ایکس | x | اعشار۶۴ = 0 | مختصات افقی. |
| ایگرگ | y | اعشار۶۴ = 0 | مختصات عمودی. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
مستطیل Rect
ساختار مستطیل| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| ایکس | x | اعشار۶۴ = 0 | لبهی چپ. |
| ایگرگ | y | اعشار۶۴ = 0 | لبهی بالا. |
| پهنا | width | اعشار۶۴ = 0 | پهنا. |
| بلندی | height | اعشار۶۴ = 0 | بلندی. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
مستطیلپیکسلی IntRect
ساختار مستطیلپیکسلی| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| ایکس | x | صحیح = 0 | ستون چپ. |
| ایگرگ | y | صحیح = 0 | ردیف بالا. |
| پهنا | width | صحیح = 0 | شمار ستونها. |
| بلندی | height | صحیح = 0 | شمار ردیفها. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
شعاعها Radii
ساختار شعاعهاborder-radius در CSS.| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| افقی بالا چپ | top_left_x | اعشار۶۴ = 0 | شعاع افقی گوشهی بالا چپ. |
| عمودی بالا چپ | top_left_y | اعشار۶۴ = 0 | شعاع عمودی گوشهی بالا چپ. |
| افقی بالا راست | top_right_x | اعشار۶۴ = 0 | شعاع افقی گوشهی بالا راست. |
| عمودی بالا راست | top_right_y | اعشار۶۴ = 0 | شعاع عمودی گوشهی بالا راست. |
| افقی پایین راست | bottom_right_x | اعشار۶۴ = 0 | شعاع افقی گوشهی پایین راست. |
| عمودی پایین راست | bottom_right_y | اعشار۶۴ = 0 | شعاع عمودی گوشهی پایین راست. |
| افقی پایین چپ | bottom_left_x | اعشار۶۴ = 0 | شعاع افقی گوشهی پایین چپ. |
| عمودی پایین چپ | bottom_left_y | اعشار۶۴ = 0 | شعاع عمودی گوشهی پایین چپ. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
کادر Border
ساختار کادر| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| پهنای بالا | top_width | اعشار۶۴ = 0 | پهنای ضلع بالا. |
| پهنای راست | right_width | اعشار۶۴ = 0 | پهنای ضلع راست. |
| پهنای پایین | bottom_width | اعشار۶۴ = 0 | پهنای ضلع پایین. |
| پهنای چپ | left_width | اعشار۶۴ = 0 | پهنای ضلع چپ. |
| رنگ بالا | top_color | رنگ | رنگ ضلع بالا. |
| رنگ راست | right_color | رنگ | رنگ ضلع راست. |
| رنگ پایین | bottom_color | رنگ | رنگ ضلع پایین. |
| رنگ چپ | left_color | رنگ | رنگ ضلع چپ. |
| سبک بالا | top_style | سبککادر | سبک ضلع بالا. پیشفرض توپر است. |
| سبک راست | right_style | سبککادر | سبک ضلع راست. |
| سبک پایین | bottom_style | سبککادر | سبک ضلع پایین. |
| سبک چپ | left_style | سبککادر | سبک ضلع چپ. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
ایستگرادیان GradientStop
ساختار ایستگرادیان| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| جایگاه | pos | اعشار۶۴ = -1 | جایگاه از ۰ تا ۱ در امتداد گرادیان. مقدار منفی یعنی خودکار، مانند CSS به طور یکنواخت میان همسایهها پخش میشود. |
| رنگ | color | رنگ | رنگ در این ایست. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
گرادیان Gradient
ساختار گرادیان| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| نوع | kind | نوعگرادیان | خطی، شعاعی یا مخروطی. |
| زاویه | angle | اعشار۶۴ = 180 | برای خطی: زاویهی CSS به درجه (۰ رو به بالا، ۹۰ راست، ۱۸۰ پایین). برای مخروطی: زاویهی آغاز. |
| مرکز ایکس | cx | اعشار۶۴ = 0 | مرکز افقی گرادیان شعاعی یا مخروطی، از لبهی چپ مستطیل پرشده. |
| مرکز ایگرگ | cy | اعشار۶۴ = 0 | مرکز عمودی گرادیان شعاعی یا مخروطی، از لبهی بالای مستطیل پرشده. |
| شعاع ایکس | rx | اعشار۶۴ = 0 | شعاع افقی گرادیان شعاعی. |
| شعاع ایگرگ | ry | اعشار۶۴ = 0 | شعاع عمودی گرادیان شعاعی. |
| پیاپی | repeating | منطقی = نادرست | ایستها تکرار شوند، مانند repeating-linear-gradient. |
| ایست ها | stops | وکتور<ایستگرادیان> | ایستهای رنگ به ترتیب. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
افزودن ایست AddStop
تابع افزودن ایست(pos: اعشار۶۴، color: رنگ)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
رهاسازی Free
تابع رهاسازی()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
سایه Shadow
ساختار سایهbox-shadow در CSS.| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| جابجایی ایکس | offset_x | اعشار۶۴ = 0 | جابجایی افقی. |
| جابجایی ایگرگ | offset_y | اعشار۶۴ = 0 | جابجایی عمودی. |
| تاری | blur | اعشار۶۴ = 0 | شعاع تاری. تاری گاوسی با انحراف معیار نصف این مقدار است، مانند CSS. |
| گسترش | spread | اعشار۶۴ = 0 | شکل سایه را پیش از تار شدن بزرگ (یا با مقدار منفی کوچک) میکند. |
| رنگ | color | رنگ | رنگ سایه. |
| درونی | inset | منطقی = نادرست | سایهی درونی که به جای دور جعبه، درون آن کشیده میشود. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
ماسک Mask
ساختار ماسک| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| داده | data | تهی* | بایتهای پوشش، یکی برای هر پیکسل، ردیف به ردیف. |
| پهنا | width | صحیح = 0 | پهنا بر حسب پیکسل. |
| بلندی | height | صحیح = 0 | بلندی بر حسب پیکسل. |
| گام ردیف | stride | صحیح = 0 | شمار بایتها از یک ردیف تا ردیف بعد. |
| فاصله چپ | left | صحیح = 0 | برای گلیف: فاصلهی جای قلم تا لبهی چپ ماسک. |
| فاصله بالا | top | صحیح = 0 | برای گلیف: فاصلهی خط پایه تا بالای ماسک. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
ماتریستبدیل Transform
ساختار ماتریستبدیل| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| مولفه آ | a | اعشار۶۴ = 1 | بخش مقیاس افقی. |
| مولفه ب | b | اعشار۶۴ = 0 | بخش برش عمودی. |
| مولفه ث | c | اعشار۶۴ = 0 | بخش برش افقی. |
| مولفه د | d | اعشار۶۴ = 1 | بخش مقیاس عمودی. |
| مولفه ه | e | اعشار۶۴ = 0 | جابجایی افقی. |
| مولفه ف | f | اعشار۶۴ = 0 | جابجایی عمودی. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
سپس Then
تابع سپس(o: ماتریستبدیل): ماتریستبدیلنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
اعمال روی نقطه Apply
تابع اعمال روی نقطه(p: نقطه): نقطهنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
وارون تبدیل Invert
تابع وارون تبدیل(): ماتریستبدیل// زبان: فارسی
واردسازی رابط گرافیکی.نقاشی
تابع ریشه:
ناپایا بوم۱ := نقاشی.بوم تازه(۱۲۰، ۸۰)
بوم۱.پاک کردن(نقاشی.رنگ از سه مولفه(۲۵۵، ۲۵۵، ۲۵۵))
چرخش := نقاشی.تبدیل جابجایی(-۳۰.۰، -۲۰.۰).سپس(نقاشی.تبدیل چرخش(۲۰.۰)).سپس(نقاشی.تبدیل کجی(۱۰.۰، ۰.۰)).سپس(نقاشی.تبدیل جابجایی(۴۵.۰، ۴۰.۰))
بوم۱.افزودن تبدیل(چرخش)
کارت := نقاشی.مستطیل از(۰.۰، ۰.۰، ۶۰.۰، ۴۰.۰)
بوم۱.رسم سایه(کارت، نقاشی.شعاع یکسان(۸.۰)، نقاشی.سایه { جابجایی ایگرگ = ۳.۰، تاری = ۶.۰، رنگ = نقاشی.رنگ از چهار مولفه(۰، ۰، ۰، ۹۰) })
بوم۱.پرکردن مستطیل گرد(کارت، نقاشی.شعاع یکسان(۸.۰)، نقاشی.رنگ از سه مولفه(۲۵۰، ۲۴۰، ۲۰۰))
ناپایا کادر := نقاشی.کادر توپر(۳.۰، نقاشی.رنگ از سه مولفه(۲۰۰، ۶۰، ۰))
کادر.سبک بالا = نقاشی.سبککادر.خطچین
کادر.سبک پایین = نقاشی.سبککادر.نقطهچین
بوم۱.رسم کادر(کارت، نقاشی.شعاع یکسان(۸.۰)، کادر)
بوم۱.افزودن برش گرد(نقاشی.مستطیل از(۱۰.۰، ۱۰.۰، ۴۰.۰، ۲۰.۰)، نقاشی.شعاع یکسان(۶.۰))
بوم۱.پرکردن مستطیل(نقاشی.مستطیل از(۰.۰، ۰.۰، ۶۰.۰، ۴۰.۰)، نقاشی.رنگ از چهار مولفه(۰، ۹۰، ۲۰۰، ۱۲۰))
بوم۱.برداشتن برش()
بوم۱.برداشتن تبدیل()
بوم۱.رسم دورخط با سبک(نقاشی.مستطیل از(۹۰.۰، ۲۰.۰، ۲۰.۰، ۴۰.۰)، نقاشی.شعاع یکسان(۴.۰)، ۲.۰، ۳.۰، نقاشی.رنگ از سه مولفه(۰، ۰، ۰)، نقاشی.سبککادر.نقطهچین)
گوشه := چرخش.اعمال روی نقطه(نقاشی.نقطه { ایکس = ۰.۰، ایگرگ = ۰.۰ })
بازگشته := چرخش.وارون تبدیل().اعمال روی نقطه(گوشه)
جعبه := چرخش.نگاشت مستطیل(کارت)
سرچاپ "گوشهی کارت روی صفحه:"، گوشه.ایکس > ۱۰.۰، گوشه.ایگرگ < ۲۰.۰
سرچاپ "بازگشت به کارت:"، بازگشته.ایکس > -۰.۰۰۱ و بازگشته.ایکس < ۰.۰۰۱
سرچاپ "جعبهی روی صفحه پهنتر از کارت است:"، جعبه.پهنا > ۶۰.۰
سرچاپ "همانی:"، نقاشی.تبدیل همانی().همانی است()، چرخش.همانی است()
سرچاپ "چکیده:"، بوم۱.چکیده()
بوم۱.رهاسازی()
پایاننگاشت مستطیل MapRect
تابع نگاشت مستطیل(r: مستطیل): مستطیلنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Transform.salam
همانی است IsIdentity
تابع همانی است(): منطقینمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Transform.salam
پالایه Filter
ساختار پالایه| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| نوع پالایه | kind | نوعپالایه | کدام پالایه. |
| اندازه پالایه | amount | اعشار۶۴ = 0 | اندازهی پالایه: انحراف معیار تاری بر حسب پیکسل، زاویه بر حسب درجه برای چرخش فام، یا یک ضریب. |
| جابجایی افقی سایه | offset_x | اعشار۶۴ = 0 | برای سایه افتاده، جابجایی سایه به راست. |
| جابجایی عمودی سایه | offset_y | اعشار۶۴ = 0 | برای سایه افتاده، جابجایی سایه به پایین. |
| رنگ سایه | color | رنگ | برای سایه افتاده، رنگ سایه. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
زنجیرهپالایه FilterChain
ساختار زنجیرهپالایهfilter و backdrop-filter در CSS.| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| پالایه ها | items | وکتور<پالایه> | پالایهها به ترتیب. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
افزودن پالایه Add
تابع افزودن پالایه(f: پالایه)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
گستره پالایه Extent
تابع گستره پالایه(): اعشار۶۴نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
خالی است IsEmpty
تابع خالی است(): منطقینمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
رهاسازی Free
تابع رهاسازی()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
قلم Stroke
ساختار قلم| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| پهنا | width | اعشار۶۴ = 1 | پهنای خط. |
| سرخط | cap | سرخط | دو سر خطهای باز. |
| اتصال | join | اتصالخط | گوشهها. |
| حد تیزی | miter_limit | اعشار۶۴ = 4 | بلندترین گوشهی تیز، به ضریبی از نیم پهنا، پیش از آنکه گوشه پخ شود. |
| خط چین | dash | اعشار۶۴ = 0 | بلندی هر تکهی خطچین. صفر یعنی خط توپر. |
| فاصله خط چین | gap | اعشار۶۴ = 0 | فاصلهی میان تکهها. |
| آغاز خط چین | dash_offset | اعشار۶۴ = 0 | خط از کجای الگوی خطچین آغاز شود. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
مسیر Path
ساختار مسیر| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| فرمان ها | verbs | وکتور<صحیح> | فرمانهای مسیر (حرکت، خط، درجه دو، درجه سه، بستن). |
| نقطه ها | points | وکتور<اعشار۶۴> | مختصاتی که فرمانها به کار میبرند. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
حرکت به MoveTo
تابع حرکت به(x: اعشار۶۴، y: اعشار۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
خط به LineTo
تابع خط به(x: اعشار۶۴، y: اعشار۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
منحنی درجه دو به QuadTo
تابع منحنی درجه دو به(cx: اعشار۶۴، cy: اعشار۶۴، x: اعشار۶۴، y: اعشار۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
منحنی درجه سه به CubicTo
تابع منحنی درجه سه به(c1x: اعشار۶۴، c1y: اعشار۶۴، c2x: اعشار۶۴، c2y: اعشار۶۴، x: اعشار۶۴، y: اعشار۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
بستن مسیر Close
تابع بستن مسیر()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
کمان Arc
تابع کمان(cx: اعشار۶۴، cy: اعشار۶۴، rx: اعشار۶۴، ry: اعشار۶۴، start: اعشار۶۴، sweep: اعشار۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
افزودن مستطیل AddRect
تابع افزودن مستطیل(r: مستطیل)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
افزودن مستطیل گرد AddRoundedRect
تابع افزودن مستطیل گرد(r: مستطیل، radii: شعاعها)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
افزودن بیضی AddEllipse
تابع افزودن بیضی(cx: اعشار۶۴، cy: اعشار۶۴، rx: اعشار۶۴، ry: اعشار۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
پاک کردن Clear
تابع پاک کردن()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
رهاسازی Free
تابع رهاسازی()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
ناحیه Region
ساختار ناحیهنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
شمار Count
تابع شمار(): صحیحنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
مستطیل شماره At
تابع مستطیل شماره(i: صحیح): مستطیلپیکسلینمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
خالی است IsEmpty
تابع خالی است(): منطقینمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
پاک کردن Clear
تابع پاک کردن()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
کرانه Bounds
تابع کرانه(): مستطیلپیکسلینمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
افزودن Add
تابع افزودن(r: مستطیلپیکسلی)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
اجتماع Union
تابع اجتماع(o: ناحیه)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
بوم Canvas
ساختار بوم| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| پیکسل ها | pixels | تهی* | پیکسلها: هر کدام یک واژهی پیشضربشدهی 0xAARRGGBB، یعنی بایتهای B، G، R، A در حافظه. |
| پهنا | width | صحیح = 0 | پهنا بر حسب پیکسل. |
| بلندی | height | صحیح = 0 | بلندی بر حسب پیکسل. |
| گام ردیف | stride | صحیح = 0 | شمار بایتها از یک ردیف تا ردیف بعد. |
| مالک است | owned | منطقی = نادرست | آیا رهاسازی پیکسلها را هم آزاد میکند. |
| وضعیت | state | _State | وضعیت کشیدن (برشها، تبدیلها، لایهها و حافظهی کمکی). مستقیم تغییرش ندهید. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
رهاسازی Free
تابع رهاسازی()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
پاک کردن Clear
تابع پاک کردن(c: رنگ)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
پیکسل Pixel
تابع پیکسل(x: صحیح، y: صحیح): رنگنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
پیکسل خام RawPixel
تابع پیکسل خام(x: صحیح، y: صحیح): طبیعی۳۲نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
چکیده Hash
تابع چکیده(): رشتهنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
زیربوم Sub
تابع زیربوم(r: مستطیلپیکسلی): بومنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
افزودن برش PushClip
تابع افزودن برش(r: مستطیل)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
افزودن برش گرد PushRoundedClip
تابع افزودن برش گرد(r: مستطیل، radii: شعاعها)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
برداشتن برش PopClip
تابع برداشتن برش()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
کرانه برش ClipBounds
تابع کرانه برش(): مستطیلپیکسلینمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
افزودن تبدیل PushTransform
تابع افزودن تبدیل(t: ماتریستبدیل)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
جابجا کردن Translate
تابع جابجا کردن(dx: اعشار۶۴، dy: اعشار۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
برداشتن تبدیل PopTransform
تابع برداشتن تبدیل()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
تنظیم ناحیه SetRegion
تابع تنظیم ناحیه(r: ناحیه)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
حذف ناحیه ClearRegion
تابع حذف ناحیه()نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
پرکردن مستطیل FillRect
تابع پرکردن مستطیل(r: مستطیل، c: رنگ)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
پرکردن مستطیل گرد FillRoundedRect
تابع پرکردن مستطیل گرد(r: مستطیل، radii: شعاعها، c: رنگ)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
رسم کادر DrawBorder
تابع رسم کادر(r: مستطیل، radii: شعاعها، b: کادر)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
رسم دورخط DrawOutline
تابع رسم دورخط(r: مستطیل، radii: شعاعها، width: اعشار۶۴، offset: اعشار۶۴، c: رنگ)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
پرکردن گرادیان FillGradient
تابع پرکردن گرادیان(r: مستطیل، radii: شعاعها، g: گرادیان)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
رسم سایه DrawShadow
تابع رسم سایه(r: مستطیل، radii: شعاعها، s: سایه)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
رسم تصویر DrawImage
تابع رسم تصویر(src: بوم، dst: مستطیل، opacity: اعشار۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
رسم تکه تصویر DrawImagePart
تابع رسم تکه تصویر(src: بوم، part: مستطیلپیکسلی، dst: مستطیل، opacity: اعشار۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
رسم تصویر کاشی DrawImageTiled
تابع رسم تصویر کاشی(src: بوم، area: مستطیل، tile: مستطیل، opacity: اعشار۶۴)tile جا و اندازهی یک نسخه است (background-repeat در CSS).نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
رسم ماسک DrawMask
تابع رسم ماسک(m: ماسک، x: صحیح، y: صحیح، c: رنگ)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
رسم گلیف DrawGlyph
تابع رسم گلیف(m: ماسک، x: صحیح، baseline: صحیح، c: رنگ)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
پرکردن مسیر FillPath
تابع پرکردن مسیر(p: مسیر، rule: قانونپرکردن، c: رنگ)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
خط کشی مسیر StrokePath
تابع خط کشی مسیر(p: مسیر، s: قلم، c: رنگ)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
آغاز لایه BeginLayer
تابع آغاز لایه(r: مستطیل)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
ادغام لایه EndLayer
تابع ادغام لایه(opacity: اعشار۶۴)opacity در CSS).نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
ادغام لایه با نقاب EndLayerMasked
تابع ادغام لایه با نقاب(opacity: اعشار۶۴)background-clip: text در CSS پسزمینه را اینگونه از درون نویسهها میکشد.نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
آغاز لایه پالایه BeginFilterLayer
تابع آغاز لایه پالایه(r: مستطیل، chain: زنجیرهپالایه)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
ادغام لایه با پالایه EndLayerFiltered
تابع ادغام لایه با پالایه(chain: زنجیرهپالایه، opacity: اعشار۶۴)filter در CSS).نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
رسم نه برش DrawNineSlice
تابع رسم نه برش(src: بوم، area: مستطیل، ns: نهبرش، opacity: اعشار۶۴)src را نهتکه میکند و دور area میکشد: گوشهها در گوشهها، لبهها به شیوهی repeat_x و repeat_y در کنارهها، و میانه وقتی fill روشن باشد. border-image در CSS اینگونه کشیده میشود.// زبان: فارسی
واردسازی رابط گرافیکی.نقاشی
تابع ریشه:
ناپایا قاب := نقاشی.بوم تازه(۳۰، ۳۰)
قاب.پاک کردن(نقاشی.رنگ از سه مولفه(۴۰، ۹۰، ۲۰۰))
قاب.پرکردن مستطیل(نقاشی.مستطیل از(۱۰.۰، ۱۰.۰، ۱۰.۰، ۱۰.۰)، نقاشی.رنگ از سه مولفه(۲۴۰، ۲۴۰، ۲۴۰))
قاب.پرکردن مستطیل(نقاشی.مستطیل از(۰.۰، ۰.۰، ۱۰.۰، ۱۰.۰)، نقاشی.رنگ از سه مولفه(۲۲۰، ۵۰، ۵۰))
ناپایا برشها := نقاشی.نهبرش { برش بالایی = ۱۰.۰، برش راستی = ۱۰.۰، برش پایینی = ۱۰.۰، برش چپی = ۱۰.۰ }
برشها.پهنای بالایی = ۶.۰
برشها.پهنای راستی = ۶.۰
برشها.پهنای پایینی = ۶.۰
برشها.پهنای چپی = ۶.۰
برشها.تکرار افقی = نقاشی.تکرارتصویر.گردشده
برشها.تکرار عمودی = نقاشی.تکرارتصویر.کشیده
برشها.پرکردن وسط = درست
ناپایا بوم۱ := نقاشی.بوم تازه(۱۰۰، ۶۰)
بوم۱.پاک کردن(نقاشی.رنگ از سه مولفه(۲۵۵، ۲۵۵، ۲۵۵))
بوم۱.رسم نه برش(قاب، نقاشی.مستطیل از(۴.۰، ۴.۰، ۹۲.۰، ۵۲.۰)، برشها، ۱.۰)
گوشه := بوم۱.پیکسل(۶، ۶)
سرچاپ "گوشه:"، گوشه.قرمز، گوشه.سبز، گوشه.آبی
میانه := بوم۱.پیکسل(۵۰، ۳۰)
سرچاپ "میانه:"، میانه.قرمز، میانه.سبز، میانه.آبی
سرچاپ "چکیده:"، بوم۱.چکیده()
بوم۱.رهاسازی()
قاب.رهاسازی()
پایانپالایه پس زمینه BackdropFilter
تابع پالایه پس زمینه(r: مستطیل، radii: شعاعها، chain: زنجیرهپالایه، opacity: اعشار۶۴ = 1)backdrop-filter در CSS: پیکسلهای زیر مستطیل با لبههای آینهای خوانده، پالایش و به اندازهی مستطیل گرد بریده میشوند و با opacity (اگر داده نشود ۱) روی همانجا کشیده میشوند، همانگونه که Chromium پسزمینه را ترکیب میکند. درون یک لایه، پسزمینه فقط همان چیزی است که لایه دارد.نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
رسم دورخط با سبک DrawOutlineStyled
تابع رسم دورخط با سبک(r: مستطیل، radii: شعاعها، width: اعشار۶۴، offset: اعشار۶۴، c: رنگ، style: سبککادر)نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Transform.salam
تکرارتصویر ImageRepeat
جداشمار تکرارتصویرborder-image-repeat.| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| کشیده | Stretch | | تکه کش میآید تا جا را پر کند. |
| تکرارشده | Repeat | | تکه با اندازهی مقیاسشدهاش، از وسط، کاشی میشود و کاشیهای دو سر بریده میشوند. |
| گردشده | Round | | تکه کاشی میشود و اندازهاش طوری تغییر میکند که تعداد درستی کاشی جا شود. |
| فاصله دار | Space | | فقط کاشیهای کامل کشیده میشوند و جای مانده به اندازهی برابر میان و دور آنها پخش میشود. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-NineSlice.salam
نهبرش NineSlice
ساختار نهبرشDrawNineSlice تصویر منبع را چگونه ببرد و تکهها کجا بروند.| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| برش بالایی | slice_top | اعشار۶۴ = 0 | فاصلهی پایان برش بالا از بالای منبع، به پیکسل منبع. |
| برش راستی | slice_right | اعشار۶۴ = 0 | فاصلهی آغاز برش راست از راست منبع، به پیکسل منبع. |
| برش پایینی | slice_bottom | اعشار۶۴ = 0 | فاصلهی آغاز برش پایین از پایین منبع، به پیکسل منبع. |
| برش چپی | slice_left | اعشار۶۴ = 0 | فاصلهی پایان برش چپ از چپ منبع، به پیکسل منبع. |
| پهنای بالایی | width_top | اعشار۶۴ = 0 | بلندی لبهی بالا هنگام کشیدن، به پیکسل بوم. |
| پهنای راستی | width_right | اعشار۶۴ = 0 | پهنای لبهی راست هنگام کشیدن. |
| پهنای پایینی | width_bottom | اعشار۶۴ = 0 | بلندی لبهی پایین هنگام کشیدن. |
| پهنای چپی | width_left | اعشار۶۴ = 0 | پهنای لبهی چپ هنگام کشیدن. اگر پهناها جا نشوند، همه با یک ضریب کوچک میشوند، همانگونه که CSS میکند. |
| تکرار افقی | repeat_x | تکرارتصویر | اینکه لبههای بالا و پایین و میانه پهنا را چگونه پر کنند. |
| تکرار عمودی | repeat_y | تکرارتصویر | اینکه لبههای چپ و راست و میانه بلندی را چگونه پر کنند. |
| پرکردن وسط | fill | منطقی = نادرست | اینکه تکهی میانه هم کشیده شود یا نه، مانند واژهی fill در border-image-slice. |
نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-NineSlice.salam
تابعها
گرادیان خطی LinearGradient
تابع گرادیان خطی(angle: اعشار۶۴): گرادیانافزودن ایست بیفزایید.نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
گرادیان شعاعی RadialGradient
تابع گرادیان شعاعی(cx: اعشار۶۴، cy: اعشار۶۴، rx: اعشار۶۴، ry: اعشار۶۴): گرادیاننمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
گرادیان مخروطی ConicGradient
تابع گرادیان مخروطی(cx: اعشار۶۴، cy: اعشار۶۴، angle: اعشار۶۴): گرادیاننمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
شعاع گرادیان شعاعی RadialSize
تابع شعاع گرادیان شعاعی(width: اعشار۶۴، height: اعشار۶۴، cx: اعشار۶۴، cy: اعشار۶۴، circle: منطقی، extent: گسترهشعاعی): نقطهنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
بوم تازه NewCanvas
تابع بوم تازه(width: صحیح، height: صحیح): بومنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
بوم روی حافظه WrapCanvas
تابع بوم روی حافظه(pixels: تهی*، width: صحیح، height: صحیح، stride: صحیح): بومنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
مستطیل از RectOf
تابع مستطیل از(x: اعشار۶۴، y: اعشار۶۴، width: اعشار۶۴، height: اعشار۶۴): مستطیلمستطیل میسازد.نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
مستطیل پیکسلی از IntRectOf
تابع مستطیل پیکسلی از(x: صحیح، y: صحیح، width: صحیح، height: صحیح): مستطیلپیکسلیمستطیلپیکسلی میسازد.نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
شعاع یکسان Uniform
تابع شعاع یکسان(r: اعشار۶۴): شعاعهانمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
شعاع گوشه ها Corners
تابع شعاع گوشه ها(top_left: اعشار۶۴، top_right: اعشار۶۴، bottom_right: اعشار۶۴، bottom_left: اعشار۶۴): شعاعهانمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
برازش شعاع ها FitRadii
تابع برازش شعاع ها(r: مستطیل، radii: شعاعها): شعاعهانمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Gradient.salam
کادر توپر SolidBorder
تابع کادر توپر(width: اعشار۶۴، c: رنگ): کادرنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
مسیر تازه NewPath
تابع مسیر تازه(): مسیرنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
تبدیل همانی Identity
تابع تبدیل همانی(): ماتریستبدیلنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
تبدیل جابجایی Translation
تابع تبدیل جابجایی(dx: اعشار۶۴، dy: اعشار۶۴): ماتریستبدیلنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
تبدیل مقیاس Scaling
تابع تبدیل مقیاس(sx: اعشار۶۴، sy: اعشار۶۴): ماتریستبدیلنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
تبدیل کجی Skewing
تابع تبدیل کجی(x_degrees: اعشار۶۴، y_degrees: اعشار۶۴): ماتریستبدیلskew() در CSS.نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Transform.salam
پالایه تازه NewFilter
تابع پالایه تازه(kind: نوعپالایه، amount: اعشار۶۴): پالایهنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
پالایه سایه افتاده DropShadowFilter
تابع پالایه سایه افتاده(offset_x: اعشار۶۴، offset_y: اعشار۶۴، blur: اعشار۶۴، c: رنگ): پالایهdrop-shadow از جابجایی، انحراف معیار تاری و رنگ میسازد.نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Filter.salam
تبدیل چرخش Rotation
تابع تبدیل چرخش(degrees: اعشار۶۴): ماتریستبدیلنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Path.salam
بوم از تصویر FromImage
تابع بوم از تصویر(img: تصویر.تصویر): بومai.image (RGBA مستقیم).نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
تصویر از بوم ToImage
تابع تصویر از بوم(cv: بوم): تصویر.تصویرai.image (RGBA مستقیم) از یک بوم.نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
ذخیره پی ان جی SavePNG
تابع ذخیره پی ان جی(cv: بوم، path: رشته): منطقینمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
خواندن پی ان جی LoadPNG
تابع خواندن پی ان جی(path: رشته، ok &: منطقی): بومنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
برازش تصویر FitImage
تابع برازش تصویر(fit: برازش، image_width: صحیح، image_height: صحیح، box: مستطیل، pos_x: اعشار۶۴، pos_y: اعشار۶۴): مستطیلobject-fit؛ دو پارامتر جایگاه همان object-position در CSS به صورت کسر هستند (۰.۵ یعنی وسط).نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
مقیاس تصویر ScaleImage
تابع مقیاس تصویر(src: بوم، width: صحیح، height: صحیح): بومنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
رنگ از سه مولفه Rgb
تابع رنگ از سه مولفه(r: صحیح، g: صحیح، b: صحیح): رنگنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
رنگ از چهار مولفه Rgba
تابع رنگ از چهار مولفه(r: صحیح، g: صحیح، b: صحیح، a: صحیح): رنگنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Box.salam
پیش ضرب Premultiply
تابع پیش ضرب(c: رنگ): طبیعی۳۲نمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam
حذف پیش ضرب Unpremultiply
تابع حذف پیش ضرب(v: طبیعی۳۲): رنگنمونهی این مورد همراه با موارد بالاتر آمده است: gui-paint-Image.salam