يتم استخدام الرأس والتذييل بشكل شائع في المستندات لإظهار معلومات مهمة مثل رقم الصفحة والموضوع والفصل وما إلى ذلك. يمكنك إضافة أو إدراج أو حذف أو إزالة رأس وتذييل في مستندات Word DOCX DOC باستخدام تطبيقات Java الخاصة بك. في هذه المقالة ، سنتعرف على إضافة أو إزالة الرؤوس والتذييلات. فيما يلي المواضيع التي سنستكشفها بالتفصيل:

إدراج أو إزالة Header Footer API - التثبيت

للعمل مع Header and Footer في مستندات Word ، سنستخدم Aspose.Words for Java API حيث تساعدنا استدعاءات API البسيطة في تحقيق المتطلبات. يمكنك تنزيل ملف JAR من قسم الإصدارات ، أو نسخ تكوينات Maven التالية في مشروعك. سيتم تكوين API عبر مستودع Maven وسيكون من الجيد متابعة الخطوات الإضافية الموضحة في هذه المقالة.

مخزن:

<repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>https://repository.aspose.com/repo/</url>
    </repository>
</repositories>

الاعتماد:

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-words</artifactId>
        <version>20.8</version>
        <classifier>jdk17</classifier>
    </dependency>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-words</artifactId>
        <version>20.8</version>
        <classifier>javadoc</classifier>
    </dependency>
</dependencies>

أضف رأس وتذييل في مستند Word (DOCX / DOC) باستخدام Java

تعد إضافة رأس وتذييل في مستندات Word (DOCX / DOC) حالة استخدام أساسية ولكنها مهمة للعمل مع مستندات معالجة النصوص. ومع ذلك ، هناك سيناريوهات مختلفة ممكنة. على سبيل المثال ، قد تحتاج إلى إضافة صورة أو جدول أو بعض النص فقط في قسم الرأس والتذييل. علاوة على ذلك ، في بعض الأحيان يكون رأس الصفحة وتذييلها مختلفين في صفحة العنوان مقارنة بالصفحات الأخرى. في بعض الأحيان ، يختلف رأس الصفحة وتذييلها في أرقام الصفحات الزوجية ويختلفان في أرقام الصفحات الفردية. لذلك ، قمنا بإنشاء مثال موجز وأساسي لإضافة رأس وتذييل في مستندات Word.

سنقوم هنا بإدراج تذييل رأس مختلف في صفحة العنوان (الصفحة الأولى جدًا) ، وتذييل رأس مختلف في الصفحة التالية. حيث أن الصفحة الثانية سيكون لها تذييل رأس مخصص بما في ذلك الصورة والنص وعنصر الجدول. تحتاج إلى اتباع الخطوات أدناه لإضافة أو إدراج رأس وتذييل في مستندات Word (DOCX / DOC) باستخدام Java.

  1. تهيئة Document و DocumentBuilder كائنات فئة
  2. حدد أنك تريد تذييل رأس مختلفًا لصفحة العنوان
  3. تعيين خصائص الخط لنص الرأس
  4. إنشاء رأس وللصفحات اللاحقة
  5. أدخل الجدول وقم بتعيين تنسيق رقم الصفحة
  6. حفظ ملف DOCX الناتج

يعتمد الكود التالي على هذه الخطوات التي توضح كيفية إضافة رأس وتذييل في مستندات Word (DOCX / DOC) برمجيًا باستخدام Java:

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Section currentSection = builder.getCurrentSection();
PageSetup pageSetup = currentSection.getPageSetup();

// حدد ما إذا كنا نريد أن تختلف رؤوس / تذييلات الصفحة الأولى عن الصفحات الأخرى.
// يمكنك أيضًا استخدام خاصية PageSetup.OddAndEvenPagesHeaderFooter لتحديدها
// رؤوس / تذييلات مختلفة للصفحات الفردية والزوجية.
pageSetup.setDifferentFirstPageHeaderFooter(true);

// --- إنشاء رأس الصفحة الأولى. -
pageSetup.setHeaderDistance(20);
builder.moveToHeaderFooter(HeaderFooterType.HEADER_FIRST);
builder.getParagraphFormat().setAlignment(ParagraphAlignment.CENTER);

// تعيين خصائص الخط لنص الرأس.
builder.getFont().setName("Arial");
builder.getFont().setBold(true);
builder.getFont().setSize(14);
// حدد عنوان رأس الصفحة الأولى.
builder.write("Aspose.Words Header/Footer Creation - Title Page.");

// --- إنشاء رأس لصفحات أخرى غير الأولى. -
pageSetup.setHeaderDistance(20);
builder.moveToHeaderFooter(HeaderFooterType.HEADER_PRIMARY);

// أدخل الصورة في وضع مطلق في الزاوية العلوية / اليسرى من الرأس.
// تم ضبط المسافة من الحواف العلوية / اليسرى للصفحة على 10 نقاط.
String imageFileName = dataDir + "Aspose.Words.gif";
builder.insertImage(imageFileName, RelativeHorizontalPosition.PAGE, 10, RelativeVerticalPosition.PAGE, 10, 50, 50, WrapType.THROUGH);

builder.getParagraphFormat().setAlignment(ParagraphAlignment.RIGHT);
// حدد عنوان رأس آخر للصفحات الأخرى.
builder.write("Aspose.Words Header/Footer Creation");

// --- إنشاء تذييل لصفحات أخرى غير الأولى. -
builder.moveToHeaderFooter(HeaderFooterType.FOOTER_PRIMARY);

// نستخدم جدولاً يحتوي على خليتين لعمل جزء واحد من النص على السطر (مع ترقيم الصفحات)
// لمحاذاة الجزء الآخر من النص (مع حقوق النشر) ليتم محاذاة إلى اليمين.
builder.startTable();

// مسح حدود الجدول
builder.getCellFormat().clearFormatting();

builder.insertCell();
// اضبط الخلية الأولى على 1/3 من عرض الصفحة.
builder.getCellFormat().setPreferredWidth(PreferredWidth.fromPercent(100 / 3));

// أدخل نص ترقيم الصفحات هنا.
// يستخدم حقلي PAGE و NUMPAGES لحساب رقم الصفحة الحالية وإجمالي عدد الصفحات تلقائيًا.
builder.write("Page ");
builder.insertField("PAGE", "");
builder.write(" of ");
builder.insertField("NUMPAGES", "");

// محاذاة هذا النص إلى اليسار.
builder.getCurrentParagraph().getParagraphFormat().setAlignment(ParagraphAlignment.LEFT);

builder.insertCell();
// اضبط الخلية الثانية على 2/3 من عرض الصفحة.
builder.getCellFormat().setPreferredWidth(PreferredWidth.fromPercent(100 * 2 / 3));

builder.write("(C) 2020 Aspose Pty Ltd. All rights reserved.");

// قم بمحاذاة هذا النص إلى اليمين.
builder.getCurrentParagraph().getParagraphFormat().setAlignment(ParagraphAlignment.RIGHT);

builder.endRow();
builder.endTable();

builder.moveToDocumentEnd();
// قم بعمل فاصل صفحة لإنشاء صفحة ثانية تظهر عليها الرؤوس / التذييلات الأساسية.
builder.insertBreak(BreakType.PAGE_BREAK);

// احفظ المستند الناتج.
doc.save(dataDir + "HeaderFooter_Out.docx");

لقد تعلمنا حتى الآن كيفية إضافة أو إدراج رأس وتذييل في ملفات الكلمات. يوجد أدناه لقطة شاشة لكيفية ظهور الإخراج عند رؤيته عبر خيار معاينة الطباعة.

يمكن أن تساعد هذه الميزة كثيرًا عندما تتم معالجة مستندات DOC / DOCX المختلفة بواسطة تطبيقاتك حيث تريد إضافة بعض المحتوى كتذييل رأس لمستندات الإخراج.

إضافة أو إزالة رأس تذييل

دعنا ننتقل إلى التحقق من حذف الرأس والتذييل من ملفات MS Word (DOCX / DOC).

حذف رأس وتذييل مستند Word (DOCX / DOC) باستخدام Java

يمكنك حذف رأس وتذييل مستندات Word باستخدام Aspose.Words لجافا API. كما تمت مناقشته أعلاه ، يمكن أن يكون هناك ثلاثة أنواع مختلفة من رأس وتذييل الصفحة المضافة في المستند. على سبيل المثال ، في صفحة العنوان ، على الصفحات الزوجية ، وأرقام الصفحات الفردية. يمكنك حذف جميع الرؤوس والتذييلات في ملف Word ببساطة باتباع الخطوات التالية:

  1. قم بتحميل ملف DOCX / DOC المصدر
  2. ابحث عن رأس وتذييل الصفحة في صفحة العنوان وأرقام الصفحات الزوجية وأرقام الصفحات الفردية
  3. احذف القسم المطلوب عند العثور عليه
  4. حفظ ملف DOCX الناتج

يتبع الكود أدناه هذه الخطوات ويوضح كيفية حذف الرأس والتذييل في مستندات Word باستخدام Java:

Document doc = new Document(dataDir + "HeaderFooter.doc");
for (Section section : doc.getSections()) {
	// ما يصل إلى ثلاثة تذييلات مختلفة للرأس ممكنة في القسم (للصفحات الأولى والزوجية والفردية).
	// نتحقق منها ونحذفها جميعًا.
	HeaderFooter footer;
        HeaderFooter header;

	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_FIRST);
       	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_FIRST);
        
        
	if (footer != null)
		footer.remove();
        
        	if (header != null)
		header.remove();

	// يستخدم تذييل الرأس الأساسي للصفحات الفردية.
	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_PRIMARY);
	if (footer != null)
		footer.remove();
        
        header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_PRIMARY);
	if (header != null)
		header.remove();

	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_EVEN);
	if (footer != null)
		footer.remove();
        
       	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_EVEN);
	if (header != null)
		header.remove();
}

doc.save(dataDir + "RemoveHeaderFooter_Out.docx");

إزالة التذييل من مستند Word (DOCX / DOC) باستخدام Java

لقد ناقشنا بالفعل كيفية إزالة أو حذف الرأس والتذييل من ملفات الكلمات. ومع ذلك ، قد ترغب في إزالة تذييلات مستند Word فقط مع ترك الرأس كما هو. هذه المتطلبات ممكنة بسهولة من خلال الخطوات التالية:

  1. تحميل ملف كلمة المصدر (DOCX / DOC)
  2. كرر من خلال كل قسم من كلمة وثيقة
  3. تهيئة كائن HeaderFooter
  4. احذف التذييل من ملف الإدخال
  5. احفظ ملف DOCX / DOC المحدث

يوضح مقتطف الكود التالي كيفية إزالة التذييل من مستند Word باستخدام Java:

Document doc = new Document(dataDir + "HeaderFooter.doc");
for (Section section : doc.getSections()) {
	// ما يصل إلى ثلاثة تذييلات مختلفة ممكنة في القسم (للصفحات الأولى ، الزوجية والفردية).
	// نتحقق منها ونحذفها جميعًا.
	HeaderFooter footer;

	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_FIRST);
	if (footer != null)
		footer.remove();

	// التذييل الأساسي هو التذييل المستخدم للصفحات الفردية.
	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_PRIMARY);
	if (footer != null)
		footer.remove();

	footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_EVEN);
	if (footer != null)
		footer.remove();
}
doc.save(dataDir + "RemoveFooters.docx");

إزالة Header من مستند Word (DOCX / DOC) باستخدام Java

منذ أن تعلمنا إزالة أو حذف التذييل فقط من ملفات MS Word. دعنا نستكشف هذه الخطوة الأخرى حيث قد تحتاج إلى إزالة الرؤوس فقط من مستندات Word. ستبقى التذييلات كما هي ولن تتأثر لأن تركيزنا هنا ينصب على حذف الرؤوس فقط. توفر الخطوات التالية مخططًا للإجراء الذي يتعين اعتماده لهذا الغرض:

  1. تحميل ملف إدخال Word (DOCX / DOC)
  2. تهيئة مثيل لفئة HeaderFooter
  3. قم بإزالة الرؤوس من كل أقسام مستند الإدخال
  4. احفظ ملف DOCX المحدث

يوضح الرمز أدناه كيفية حذف أو إزالة الرأس من مستندات Word باستخدام Java:

Document doc = new Document(dataDir + "HeaderFooter.doc");
for (Section section : doc.getSections()) {
	// ما يصل إلى ثلاثة تذييلات مختلفة ممكنة في القسم (للصفحات الأولى ، الزوجية والفردية).
	// نتحقق منها ونحذفها جميعًا.
	HeaderFooter header;

	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_FIRST);
	if (header != null)
		header.remove();

	// التذييل الأساسي هو التذييل المستخدم للصفحات الفردية.
	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_PRIMARY);
	if (header != null)
		header.remove();

	header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_EVEN);
	if (header != null)
		header.remove();
}
doc.save(dataDir + "RemoveHeader.docx");

استنتاج

تعد إضافة أو إدراج أو إزالة أو حذف رأس وتذييل في مستندات Word من حالات الاستخدام المتكرر والمهمة جدًا لمعالجة الكلمات. تحتوي جميع المستندات تقريبًا على رؤوس وتذييلات ، والتي يمكن التلاعب بها باستخدام Aspose.Words لجافا API وفقًا لمتطلباتك. هذه المقالة هي نظرة عامة على الميزات ذات الصلة حيث يمكنك مناقشة أي حالة استخدام مخصصة ومتطلبات معنا عبر منتديات الدعم المجاني. لا تتردد في التواصل معنا لأية استفسارات أو مخاوف.

أنظر أيضا