کار با بخش ها
گاهی اوقات شما سندی را می خواهید که قالب بندی یکسانی در همه صفحات نداشته باشد. به عنوان مثال، ممکن است لازم باشد قالبهای شماره صفحه را تغییر دهید، اندازه و جهت صفحه متفاوتی داشته باشید، یا اولین صفحه سند را به عنوان صفحه جلد بدون شمارهگذاری داشته باشید. شما می توانید با بخش ها به آن دست پیدا کنید.
بخش ها گره های سطحی هستند که سرصفحه ها و پاورقی ها، جهت گیری، ستون ها، حاشیه ها، قالب بندی شماره صفحه و موارد دیگر را کنترل می کنند.
Aspose.Words به شما امکان میدهد بخشها را مدیریت کنید، یک سند را به بخشها تقسیم کنید و تغییرات قالببندی را انجام دهید که فقط برای یک بخش خاص اعمال میشود. Aspose.Words اطلاعات مربوط به قالب بندی بخش مانند سرصفحه ها و پاورقی ها، تنظیمات صفحه و تنظیمات ستون را در بخش شکست ذخیره می کند.
در این مقاله نحوه کار با بخش ها و بخش ها توضیح داده شده است.
Section و Section Break چیست؟
بخش های سند توسط کلاس های Section و SectionCollection نشان داده می شوند. اشیاء بخش فرزندان مستقیم گره Document هستند و از طریق ویژگی Sections قابل دسترسی هستند. شما می توانید آن گره ها را با استفاده از روش هایی مانند Remove، Add، IndexOf و غیره مدیریت کنید.
Section break گزینه ای است که صفحات سند را به بخش هایی با طرح بندی قابل تنظیم تقسیم می کند.
انواع شکستن بخش
Aspose.Words به شما امکان می دهد اسناد را با استفاده از بخش های مختلف شمارش BreakType تقسیم و قالب بندی کنید:
- بخش Break Continuous
- بخش BreakNewColumn
- بخش BreakNewPage
- SectionBreakEvenPage
- بخش BreakOddPage
همچنین میتوانید از شمارش SectionStart برای انتخاب نوع شکست استفاده کنید که فقط برای بخش اول مانند NewColumn، NewPage، EvenPage و OddPage اعمال میشود.
یک بخش را مدیریت کنید
از آنجایی که یک بخش یک گره مرکب معمولی است، کل دستکاری گره API را می توان برای دستکاری بخش ها استفاده کرد: افزودن، حذف و سایر عملیات بر روی بخش ها. در مقاله Aspose.Words Document Object Model (DOM) می توانید اطلاعات بیشتری در مورد گره ها بخوانید.
از طرف دیگر، می توانید از DocumentBuilder
API برای کار با بخش ها نیز استفاده کنید. در این مقاله، ما بر روی این روش خاص کار با بخش ها تمرکز خواهیم کرد.
درج یا حذف بخش شکست
Aspose.Words به شما این امکان را می دهد که با استفاده از روش InsertBreak یک بخش شکست را در متن وارد کنید.
مثال کد زیر نحوه درج شکست بخش را در یک سند نشان می دهد:
از روش Remove برای حذف یک بخش استراحت استفاده کنید. اگر نیازی به حذف یک بخش استراحت خاص و حذف محتوای آن بخش ندارید، می توانید از روش ClearContent استفاده کنید.
مثال کد زیر نحوه حذف شکستن بخش ها را نشان می دهد:
یک بخش را جابجا کنید
اگر می خواهید بخشی را از یک موقعیت به موقعیت دیگر در سند خود منتقل کنید، باید شاخص آن بخش را دریافت کنید. Aspose.Words به شما امکان می دهد با استفاده از ویژگی Item یک موقعیت بخش را از SectionCollection دریافت کنید. می توانید از ویژگی Sections برای دریافت تمام بخش ها در سند خود استفاده کنید. اما اگر می خواهید فقط قسمت اول را دریافت کنید، می توانید از ویژگی FirstSection استفاده کنید.
مثال کد زیر نحوه دسترسی به بخش اول و تکرار از طریق فرزندان یک گره مرکب را نشان می دهد:
یک طرح بندی بخش را مشخص کنید
گاهی اوقات میخواهید با ایجاد طرحبندیهای خلاقانه برای بخشهای مختلف سند، سندتان بهتر به نظر برسد. اگر می خواهید نوع شبکه بخش فعلی را مشخص کنید، می توانید یک حالت طرح بندی بخش را با استفاده از شمارش SectionLayoutMode انتخاب کنید:
- پیش فرض
- توری
- LineGrid
- SnapToChars
مثال کد زیر نحوه محدود کردن تعداد خطوطی که هر صفحه ممکن است داشته باشد را نشان می دهد:
یک بخش را ویرایش کنید
وقتی بخش جدیدی را به سند خود اضافه می کنید، بدنه یا پاراگرافی وجود نخواهد داشت که بتوانید آن را ویرایش کنید. Aspose.Words به شما این امکان را می دهد که با استفاده از روش EnsureMinimum تضمین کنید که یک بخش دارای بدنه ای با حداقل یک پاراگراف است - به طور خودکار یک گره Body (یا HeaderFooter) را به سند اضافه می کند و سپس یک پاراگراف را به آن اضافه می کند.
مثال کد زیر نحوه تهیه یک گره بخش جدید با استفاده از EnsureMinimum را نشان می دهد:
افزودن یا ارائه محتوا
اگر می خواهید شکلی بکشید یا متن یا تصویری را در ابتدا / انتهای یک بخش اضافه کنید، می توانید از روش های AppendContent و PrependContent کلاس Section استفاده کنید.
مثال کد زیر نحوه اضافه کردن محتوای یک بخش موجود را نشان می دهد:
یک بخش را شبیه سازی کنید
Aspose.Words به شما این امکان را می دهد که با ایجاد یک کپی کامل از آن با استفاده از روش Clone، یک بخش را کپی کنید.
مثال کد زیر نحوه کلون کردن بخش اول در سند خود را نشان می دهد:
بخش ها را بین اسناد کپی کنید
در برخی موارد، ممکن است اسناد بزرگ با بخش های زیادی داشته باشید و بخواهید محتوای یک بخش را از یک سند به سند دیگر کپی کنید.
Aspose.Words به شما امکان می دهد با استفاده از روش ImportNode بخش هایی را بین اسناد کپی کنید.
مثال کد زیر نحوه کپی کردن بخش ها بین اسناد را نشان می دهد:
با Section Header و Footer کار کنید
قوانین اساسی برای نمایش سرصفحه یا پاورقی برای هر بخش بسیار ساده است:
- اگر بخش دارای هدر/پانویس از نوع خاصی نباشد، از قسمت قبلی گرفته شده است.
- نوع سرصفحه/پانویس نمایش داده شده در صفحه توسط تنظیمات بخش “صفحه اول متفاوت” و “صفحات زوج و فرد متفاوت” کنترل می شود – اگر غیرفعال باشند، عناوین خود بخش نادیده گرفته می شوند.
مثال کد زیر نحوه ایجاد 2 بخش با هدرهای مختلف را نشان می دهد:
اگر می خواهید متن سرصفحه ها و پاورقی ها را بدون حذف اشیاء HeaderFooter در سند خود حذف کنید، می توانید از روش ClearHeadersFooters استفاده کنید. علاوه بر این، می توانید از روش DeleteHeaderFooterShapes برای حذف تمام اشکال از سرصفحه ها و پاورقی ها در سند خود استفاده کنید.
مثال کد زیر نحوه پاک کردن محتوای تمام سرصفحه ها و پاورقی ها را در یک بخش نشان می دهد:
کد زیر به عنوان مثال نحوه حذف تمام اشکال از تمام فوترهای سرصفحه در یک بخش:
خصوصیات صفحه را در یک بخش سفارشی کنید
قبل از چاپ یک صفحه یا یک سند، ممکن است بخواهید اندازه و طرح بندی یک صفحه یا کل سند را سفارشی کرده و تغییر دهید. با تنظیم صفحه، می توانید تنظیمات صفحات سند مانند حاشیه، جهت و اندازه را برای چاپ صفحات اول مختلف یا صفحات فرد تغییر دهید.
Aspose.Words به شما اجازه می دهد تا با استفاده از کلاس PageSetup ویژگی های صفحه و بخش را سفارشی کنید.
مثال کد زیر نحوه تنظیم ویژگی هایی مانند اندازه صفحه و جهت گیری برای بخش فعلی را نشان می دهد:
مثال کد زیر نحوه تغییر خصوصیات صفحه را در تمام بخش ها نشان می دهد: