Hi
I am using Aspose word Java and I add a stamp to PDF
all works using English characters
but when use non english , the order of the text mixed
see code example
FontRepository.setLocalFontPaths(Arrays.asList(new String[] { FONTS_PATH, "/usr/share/fonts/" }));
TextStamp textStamp = new TextStamp(String.format("%s", fileData.getHeaderStamp()));
LOGGER.info("create Header get Fonts path" + FontRepository.getLocalFontPaths());
//textStamp.getTextState().setFont(FontRepository.findFont("arial-unicode-ms",true));
LOGGER.info("Get Text stamp actual stamp" + textStamp.getTextState().getFont().getFontName());
textStamp.getTextState().setFontSize(8);
textStamp.getTextState().setFontStyle(FontStyles.Regular);
textStamp.getTextState().setForegroundColor(Color.getGray());
textStamp.setOpacity(0.5);
textStamp.setVerticalAlignment(VerticalAlignment.Top);
textStamp.setLeftMargin(5);
textStamp.setTopMargin(5);
textStamp.setTextAlignment(Direction.L2R);
LOGGER.info("Header text stamp" + textStamp.getValue());
return textStamp;
============================================================================
private void addPrintedByStamp(FileData_v5 fileData, com.aspose.pdf.Document pdfDocument, String directory) {
int totalNumOfPages = pdfDocument.getPages().size();
TextStamp headerStamp = createHeaderStamp(fileData);
for (int Page_counter = 1; Page_counter <= totalNumOfPages; Page_counter++) {
pdfDocument.getPages().get_Item(Page_counter).addStamp(headerStamp);
}
pdfDocument.setManualDisposeEnabled(true);
printStampJustForInternalVerification(pdfDocument);/////////
LOGGER.info("Herder Stamp text" + headerStamp.getValue());
pdfDocument.save(directory.concat(fileData.getFileName()).concat(".pdf"));
Filedata has a text
666, abc:999,Department: חחח,class:gee
and after addStamp I expect to see
666, abc:999,Department: חחח,class:gee
but Actualy:
abc:999,Department ,666: חחח,class:gee
SET YOUR EDITOR TO READ THE TEXT FROM LEFT TO RIGHT TO SEE THE CORRECT VALUES
please advise