برای وارد کردن عناصر سند از `DocumentBuilder` استفاده کنید

DocumentBuilder برای تغییر اسناد استفاده می شود. این مقاله نحوه انجام تعدادی از وظایف را توضیح می دهد و توضیح می دهد:

قرار دادن یک رشته متن

به سادگی رشته متن مورد نیاز برای وارد کردن در سند را به روش DocumentBuilder.Write منتقل کنید. قالب بندی متن توسط ویژگی Font تعیین می شود. این شی شامل ویژگی های مختلف فونت (نام فونت، اندازه فونت، رنگ و غیره) است. برخی از ویژگی های مهم فونت نیز توسط ویژگی های DocumentBuilder نشان داده شده است تا به شما اجازه دسترسی مستقیم به آنها را بدهد. اینها خواص بولی Font.Bold ،Font.Italic و Font.Underline هستند.

توجه داشته باشید که قالب بندی کاراکتر که تنظیم کرده اید برای تمام متن وارد شده از موقعیت فعلی در سند به بعد اعمال می شود.

در زیر مثال متن فرمت شده با استفاده از DocumentBuilder را وارد می کند.

درج یک پاراگراف

DocumentBuilder.Writeln یک رشته متن را نیز در سند قرار می دهد اما علاوه بر این، یک پاراگراف را اضافه می کند. قالب بندی فونت فعلی نیز توسط ویژگی DocumentBuilder.Font مشخص می شود و قالب بندی پاراگراف فعلی توسط ویژگی DocumentBuilder.ParagraphFormat تعیین می شود. مثال زیر نشان می دهد که چگونه یک پاراگراف را در سند وارد کنید.

قرار دادن یک جدول

الگوریتم اساسی برای ایجاد یک جدول با استفاده از DocumentBuilder ساده است:

  1. جدول را با استفاده از DocumentBuilder.StartTable شروع کنید.
  2. یک سلول را با استفاده از DocumentBuilder.InsertCell وارد کنید. این به طور خودکار یک ردیف جدید را شروع می کند. در صورت نیاز، از ویژگی DocumentBuilder.CellFormat برای مشخص کردن قالب بندی سلول استفاده کنید.
  3. محتویات سلول را با استفاده از روش های DocumentBuilder وارد کنید.
  4. مراحل 2 و 3 را تکرار کنید تا ردیف کامل شود.
  5. برای پایان دادن به ردیف فعلی با DocumentBuilder.EndRow تماس بگیرید. در صورت نیاز، از ویژگی DocumentBuilder.RowFormat برای مشخص کردن قالب بندی ردیف استفاده کنید.
  6. مراحل 2 - 5 را تکرار کنید تا جدول کامل شود.
  7. برای تکمیل ساختمان میز با DocumentBuilder.EndTable تماس بگیرید. روش های مناسب ایجاد جدول DocumentBuilder در زیر شرح داده شده است.

شروع یک جدول

فراخوانی DocumentBuilder.StartTable اولین قدم در ساخت یک جدول است. می توان آن را در داخل سلول نیز نامید، در این صورت یک میز آشیانه ای را شروع می کند. روش بعدی برای فراخوانی DocumentBuilder.InsertCell است.

قرار دادن یک سلول

پس از فراخوانی DocumentBuilder->InsertCell، یک سلول جدید ایجاد می شود و هر محتوایی که با استفاده از روش های دیگر کلاس DocumentBuilder اضافه می کنید به سلول فعلی اضافه می شود. برای شروع یک سلول جدید در همان ردیف، دوباره با DocumentBuilder->InsertCell تماس بگیرید. از ویژگی DocumentBuilder.CellFormat برای مشخص کردن قالب بندی سلول استفاده کنید. این یک شی CellFormat را باز می گرداند که تمام قالب بندی برای یک سلول جدول را نشان می دهد.

پایان دادن به یک ردیف

برای پایان دادن به ردیف فعلی با DocumentBuilder.EndRow تماس بگیرید. اگر بلافاصله پس از آن با DocumentBuilder->InsertCell تماس بگیرید، جدول در یک ردیف جدید ادامه می یابد.

از ویژگی DocumentBuilder.RowFormat برای مشخص کردن قالب بندی ردیف استفاده کنید. این یک شی RowFormat را باز می گرداند که تمام قالب بندی برای یک ردیف جدول را نشان می دهد.

پایان دادن به یک جدول

برای تکمیل جدول فعلی با DocumentBuilder.EndTable تماس بگیرید. این روش باید تنها یک بار پس از فراخوان DocumentBuilder->EndRow فراخوانده شود. وقتی فراخوانده می شود، DocumentBuilder.EndTable نشانگر را از سلول فعلی به موقعیت درست بعد از جدول منتقل می کند. مثال زیر نشان می دهد که چگونه یک جدول فرمت شده را که شامل 2 ردیف و 2 ستون است، بسازیم.

قرار دادن یک استراحت

اگر می خواهید به طور صریح یک خط، پاراگراف، ستون، بخش یا صفحه جدید را شروع کنید، با DocumentBuilder.InsertBreak تماس بگیرید. به این روش نوع شکستگی که باید وارد کنید را که با شمارش BreakType نشان داده شده است، منتقل کنید. مثال زیر نشان می دهد که چگونه شکستن صفحه را در یک سند وارد کنید.

قرار دادن یک تصویر

DocumentBuilder چندین بار اضافی از روش DocumentBuilder->InsertImage را فراهم می کند که به شما اجازه می دهد یک تصویر خطی یا شناور را وارد کنید. اگر تصویر یک فایل متافیل EMF یا WMF باشد، در قالب فایل متافیل وارد سند می شود. تمام تصاویر دیگر در فرمت PNG ذخیره می شوند. روش DocumentBuilder->InsertImage می تواند از تصاویر از منابع مختلف استفاده کند:

  • از یک فایل یا URL با عبور از یک پارامتر رشته DocumentBuilder->InsertImage.
  • از یک جریان با عبور از یک پارامتر Stream DocumentBuilder->InsertImage.
  • از یک شیء تصویر با عبور از یک پارامتر تصویر DocumentBuilder->InsertImage.
  • از یک آرایه بایت با عبور از یک پارامتر آرایه بایت DocumentBuilder.InsertImage.برای هر یک از روش های DocumentBuilder->InsertImage، اضافه بار های بیشتری وجود دارد که به شما اجازه می دهد یک تصویر با گزینه های زیر را وارد کنید:
  • خطی یا شناور در یک موقعیت خاص، به عنوان مثال، DocumentBuilder->InsertImage.
  • مقیاس درصد یا اندازه سفارشی، به عنوان مثال، DocumentBuilder.InsertImage. علاوه بر این روش DocumentBuilder->InsertImage یک شی Shape را باز می گرداند که تازه ایجاد و وارد شده است تا بتوانید خواص شکل را بیشتر تغییر دهید.

قرار دادن یک تصویر خطی

یک رشته واحد را که یک فایل را نشان می دهد که شامل تصویر است به DocumentBuilder->InsertImage منتقل کنید تا تصویر را به عنوان یک گرافیک خطی در سند قرار دهید. مثال زیر نشان می دهد که چگونه یک تصویر خطی را در موقعیت نشانگر در یک سند قرار دهید.

قرار دادن یک تصویر شناور (کاملا قرار گرفته)

این مثال یک تصویر شناور از یک فایل یا URL را در یک موقعیت و اندازه مشخص قرار می دهد.

وارد کردن یک نشانک

برای قرار دادن یک نشانه در سند، باید موارد زیر را انجام دهید:

  1. با ارسال نام دلخواه نشانک، با DocumentBuilder->StartBookmark تماس بگیرید.
  2. متن نشانه گذاری را با استفاده از روش های DocumentBuilder وارد کنید.
  3. با DocumentBuilder.EndBookmark تماس بگیرید و همان نامی را که با DocumentBuilder->StartBookmark استفاده کرده اید، به آن بدهید.
  4. نشانه ها می توانند همپوشانی داشته باشند و هر محدوده ای را پوشش دهند. برای ایجاد یک نشانه معتبر شما باید هر دو DocumentBuilder->StartBookmark و DocumentBuilder->EndBookmark را با همان نام نشانه صدا کنید.

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

وارد کردن فیلد Form

زمینه های فرم یک مورد خاص از زمینه های کلمه است که اجازه می دهد تا “تعامل” با کاربر. فیلد های فرم در Microsoft Word شامل textbox، combo box و checkbox است.DocumentBuilder روش های خاصی را برای قرار دادن هر نوع فیلد فرم در سند فراهم می کند: DocumentBuilder.InsertTextInput، DocumentBuilder->InsertCheckBox و DocumentBuilder.InsertComboBox. توجه داشته باشید که اگر شما یک نام برای فیلد فرم مشخص کنید، پس یک علامت گذاری به طور خودکار با همان نام ایجاد می شود.

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

DocumentBuilder.InsertTextInput برای قرار دادن یک جعبه متن در سند. مثال زیر نشان می دهد که چگونه یک فیلد فرم ورودی متن را در یک سند وارد کنید.

قرار دادن یک جعبه چک

برای وارد کردن یک جعبه چک به سند با DocumentBuilder.InsertCheckBox تماس بگیرید. مثال زیر نشان می دهد که چگونه یک فیلد فرم جعبه چک را در یک سند وارد کنید.

قرار دادن یک جعبه دسته کوچک موسیقی جاز

برای وارد کردن یک جعبه کامبو به سند با DocumentBuilder.InsertComboBox تماس بگیرید. مثال زیر نشان می دهد که چگونه یک فیلد فرم جعبه کامبو را در یک سند وارد کنید.

وارد کردن محلی در سطح میدان

مشتریان می توانند محلی را در سطح میدان مشخص کنند و می توانند کنترل بهتری داشته باشند. شناسه های محلی را می توان با هر فیلد در داخل DocumentBuilder مرتبط کرد. نمونه های زیر نشان می دهد که چگونه از این گزینه استفاده کنید.

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

برای وارد کردن یک لینک به سند از DocumentBuilder.InsertHyperlink استفاده کنید. این روش سه پارامتر را می پذیرد: متن لینک که در سند نمایش داده می شود، مقصد لینک (URL یا نام یک نشانه در داخل سند)، و یک پارامتر بولی که باید درست باشد اگر URL نام یک نشانه در داخل سند باشد.DocumentBuilder.InsertHyperlink تماس های داخلی DocumentBuilder.InsertField.این روش همیشه در ابتدای و پایان URL آراستروف اضافه می کند. توجه داشته باشید که شما باید قالب بندی فونت را برای متن نمایش لینک به طور صریح با استفاده از ویژگی Font مشخص کنید. در زیر مثال یک لینک به یک سند با استفاده از DocumentBuilder وارد می شود.

قرار دادن Ole Object

اگر می خواهید Ole Object تماس بگیرید DocumentBuilder.InsertOleObject. به این روش ProgId را به طور صریح با پارامترهای دیگر منتقل کنید. مثال زیر نشان می دهد که چگونه Ole Object را در یک سند وارد کنید.

تنظیم نام فایل و پسوند هنگام قرار دادن Ole Object

OLE بسته یک روش قدیمی و “غیر مستند” برای ذخیره کردن شیء جاسازی شده است اگر OLE کنترل کننده ناشناخته باشد. نسخه های اولیه Windows مانند Windows 3.1، 95 و 98 دارای بسته بندی بودند.برنامه exe که می تواند برای جاسازی هر نوع داده در سند استفاده شود. حالا، این برنامه از Windows حذف شده است اما MS Word و سایر برنامه ها هنوز از آن برای جاسازی داده ها استفاده می کنند اگر OLE handler گم شده یا ناشناخته باشد. کلاس OlePackage اجازه دسترسی به ویژگی های بسته OLE را می دهد. مثال زیر نشان می دهد که چگونه نام فایل، پسوند و نام نمایش را برای بسته OLE تنظیم کنید.

درج HTML

شما به راحتی می توانید یک رشته HTML را که شامل یک قطعه HTML یا کل HTML سند است در سند Word وارد کنید. فقط کافی است این رشته را به متد DocumentBuilder->InsertHtml منتقل کنید. یکی از پیاده سازی های مفید این روش ذخیره یک رشته HTML در یک پایگاه داده و قرار دادن آن در سند در طول mail merge برای اضافه کردن محتوای فرمت شده به جای ساخت آن با استفاده از روش های مختلف سازنده سند است. مثال زیر نشان می دهد که HTML در یک سند با استفاده از DocumentBuilder قرار داده شده است.

قانون افقی را در سند قرار دهید

مثال Below code نشان می دهد که چگونه شکل قانون افقی را با استفاده از روش DocumentBuilder->InsertHorizontalRule در یک سند وارد کنید.