在itext中的扫描文档上设置文本

csi_bern

我对此主题进行了大量研究,但是每次“使用压模的getOverContent函数”时,我发现的一切都是。我做到了,它仍然无法正常工作。

我编写了一个程序,将一个库的PDF合并在一起,而不是将这个新文档分页(希望您能按照我的写作)。原始PDF是自制的(直接保存为PDF)还是非自制的(已扫描)。最后的那边有麻烦。分页显示在第一个而不是秒上(它可能存在,但应该在图像后面)!

这是分页代码,有人想到了,我在哪里弄错了?

PdfReader reader = new PdfReader(source);
    PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(destination));
    for (int i = start + 1; i <= reader.getNumberOfPages(); i++) {
        Phrase noPage = new Phrase((i - start) + "", new Font(FontFamily.COURIER, 14));
        float x = reader.getPageSize(i).getRight(20);
        float y = reader.getPageSize(i).getTop(20);

        PdfContentByte content = stamper.getOverContent(i);
        content.beginText();
        ColumnText.showTextAligned(content,Element.ALIGN_CENTER, noPage, x, y, 0);
        content.endText();
    }
    stamper.close();
    reader.close();

谢谢

在Bruno回答之后,我做了以下事情:

PdfReader reader =新的PdfReader(源代码); PdfStamper压模=新的PdfStamper(阅读器,新的FileOutputStream(destination));

for (int i = start + 1; i <= reader.getNumberOfPages(); i++) {
    Phrase noPage = new Phrase((i - start) + "", new Font(FontFamily.COURIER, 14));
    float x = reader.getCropBox(i).getRight(20);
        float y = reader.getCropBox(i).getTop(20);

        PdfContentByte content = stamper.getOverContent(i);
        ColumnText.showTextAligned(content,Element.ALIGN_CENTER, noPage, x, y, 0);
    }
    stamper.close();
    reader.close();

但它仍然无法正常工作

例如:https : //www.transfernow.net/24axn1g4wq4l

mkl

原始的PDF是自制的(直接保存在PDF中)还是不是自制的(已扫描)。最后的那边有麻烦。分页显示在第一个而不是秒上(它可能存在,但应该在图像后面)!

问题不在于扫描了第二类PDF,而是它使用了页面旋转

旋转页面时,iText在不足和过度内容的开头插入坐标系旋转指令,以确保在不进行进一步变换的情况下绘制的任何文本都在旋转的页面上垂直显示。

选择绝对坐标时,显然需要考虑坐标系的这种旋转。

因此,代替

reader.getPageSize(i)

你应该用

reader.getPageSizeWithRotation(i)

或者,您可以使用以下命令切换此iText机制

stamper.setRotateContents(false);

然后在所有后续操作中明确考虑页面轮换的存在。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

iText 7如何在整个文档中设置字体

来自分类Dev

从扫描的文档中提取文本

来自分类Dev

从扫描的文档中提取文本

来自分类Dev

iText- ColumnText在Rectangle中设置文本适合的大小

来自分类Dev

扫描Rmarkdown文档中的bibtexkey

来自分类Dev

在扫描的文档中分割文本行

来自分类Dev

获取并设置itext pdf文档的元数据

来自分类Dev

在eclipse插件中为内容建议设置帮助文本/文档

来自分类Dev

在流文档中设置文本部分的样式

来自分类Dev

在流文档中设置文本部分的样式

来自分类Dev

在Mongodb中的嵌入式文档上设置索引

来自分类Dev

合并文档以在iText(Java)中创建目录

来自分类Dev

如何从终端上自动扫描Linux上的文档?

来自分类Dev

如何在扫描的.jpeg中编辑文本?

来自分类Dev

如何在扫描的.jpeg中编辑文本?

来自分类Dev

扫描Java中的文本文件

来自分类Dev

在布局中的QLabel上设置文本,不会调整大小

来自分类Dev

在布局中的QLabel上设置文本,不会调整大小

来自分类Dev

在 Android 中的地图点击上设置文本值

来自分类Dev

从文档类文件设置TextField的文本

来自分类Dev

如何在 Windows Server 2019 上连接扫描仪并扫描文档?

来自分类Dev

如何在记事本++编辑器中为新文档设置默认文本?

来自分类Dev

在 Eclipse 文本编辑器中执行“撤消”操作后将文档设置回干净

来自分类Dev

在GSI Vs上扫描在DynamoDB中扫描整个表

来自分类Dev

利用iText PDF文件中的文本替换

来自分类Dev

在文档中检测样式文本

来自分类Dev

模糊流程文档中的文本

来自分类Dev

从 xml 文档中获取文本

来自分类Dev

在Itext表中设置标题行

Related 相关文章

热门标签

归档