所以我有一个图像,并将其位置设置为绝对(jsf)。然后,用户可以使用 primefaces 的拖放功能更改位置。新坐标(左/上)然后存储在 mysql 数据库中。当页面重新加载时,图像再次使用数据库中的坐标进行绝对定位。 例如图像坐标为(页面可滚动):left:68px;顶部:826.5px
--> 在java中我使用itext,我想用数据库中的绝对值放置图像。我知道PDF文档的0/0坐标是左下角。 我想使用 image.setAbsolutePosition() 但坐标如何匹配??? pdf 的正确坐标为:x 约为 135,y 约为 700,但这如何与屏幕上的坐标 68px/826.5px 结合在一起?我已经计算了很多,但不明白......
我还缩放图像:原始图像在屏幕上的高度:35x35 我使用: image.scaleAbsolute(25, 25);
那么这是如何工作的呢?谢谢:)
最佳答案
如果您有一个图像,其左上角位于左上角坐标系中的 {x,y}
处,并且您希望将其放置在使用左下角坐标系中原点和左下角用于放置,那么您需要知道图像的高度和文档的高度。 {x}
不会更改,但新的 {y}
应为 Document.Height - {original y} - Image.Height}
.
下图显示了左上角系统中 {50,50}
处的图像。将其添加到文档后,我们需要知道文档的高度(800px),以便我们可以进行映射。我们还需要知道图像的高度(75px)。
关于具有绝对位置的图像到pdf itext中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24714059/