Etiketli bir PDF dosyası, belgedeki içeriğin mantıksal yapısını tanımlamak için etiketleri kullanır. Bu tür PDF, yardımcı teknolojileri ve ekran okuyucuları kullanarak okuma deneyimini geliştirir. Önceki gönderide, Java uygulamalarında programlı olarak PDF dosyalarının nasıl oluşturulacağını gördünüz. Bu makalede, Java’da programlı olarak etiketli PDF dosyalarının nasıl oluşturulacağını öğreneceksiniz.
- Etiketli PDF Dosyaları Oluşturmak için Java API
- Etiketli bir PDF Dosyası Oluşturun
- İç İçe Öğelerle Etiketli PDF Oluşturma
- Etiketli PDF’de Metin Yapısını Şekillendirme
- Etiketli bir PDF’de Yapı Elemanlarını Gösterme
Etiketli PDF Dosyaları Oluşturmak için Java API
Etiketli PDF dosyalarını oluşturmak için Aspose.PDF for Java kullanacağız. PDF oluşturma ve işleme için popüler API’lerden biridir. API’yi kullanarak, basit ve karmaşık mizanpajlara sahip PDF dosyalarını sorunsuz bir şekilde oluşturabilir, işleyebilir ve dönüştürebilirsiniz. API’yi indirebilir veya aşağıdaki Maven yapılandırmalarını kullanarak yükleyebilirsiniz.
Depo:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Bağımlılık:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>22.4</version>
</dependency>
Java’da Etiketli PDF Dosyası Oluşturun
Aspose.PDF for Java, etiketli bir PDF’de yapı öğeleri oluşturmak için ITaggedContent arayüzünü sağlar. Öyleyse, Java’da etiketli bir PDF dosyası oluşturmak için bu arayüzü nasıl kullanacağımızı görelim.
- Belge sınıfını kullanarak yeni bir PDF oluşturun.
- Belgenin TaggedContent referansını bir ITaggedContent nesnesine alın.
- Başlığı, başlığı ve dili ayarlayın ve ITaggedContent nesnesini kullanarak PDF’ye öğeler ekleyin.
- ITaggedContent.createParagraphElement() yöntemini kullanarak yeni bir ParagraphElement oluşturun ve metnini ayarlayın.
- ITaggedContent.getRootElement().appendChild() yöntemini kullanarak paragrafı belgeye ekleyin.
- Son olarak, Document.save(String) yöntemini kullanarak PDF dosyasını kaydedin.
Aşağıdaki kod örneği, Java’da etiketli bir PDF’nin nasıl oluşturulacağını gösterir.
// Yeni bir belge oluştur
Document document = new Document();
// Etiketli PDF ile çalışmak için İçerik Alın
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
// Belge için başlık ve dil belirleyin
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");
// Başlık ekle
HeaderElement mainHeader = taggedContent.createHeaderElement();
mainHeader.setText("Main Header");
// paragraf ekle
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);
// Etiketli PDF'yi kaydet
document.save("tagged-pdf.pdf");
Yukarıdaki kod örneğinin çıktısı aşağıdadır.
Java’da İç İçe Öğelerle Etiketli PDF Oluşturma
Önceki örnekte, paragraf içeren basit bir etiketli PDF oluşturduk. Şimdi etiketli bir PDF’de iç içe öğelerin nasıl ekleneceğine bir göz atalım. Aşağıda bu işlemi gerçekleştirmek için adımlar verilmiştir.
- Document sınıfını kullanarak yeni bir PDF oluşturun veya mevcut bir PDF yükleyin.
- Belgenin TaggedContent referansını bir ITaggedContent nesnesine alın.
- Başlığı, başlığı ve dili ayarlayın ve ITaggedContent nesnesini kullanarak PDF’ye öğeler ekleyin.
- ITaggedContent.createParagraphElement() yöntemini kullanarak yeni bir ParagraphElement oluşturun ve metnini ayarlayın.
- Yuvalanmış öğeleri eklemek için SpanElement sınıfını kullanın.
- ParagraphElement.appendChild() yöntemini kullanarak iç içe öğeyi paragrafa ekleyin.
- ITaggedContent.getRootElement().appendChild() yöntemini kullanarak paragrafı belgeye ekleyin.
- Son olarak, Document.save(String) yöntemini kullanarak PDF dosyasını kaydedin.
Aşağıdaki kod örneği, Java’da etiketli bir PDF’ye iç içe öğelerin nasıl ekleneceğini gösterir.
// Yeni bir belge oluştur
Document document = new Document();
// Etiketli PDF ile çalışmak için İçerik Alın
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
// Belge için başlık ve dil belirleyin
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");
// Başlık ekle
HeaderElement mainHeader = taggedContent.createHeaderElement();
mainHeader.setText("Main Header");
// Paragraf oluştur
ParagraphElement paragraphWithQuotes = taggedContent.createParagraphElement();
paragraphWithQuotes.getStructureTextState().setFont(FontRepository.findFont("Calibri"));
paragraphWithQuotes.getStructureTextState().setMarginInfo(new MarginInfo(10, 5, 10, 5));
// Yayılma öğesi ekle
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.");
// paragrafa ekle
paragraphWithQuotes.appendChild(spanElement1);
paragraphWithQuotes.appendChild(quoteElement);
paragraphWithQuotes.appendChild(spanElement2);
rootElement.appendChild(mainHeader);
rootElement.appendChild(paragraphWithQuotes);
// Etiketli PDF'yi kaydet
document.save("tagged-pdf.pdf");
Aşağıdaki ekran görüntüsü, etiketlenmiş PDF’yi iç içe öğelerle gösterir.
Etiketli PDF’de Metin Yapısını Şekillendirme
Yazı tipi stilini, ailesini, boyutunu vb. ayarlayarak etiketli bir PDF’deki metne stil uygulayabilirsiniz. Bunun için Aspose.PDF for Java [StructureTextState] kullanarak yazı tipini, yazı tipi boyutunu, yazı tipi stilini ve ön plan rengini ayarlamanıza olanak tanır. 22 sınıfı. Aşağıdaki kod örneği, Java’da etiketli bir PDF’de metin stilinin nasıl uygulanacağını gösterir.
// Yeni bir belge oluştur
Document document = new Document();
// Etiketli PDF ile çalışmak için İçerik Alın
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
// Belge için başlık ve dil belirleyin
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");
// Başlık ekle
HeaderElement mainHeader = taggedContent.createHeaderElement();
mainHeader.setText("Main Header");
// Paragraf oluştur
ParagraphElement paragraphWithQuotes = taggedContent.createParagraphElement();
taggedContent.getRootElement().appendChild(paragraphWithQuotes);
// Stili ayarla
paragraphWithQuotes.getStructureTextState().setFontSize(18F);
paragraphWithQuotes.getStructureTextState().setForegroundColor(Color.getRed());
paragraphWithQuotes.getStructureTextState().setFontStyle(FontStyles.Italic);
// Yazı ekle
paragraphWithQuotes.setText("Red italic text.");
// Etiketli PDF'yi kaydet
document.save("tagged-pdf.pdf");
Java’da Etiketli Bir PDF’de Yapı Öğelerini Gösterme
Aspose.PDF for Java, yapı öğelerini göstermek için IllustrationElement sınıfını sağlar. Aşağıdaki kod örneği, etiketli bir PDF’deki yapı öğelerini göstermek için bu sınıfın nasıl kullanılacağını gösterir.
// Yeni bir belge oluştur
Document document = new Document();
// Etiketli PDF ile çalışmak için İçerik Alın
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
// Belge için başlık ve dil belirleyin
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");
// illustrationElement oluştur
IllustrationElement figure1 = taggedContent.createFigureElement();
taggedContent.getRootElement().appendChild(figure1);
figure1.setAlternativeText( "Figure One");
figure1.setTitle("Image 1");
figure1.setTag("Fig1");
figure1.setImage("aspose_pdf.png");
// Etiketli PDF'yi kaydet
document.save("tagged-pdf.pdf");
Ücretsiz Lisans Alın
Aspose.PDF for Java’yı değerlendirme sınırlamaları olmadan kullanmak için ücretsiz bir geçici lisans alabilirsiniz.
Çözüm
Bu makalede, Java’da etiketli PDF dosyalarının nasıl oluşturulacağını öğrendiniz. Ayrıca, etiketli bir PDF’de programlı olarak iç içe öğeler oluşturmayı, metne stil uygulamayı ve yapı öğelerini göstermeyi gördünüz. Ayrıca, belgeleri kullanarak Java PDF API hakkında daha fazlasını keşfedebilirsiniz. Herhangi bir sorunuz veya sorunuz olması durumunda forumumuz aracılığıyla bizimle iletişime geçebilirsiniz.