Wie lese ich die Schriftgröße jedes Wortes in einem Word-Dokument mit dem POI?
Ich versuche herauszufinden, ob im Word-Dokument etwas mit der Schriftart 2 vorhanden ist. Dies konnte ich jedoch nicht. Zunächst habe ich versucht, die Schriftart jedes Wortes in einem Beispielwortdokument zu lesen, das nur eine Zeile und 7 Wörter enthält. Ich erhalte nicht die richtigen Ergebnisse.
Hier ist mein Code:
HWPFDocument doc = new HWPFDocument (fileStream);
WordExtractor we = new WordExtractor(doc);
Range range = doc.getRange()
String[] paragraphs = we.getParagraphText();
for (int i = 0; i < paragraphs.length; i++) {
Paragraph pr = range.getParagraph(i);
int k = 0
while (true) {
CharacterRun run = pr.getCharacterRun(k++);
System.out.println("Color: " + run.getColor());
System.out.println("Font: " + run.getFontName());
System.out.println("Font Size: " + run.getFontSize());
if (run.getEndOffSet() == pr.getEndOffSet())
break;
}
}
Der obige Code verdoppelt jedoch immer die Schriftgröße. wenn die tatsächliche Schriftgröße in dem Dokument 12 ist, gibt es 24 aus und wenn die tatsächliche Schrift 8 ist, gibt es 16 aus.
Ist dies die richtige Art, die Schriftgröße aus einem Word-Dokument zu lesen?