Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将泰米尔语单词docx交给java制作PDF_Java_Fonts - Fatal编程技术网

如何将泰米尔语单词docx交给java制作PDF

如何将泰米尔语单词docx交给java制作PDF,java,fonts,Java,Fonts,我使用xDoc报告生成PDF,将docx文件作为输入。当我使用英语docx文件时,一切都很好,当我使用其他语言docx文件时,我无法获得可读的pdf 这是我的密码 File fil = new File( "/home/madurauser/analyzer/LOS/DocxProjectWithVelocity1.docx"); FileInputStream in = new FileInputStream(fil);

我使用xDoc报告生成PDF,将docx文件作为输入。当我使用英语docx文件时,一切都很好,当我使用其他语言docx文件时,我无法获得可读的pdf

这是我的密码

        File fil = new File(
                "/home/madurauser/analyzer/LOS/DocxProjectWithVelocity1.docx");

        FileInputStream in = new FileInputStream(fil);
        IXDocReport report = XDocReportRegistry.getRegistry().loadReport(
                in, TemplateEngineKind.Velocity);

        FieldsMetadata metadata = new FieldsMetadata();
        metadata.addFieldAsList("developers.Inst");
        metadata.addFieldAsList("developers.MBalance");
        metadata.addFieldAsList("developers.MDemand");
        metadata.addFieldAsList("developers.MInterest");
        metadata.addFieldAsList("developers.MPrincipal");
        metadata.addFieldAsList("developers.GBalance");
        metadata.addFieldAsList("developers.GDemand");
        metadata.addFieldAsList("developers.GInterest");
        metadata.addFieldAsList("developers.GPrincipal");
        metadata.addFieldAsList("developers.Members");
        metadata.addFieldAsList("developers.Month");
        report.setFieldsMetadata(metadata);

        IContext context = report.createContext();
        List<Developer> developers = new ArrayList<Developer>();
        List<LoanRepaymentSchedule> repay = this.loanService
                .getLoanRepaymentScheduleById(groupLoan.getLoanId()
                        .longValue());

        LoanRepaymentSchedule rep = repay.get(repay.size() - 1);

        Project project = new Project(lt, loan.getGroupName(),
                lastFiveDigitsAccNo, groupDto.getVillageName(),
                groupDto.getCluster(), groupDto.getClusterCentre(),
                groupDto.getRegion(), intLoanAmount, loan.getLoanAccNo(),
                Long.valueOf(loan.getLoanInstallments()),
                loan.getGroupId(), decIntRate, loan.getAnimator(),
                loan.getRep1(), loan.getRep2(), noOfDays, brokenPeriod,
                sanctionDate, lastFiveDigitsAccNo, strSancDate,
                rep.getMemberCount());
        context.put("project", project);
        for (Iterator iterator = repay.iterator(); iterator.hasNext();) {

            LoanRepaymentSchedule loanRepaymentSchedule = (LoanRepaymentSchedule) iterator
                    .next();
            String month;
            Integer year = loanRepaymentSchedule.getYear();
            Integer formattedDate = year % 100;

            developers.add(new Developer(intgBal, intgDem, intgInt,
                    intgPri, intmBal, intmDem, intmInt, intmPri, month,
                    loanRepaymentSchedule.getMemberCount(),
                    loanRepaymentSchedule.getMemberCount(),
                    loanRepaymentSchedule.getSerialNo()));
            context.put("developers", developers);

        }

        // OutputStream out = new FileOutputStream(new File(conv+".pdf"));
        OutputStream out = new FileOutputStream(new File(files + "_" + groupID
                + ".pdf"));
        Options options = Options.getTo(ConverterTypeTo.PDF).via(
                ConverterTypeVia.XWPF);
        report.convert(context, options, out);
File fil=新文件(
“/home/madurauser/analyzer/LOS/DocxProjectWithVelocity1.docx”);
FileInputStream in=新的FileInputStream(fil);
IXDocReport report=XDocReportRegistry.getRegistry().loadReport(
在中,TemplateEngineKind.Velocity);
FieldsMetadata=新的FieldsMetadata();
metadata.addFieldAsList(“developers.Inst”);
metadata.addFieldAsList(“developers.MBalance”);
metadata.addFieldAsList(“developers.MDemand”);
metadata.addFieldAsList(“developers.MInterest”);
metadata.addFieldAsList(“developers.MPrincipal”);
addFieldAsList(“developers.GBalance”);
addFieldAsList(“developers.GDemand”);
metadata.addFieldAsList(“developers.GInterest”);
addFieldAsList(“developers.GPrincipal”);
metadata.addFieldAsList(“developers.Members”);
metadata.addFieldAsList(“developers.Month”);
报告.setFieldsMetadata(元数据);
IContext context=report.createContext();
List developers=new ArrayList();
List return=this.loanService
.getLoanRepaymentScheduleById(groupLoan.getLoanId()
.longValue());
LoanRepaymentSchedule rep=return.get(return.size()-1);
Project=新项目(lt,loan.getGroupName(),
lastFiveDigitsAccNo,groupDto.getVillageName(),
groupDto.getCluster(),groupDto.getclustercenter(),
groupDto.getRegion(),intLoanAmount,loan.getLoanAccNo(),
Long.valueOf(loan.getLoanInstallations()),
loan.getGroupId(),Decentrate,loan.getAnimator(),
loan.getRep1(),loan.getRep2(),noOfDays,brokenPeriod,
批准日期,最后五个数字编号,strSancDate,
rep.getMemberCount());
上下文。put(“项目”,project);
for(Iterator Iterator=repreat.Iterator();Iterator.hasNext();){
LoanRepaymentSchedule LoanRepaymentSchedule=(LoanRepaymentSchedule)迭代器
.next();
弦月;
整数年=贷款付款计划。getYear();
整数formattedDate=年份%100;
添加(新开发人员(intgBal、intgDem、intgInt、,
intgPri,intmBal,intmDem,intmInt,intmPri,月,
loanRepaymentSchedule.getMemberCount(),
loanRepaymentSchedule.getMemberCount(),
loanRepaymentSchedule.getSerialNo());
上下文。put(“开发者”,开发者);
}
//OutputStream out=新文件OutputStream(新文件(conv+“.pdf”);
OutputStream out=新文件OutputStream
+“.pdf”);
Options=Options.getTo(ConverterTypeTo.PDF).via(
转换器类型via.XWPF);
转换(上下文、选项、输出);
这是我的泰米尔字体docx,作为输入

生成的输出如下所示。


如果您有任何想法,我们将不胜感激。

@Jongware,我已经编辑了这个问题,希望屏幕能更好地解释您。您是否尝试过同样的方法打开office?对不起,您能解释一下吗?您可以看到我的答案,这可能会对您有所帮助。[1] [1]:谢谢,试过这个后让你知道。。。