0
私はこのような文字を印刷しようとしている:特殊文字
°µ± Ω≥≤Δα
私は最初の3に問題を持っていないんだけど、第2の組の文字が印刷されていませんPrimefaces Appからレポートをコンパイルして実行すると
try {
fc = FacesContext.getCurrentInstance();
ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
ec.responseReset();
ec.setRequestCharacterEncoding("UTF-8");
ec.setResponseHeader("Content-Disposition", "inline; filename=\""
+ "Report.pdf\"");// opens in same page
ec.setResponseContentType("application/pdf");
OutputStream output = ec.getResponseOutputStream();
Connection jdbcConnection = datasource.getConnection();
JasperDesign jasperDesign = JRXmlLoader.load(reportFile);
JasperReport jasperReport = JasperCompileManager
.compileReport(jasperDesign);
JasperPrint jasperPrint = JasperFillManager.fillReport(
jasperReport, parameterMap, jdbcConnection);
//JasperExportManager.exportReportToPdfStream(jasperPrint, output);
JRPdfExporter pdf = new JRPdfExporter();
pdf.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
pdf.setParameter(JRExporterParameter.OUTPUT_STREAM, output);
pdf.exportReport();
output.flush();
output.close();
fc.getCurrentInstance().responseComplete();
} catch (Exception e) {
e.printStackTrace();
}
レポートが実行され、印刷ジャスパーStudioからテストする場合、私は必要なすべての文字:
は、ここで私はレポートを印刷するために使用しているコードです。ここでの主な問題はPDFストリームのエンコードですが、私は提案にはオープンしています。
あなたはフォント拡張機能を使用していますか? –
いいえ、フォントの問題ではないためです。 Jasper Studioでは、定義済みのフォントで動作します。 @AlexK – joseluiselp
それはフォントの問題かもしれません。また、フォント拡張機能を使用する必要があります。 –