قم بإنشاء ملفات PDF ذات علامات تمييز في Java

يستخدم الملف PDF الموسوم علامات لتحديد الهيكل المنطقي للمحتوى في المستند. يعمل هذا النوع من ملفات PDF على تحسين تجربة القراءة باستخدام التقنيات المساعدة وقارئات الشاشة. في المنشور السابق ، رأيت كيفية إنشاء ملفات PDF برمجيًا في تطبيقات Java. في هذه المقالة ، ستتعلم كيفية إنشاء ملفات PDF مميزة بعلامات برمجيًا في Java.

Java API لإنشاء ملفات PDF ذات علامات

لإنشاء ملفات PDF الموسومة ، سنستخدم Aspose.PDF for Java. إنها واحدة من واجهات برمجة التطبيقات الشائعة لإنشاء ملفات PDF ومعالجتها. باستخدام API ، يمكنك إنشاء ملفات PDF ذات التخطيطات البسيطة والمعقدة ومعالجتها وتحويلها بسلاسة. يمكنك تنزيل API أو تثبيته باستخدام تكوينات Maven التالية.

مخزن:

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

الاعتماد:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>22.4</version>
</dependency>

قم بإنشاء ملف PDF ذو علامات تمييز في Java

لإنشاء عناصر هيكلية في ملف PDF بعلامات تمييز ، يوفر Aspose.PDF for Java واجهة ITaggedContent. لذلك دعونا نرى كيفية استخدام هذه الواجهة لإنشاء ملف PDF مميز بعلامات في Java.

يوضح نموذج التعليمات البرمجية التالي كيفية إنشاء PDF بعلامات تمييز في Java.

// قم بإنشاء مستند جديد
Document document = new Document();

// احصل على محتوى للعمل مع PDF ذي علامات
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
            
// حدد العنوان واللغة للمستند
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");

// أضف العنوان
HeaderElement mainHeader = taggedContent.createHeaderElement();
mainHeader.setText("Main Header");

// أضف فقرة
ParagraphElement paragraphElement = taggedContent.createParagraphElement();
paragraphElement.setText("Lorem ipsum dolor sit amet, consectetur adipiscing elit. " +
"Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. " +
"Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet" +
"nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus." +
"Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat" +
"sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper" +
"pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus" +
"ac iaculis eget, tempus et magna. Sed non consectetur elit. Sed vulputate, quam sed lacinia luctus," +
"ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus.");

rootElement.appendChild(mainHeader);
rootElement.appendChild(paragraphElement);

// حفظ ملفات PDF ذات العلامات
document.save("tagged-pdf.pdf");

التالي هو إخراج نموذج التعليمات البرمجية أعلاه.

قم بإنشاء ملف PDF ذو علامات تمييز في Java

قم بإنشاء ملف PDF مميز باستخدام عناصر متداخلة في Java

في المثال السابق ، قمنا بإنشاء ملف PDF بعلامات تمييز بسيط يحتوي على فقرة. دعنا الآن نلقي نظرة على كيفية إضافة عناصر متداخلة في PDF بعلامات تمييز. فيما يلي خطوات إجراء هذه العملية.

يوضح نموذج التعليمات البرمجية التالي كيفية إضافة عناصر متداخلة في PDF بعلامات تمييز في Java.

// قم بإنشاء مستند جديد
Document document = new Document();

// احصل على محتوى للعمل مع PDF ذي علامات
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
            
// حدد العنوان واللغة للمستند
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");

// أضف العنوان
HeaderElement mainHeader = taggedContent.createHeaderElement();
mainHeader.setText("Main Header");

// إنشاء فقرة
ParagraphElement paragraphWithQuotes = taggedContent.createParagraphElement();
paragraphWithQuotes.getStructureTextState().setFont(FontRepository.findFont("Calibri"));
paragraphWithQuotes.getStructureTextState().setMarginInfo(new MarginInfo(10, 5, 10, 5));

// أضف عنصر الامتداد
SpanElement spanElement1 = taggedContent.createSpanElement();
spanElement1.setText("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit. ");
QuoteElement quoteElement = taggedContent.createQuoteElement();
quoteElement.setText("Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa.");
quoteElement.getStructureTextState().setFontStyle(FontStyles.Bold | FontStyles.Italic);
SpanElement spanElement2 = taggedContent.createSpanElement();
spanElement2.setText(" Sed non consectetur elit.");

// إلحاق بالفقرة
paragraphWithQuotes.appendChild(spanElement1);
paragraphWithQuotes.appendChild(quoteElement);
paragraphWithQuotes.appendChild(spanElement2);

rootElement.appendChild(mainHeader);
rootElement.appendChild(paragraphWithQuotes);

// حفظ ملفات PDF ذات العلامات
document.save("tagged-pdf.pdf");

تُظهر لقطة الشاشة التالية ملف PDF المميز بعناصر متداخلة.

قم بإنشاء ملف PDF مميز باستخدام عناصر متداخلة في Java

تصميم بنية النص في PDF ذي علامات التمييز

يمكنك أيضًا تطبيق النمط على النص في ملف PDF ذي علامات تمييز عن طريق تعيين نمط الخط ، والعائلة ، والحجم ، وما إلى ذلك. لهذا الغرض ، يتيح لك Aspose.PDF for Java ضبط الخط ، وحجم الخط ، ونمط الخط ، ولون المقدمة باستخدام StructureTextState فئة. يوضح نموذج التعليمات البرمجية التالي كيفية تطبيق نمط النص في PDF بعلامات تمييز في Java.

// قم بإنشاء مستند جديد
Document document = new Document();

// احصل على محتوى للعمل مع PDF ذي علامات
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
            
// حدد العنوان واللغة للمستند
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");

// أضف العنوان
HeaderElement mainHeader = taggedContent.createHeaderElement();
mainHeader.setText("Main Header");

// إنشاء فقرة
ParagraphElement paragraphWithQuotes = taggedContent.createParagraphElement();
taggedContent.getRootElement().appendChild(paragraphWithQuotes);

// ضبط التصميم
paragraphWithQuotes.getStructureTextState().setFontSize(18F);
paragraphWithQuotes.getStructureTextState().setForegroundColor(Color.getRed());
paragraphWithQuotes.getStructureTextState().setFontStyle(FontStyles.Italic);
            
// أضف نصًا
paragraphWithQuotes.setText("Red italic text.");

// حفظ ملفات PDF ذات العلامات
document.save("tagged-pdf.pdf");

توضيح عناصر الهيكل في ملف PDF ذي علامات تمييز في Java

لتوضيح عناصر البنية ، يوفر Aspose.PDF لـ Java فئة IllustrationElement. يوضح نموذج الكود التالي كيفية استخدام هذه الفئة لتوضيح عناصر البنية في ملف PDF بعلامات تمييز.

// قم بإنشاء مستند جديد
Document document = new Document();

// احصل على محتوى للعمل مع PDF ذي علامات
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
            
// حدد العنوان واللغة للمستند
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");

// إنشاء رسم توضيحي
IllustrationElement figure1 = taggedContent.createFigureElement();
taggedContent.getRootElement().appendChild(figure1);
figure1.setAlternativeText( "Figure One");
figure1.setTitle("Image 1");
figure1.setTag("Fig1");
figure1.setImage("aspose_pdf.png");

// حفظ ملفات PDF ذات العلامات
document.save("tagged-pdf.pdf");

احصل على رخصة مجانية

يمكنك الحصول على ترخيص مؤقت مجاني من أجل استخدام Aspose.PDF لجافا دون قيود تقييمية.

استنتاج

في هذه المقالة ، تعلمت كيفية إنشاء ملفات PDF ذات علامات تمييز في Java. علاوة على ذلك ، لقد رأيت كيفية إنشاء عناصر متداخلة ، وتطبيق الأنماط على النص ، وتوضيح عناصر الهيكل في ملف PDF بعلامات تمييز برمجيًا. بالإضافة إلى ذلك ، يمكنك استكشاف المزيد حول Java PDF API باستخدام التوثيق. في حال كان لديك أي أسئلة أو استفسارات ، يمكنك الاتصال بنا عبر المنتدى.

أنظر أيضا