0
내 Java 프로그램에서 XWPFDocument (Apache POI)를 사용하여 Docx에서 RTL 단락을 만드는 방법을 찾지 못했습니다. 다음은 XWPFDocument를 생성하는 코드입니다.XWPFDocument (Apache POI)에서 오른쪽에서 왼쪽으로 (RTL) 텍스트
XWPFParagraph title = document.createParagraph();
title.setAlignment(ParagraphAlignment.CENTER);
title.setVerticalAlignment(TextAlignment.CENTER);
title.setWordWrap(true);
XWPFRun titleRun = title.createRun();
titleRun.setText(reportDesign.getName());
XWPFTable s = document.createTable(resultList.size()+1, columnList.size());
// declare a row object reference
XWPFTableRow r = s.getRow(0);
// declare a cell object reference
XWPFTableCell c = null;
// create columnList.size() cells (0-(columnList.size()-1))
for (int cellnum = 0; cellnum < columnList.size(); cellnum++) {
c = r.getCell(cellnum);
c.setColor("c9c9c9");
c.setVerticalAlignment(XWPFVertAlign.CENTER);
c.setText(columnList.get(cellnum).getColumnHeader());
}
// create a sheet with resultList.size() rows (1-resultList.size())
for (int rownum = 0; rownum < resultList.size(); rownum++) {
// create a row
r = s.getRow(rownum+1);
// create columnList.size() cells (0-(columnList.size()-1))
for (int cellnum = 0; cellnum < columnList.size(); cellnum++) {
c = r.getCell(cellnum);
Object value = resultList.get(rownum).get(columnList.get(cellnum).getColumnKey());
if (value != null) {
c.setText(value.toString());
} else {
c.setText("");
}
}
}
저를 도와 주시겠습니까? 이 기능을 얻기 위해 POI (또는 유사한 솔루션)를 확장하는 논리적 인 방법이 있습니까?
는 어떻게, PDF 파일의 텍스트는 "ب ی ت ر ت"대신이 코드 내가 사용 "ترتیب"의로, 버릇이다 기본적으로 UTF-8 설정할 수 있습니다 옵션을 .fontEncoding ("UTF-8") 하지만 제대로 작성하는 대신. 모든 글자가 사라졌습니다 –
문제는 Docx 형식과 관련되어 있으므로이 문제와 관련이 없습니다. Apache POI를 사용하는 PDF에 대해서는 잘 모릅니다. –