Формирование файла pdf
Формирую файл pdf. При локальном формировании файла в Idea - pdf`ка формируется корректно. А если посылать этот файл в MiniO S3 - вместо русских букв генерируются символы '#'
Сам пробовал указывать явно кодировку через metadata.setContentType("application/pdf;charset=utf-8"); Не помогает :-(
Сейчас больше склоняюсь к тому, чтобы добавлять шрифты. Подскажите, как мне это можно добавить в уже существующий код.
Заранее спасибо!
@SneakyThrows
public byte[] createDocument(PaymentInstructionModel model) {
WordprocessingMLPackage word = Docx4J.load(new ClassPathResource("template.docx").getInputStream());
MainDocumentPart mainDocumentPart = word.getMainDocumentPart();
Map<String, String> variables = objectMapper.convertValue(model, new TypeReference<>() {});
mainDocumentPart.variableReplace(variables);
ByteArrayOutputStream os = new ByteArrayOutputStream();
Docx4J.toPDF(word, os);
return os.toByteArray();
}
byte[] document = documentService.createDocument(model);
String key = String.format("%s/%d-%d-%d_Платёж_№%s.pdf",
event.getPaymentNumber(),
event.getPaymentDate().getYear(),
event.getPaymentDate().getMonthValue(),
event.getPaymentDate().getDayOfMonth(),
event.getPaymentNumber());
ObjectMetadata metadata = new ObjectMetadata();
metadata.setContentLength(document.length);
amazonS3.putObject(S3Buckets.CLIENT_PAYMENT_PDF_BUCKET, key, new ByteArrayInputStream(document), metadata);