حاشیه‌ها و سایه‌زنی

حاشیه‌ها و سایه‌زنی

حاشیه‌ها و سایه‌گذاری

قالب‌بندی حاشیه و سایه‌گذاری در Aspose.Words FOSS برای .NET توسط دو کلاس ویژگی مرتبط مدل‌سازی می‌شود: Border که یک خط حاشیهٔ تک را توصیف می‌کند، و Shading که یک الگوی پر کردن پس‌زمینه را توصیف می‌کند. پاراگراف‌ها، جدول‌ها، سلول‌ها و قلم‌ها هر کدام یک BorderCollection (چندین طرف Border) و یک شیء Shading منفرد را از طریق ویژگی‌های قالب‌بندی مربوطه خود ارائه می‌دهند.


کار با حاشیه‌های تک‌تک

یک شیء Border نمایانگر یک خط حاشیه است و LineStyle (یک مقدار enum از LineStyle، مانند Single، Double، Dot یا Wave)، LineWidth، Color، DistanceFromText، Shadow و ویژگی‌های ThemeColor/TintAndShade آگاه به تم را در دسترس قرار می‌دهد. برای بازنشانی آن به حالت پیش‌فرض (بدون حاشیه) روی یک Border، ClearFormatting() را صدا بزنید.

BorderCollection چندین شیء Border را برای طرف‌های یک شیء گروه‌بندی می‌کند. این ویژگی، خواص نام‌گذاری شده‌ای برای چهار لبه — Left، Right، Top، Bottom — به‌علاوه Horizontal و Vertical برای حاشیه‌های داخلی جدول را در دسترس می‌گذارد. ایندکس‌گر BorderCollection یک طرف خاص را با استفاده از مقدار enum BorderType (Left، Right، Top، Bottom، Horizontal، Vertical، DiagonalDown، DiagonalUp یا None) به عنوان کلید بازیابی می‌کند. تنظیم مستقیم LineWidth، LineStyle یا Color در مجموعه، آن مقدار را به‌طور همزمان بر تمام حاشیه‌های موجود در مجموعه اعمال می‌کند؛ ClearFormatting() تمام حاشیه‌های مجموعه را به‌صورت یکجا پاک می‌کند.


اعمال سایه‌گذاری

Shading الگوی پس‌زمینه برای یک شیء را حمل می‌کند: BackgroundPatternColor و ForegroundPatternColor دو رنگ الگو را تعریف می‌کنند، و Texture (یک مقدار enum TextureIndex) الگو را انتخاب می‌کند — پر کردن‌های ثابت از TextureIndex.TextureSolid استفاده می‌کنند، در حالی که الگوهای درصدی و جهت‌دار (Texture10Percent تا Texture97Pt5Percent، TextureHorizontal، TextureDiagonalCross و سایرین) گالری سایه‌گذاری Word را بازتولید می‌کنند. ForegroundPatternThemeColor و BackgroundPatternThemeColor معادل‌های رنگ تم را فراهم می‌آورند، همراه با تنظیم رنگ‌سایه/سایه‌روشی از طریق ForegroundTintAndShade و BackgroundTintAndShade. ClearFormatting() یک شیء Shading را به حالت بدون پر کردن بازنشانی می‌کند.


نکات و بهترین شیوه‌ها

  • Texture را به TextureIndex.TextureSolid تنظیم کنید و برای پر کردن پس‌زمینه ساده از BackgroundPatternColor استفاده کنید — رایج‌ترین حالت سایه‌زنی.
  • از فهرست‌ساز BorderCollection (borders[BorderType.Horizontal] / borders[BorderType.Vertical]) برای دسترسی به خطوط شبکه داخلی جدول استفاده کنید، که به عنوان ویژگی‌های نام‌دار ظاهر نمی‌شوند.
  • تنظیم ویژگی‌ها به‌صورت مستقیم روی BorderCollection (به‌جای تنظیم بر روی هر Left/Right/Top/Bottom Border) سریع‌ترین روش برای اعمال حاشیه‌های یکنواخت به تمام طرف‌ها است.
  • به یاد داشته باشید LineStyle.None خط قابل مشاهده را حذف می‌کند بدون این‌که عرض یا رنگ تنظیم‌شده‌ی دیگر حاشیه را پاک کند — برای بازنشانی کامل از ClearFormatting() استفاده کنید.
  • حاشیه‌های سلول جدول و پاراگراف نمونه‌های مستقل BorderCollection هستند؛ تنظیم یکی بر دیگری تأثیری ندارد.

مشکلات رایج

مشکلعلترفع
حاشیه پس از تنظیم Color قابل مشاهده نیستLineStyle در LineStyle.None باقی ماندهقبل از ذخیره‌سازی، LineStyle را به سبکی قابل مشاهده مانند Single تنظیم کنید
سایه‌زنی به‌صورت پر کردن یکدست ظاهر می‌شود در حالی که انتظار الگو بودTexture در مقدار پیش‌فرض باقی ماندهبه‌طور صریح Texture را به ثابت الگوی مورد نظر تنظیم کنید
حاشیه‌های داخلی جدول تحت تأثیر تغییرات حاشیه لبه قرار نمی‌گیرندHorizontal/Vertical از Left/Right/Top/Bottom جدا هستندبه‌صورت صریح BorderCollection.Horizontal و .Vertical را تنظیم کنید
نمایه‌ساز BorderCollection حاشیهٔ غیرمنتظره‌ای برمی‌گرداندمقدار BorderType نادرست ارسال شدتأیید کنید مقدار enum BorderType با سمت موردنظر مطابقت دارد

FAQ

چگونه می‌توانم همان حاشیه را به چهار طرف یک سلول جدول اعمال کنم؟

مقادیر LineStyle، LineWidth و Color را مستقیماً بر روی BorderCollection سلول تنظیم کنید نه به‌صورت جداگانه بر روی هر یک از Left، Right، Top و Bottom — تنظیم‌کننده‌های سطح مجموعه بر تمام حاشیه‌های موجود در آن اعمال می‌شوند.

تفاوت بین Border و Shading چیست؟

Border یک خط (سبک، عرض، رنگ) را که در طول یک لبه کشیده می‌شود توصیف می‌کند؛ Shading الگوی پرکن پس‌زمینه پشت محتوا را توصیف می‌کند. این دو مستقل هستند — یک شی می‌تواند سایه‌دار باشد بدون حاشیه، یا حاشیه داشته باشد بدون سایه‌دار بودن.

کدام enum الگوی خطی بصری یک حاشیه را کنترل می‌کند؟

LineStyle، با مقادیری مانند Single، Double، Dot، DashSmallGap و Wave.

آیا می‌توانم یک حاشیه را به‌طور کامل حذف کنم؟

بله — ClearFormatting() را روی Border یا BorderCollection فراخوانی کنید، یا LineStyle را به LineStyle.None تنظیم کنید.


API Reference خلاصه

کلاس / متدتوضیح
Borderیک خط حاشیهٔ تک: سبک، عرض، رنگ، سایه
BorderCollectionمجموع مرزها (Left, Right, Top, Bottom, Horizontal, Vertical) برای یک شیء
BorderTypeenum شناسایی‌کنندهٔ سمت حاشیه
LineStyleenum از سبک‌های خطی بصری (Single, Double, Dot, و غیره)
Shadingپرکردن الگوی پس‌زمینه: رنگ‌ها و Texture
TextureIndexenum بافت‌های الگوی سایه‌دار

همچنین ببینید:

 فارسی