Увеличьте расстояние между двумя парагафами в существующем PDF - PullRequest
0 голосов
/ 02 января 2019

Я восстановил существующий PDF, но у меня недостаточно места, чтобы записать некоторые детали между двумя абзацами.Я использую getscale и addtemplate, чтобы добавить то, что я хочу, но место слишком мало.Можно ли уменьшить разницу?

Я пытаюсь, но метод addtemplate из pdfcontentbyte очень сложен для понимания.

Это код:

private static float getScale(float width, float height) {
    float scaleX = PageSize.A4.getWidth() / width;
    float scaleY = PageSize.A4.getHeight() / height;
    return Math.min(scaleX, scaleY);
}

Document docu = new Document(PageSize.A4, 0, 0, 0, 0);
InputStream istreamImage = null;
istreamImage = DocumentUtils.recupererInputStream(parametreApplication.getModelContratMonacoId(), "mon");
docu.setMargins(0, 0, 0, 0);
PdfWriter writer = PdfWriter.getInstance(docu, osFusion);
docu.open();
PdfContentByte cb = writer.getDirectContent();
PdfReader reader = new PdfReader(istreamImage);
HashMap<String, Integer[]> mapParametre = null;
final Font timeNewRoman = FontFactory.getFont( "Times-Roman" , 28, Color.GRAY);
for(int numPage = 1; numPage <= reader.getNumberOfPages() ; numPage++) {
    PdfImportedPage page = writer.getImportedPage(reader, numPage);                                     
    docu.newPage();
    docu.setMargins(0, 0, 0, 0);
    Rectangle pagesize =reader.getPageSizeWithRotation(numPage);
    float oWidth = pagesize.getWidth();
    float oHeight = pagesize.getHeight()+1;
    float scale = getScale(oWidth, oHeight);
    cb.addTemplate(page, scale, 0, 0, scale, 0, 0);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...