当前位置: 首页 > 知识库问答 >
问题:

在iTextSharp中,可以更改PdfTemplate对象的宽度和高度。我们可以对iText7 PDFCanvas/XObject做同样的操作吗?

秦琦
2023-03-14

我正在将一些重iTextSharp的VB.NET代码转换为iText7,旧的iTextSharp代码的一部分会更改Pdftemplate对象的宽度和高度以适应给定的情况。

现在在iText7中,我有一个PdfCanvas对象绑定到一个PdfFormXObject上,该对象与以前的PdfTemplate对象的角色相同。到目前为止还不错。

但是,唉,我有这个旧的代码要对抗:

Dim oObjectTemplate As PdfTemplate = oContainerTemplate
dTemplateSizeIncrease = oObject.FontSize * 4
oObjectTemplate.Width += CSng(dTemplateSizeIncrease)
oObjectTemplate.Height += CSng(dTemplateSizeIncrease)

我试着从强大的文档中寻找答案,但没有找到将iTextSharp转换为iText7的明智之处。

在代码的这一点上,对象模板(及其iText7对应部分)已经完成了一些逻辑操作,并且已经设置了某些值。我并不急于创建一个新的实例来适应大小的变化。

共有1个答案

申阳伯
2023-03-14

iText 5仅仅更改了表单XObject的bbox,因此完全可以在iText 7中做同样的事情--只需将修改后的bbox设置为PDFFormXObject实例。示例代码(用Java编写,但很容易转换成C#或VB.NET):

Rectangle bbox = formXObject.getBBox().toRectangle();
bbox.setHeight(bbox.getHeight() + 100);
bbox.setWidth(bbox.getWidth() + 100);
formXObject.setBBox(new PdfArray(bbox));
 类似资料:
  • 我有一个幻灯片类的东西,图像将尽可能扩大,但不会超过视口的宽度或高度。基本上。 我想让这些图像具有响应性,因为“尽可能大”的手机和超大的桌面是完全不同的。我无法使用<代码> 我从: 但这并不像屏幕的方向那么简单,因为实际涉及的纵横比可能会变得非常奇怪,无论是视口(非常高的手机、浏览器工具栏等)还是图像本身;同一张图像可能在一个屏幕上受到宽度限制,但在另一个屏幕上受到高度限制。我想我可以编写一个解析

  • 问题内容: 假设我想使用图像修饰指向某些文件类型的链接。我可以声明我的链接为 然后像CSS 现在,这很好用,除非不是我的链接文本的合适大小。 我希望能够告诉浏览器缩放图像,但是我终生无法找到正确的语法。还是像背景图片那样无法调整大小? ETA:我倾向于a)将源图像的大小调整为服务器端的“正确”大小,和/或b)更改标记以简单地内联提供IMG标签。我试图避免这两件事,但是它们听起来比单纯用CSS做事更

  • 问题内容: 假设我的div的宽度为正文的50%。如何使其高度等于该值?因此,当浏览器窗口的宽度为1000px时,div的高度和宽度均为500px。 问题答案: 这可以通过CSS hack完成(请参见其他答案),但是也可以使用JavaScript轻松完成。 将div的宽度设置为(例如)50%,使用JavaScript检查其宽度,然后相应地设置高度。这是使用jQuery的代码示例: 如果希望框随着浏览

  • 问题内容: 我正在测试自己的用户界面,发现搜索栏有点过窄,无法满足我的需求。我还想确保视力较差或手动灵活性较差的人在调配所需界面时没有问题。 所以,我想做的是调整内部的高度。 我尝试过的操作:1.在情节提要中,添加“ 高度限制”-结果:搜索栏大小增加,但内部保持不变。 访问内部并修改其高度-结果:控制台输出显示参数已修改,但是在屏幕上,高度保持不变。 注意-我可以修改使用方法2的其他参数,并且更改

  • 问题内容: 我试图更改HTML表单,输入类型文件。这是我的代码: HTML,表格ID =表格 .CSS 这两种方法均无效。我确实从某些网站(如Facebook,YouTube,Google或Twitter)看到,它们具有不同的风格。想知道他们是如何做到的。 问题答案: 您不能对输入类型的文件执行任何操作(巨大的黑客攻击除外)。我知道这听起来很可怕,但是Web标准仍然没有提出解决方案。 但是我建议您

  • 问题内容: 我知道我们可以重载类实例的行为,例如- 我们可以更改的结果print s: 我们可以更改结果print Sample吗? 问题答案: 您可以使用元类: Python 3: Python 2: 输出: 元类是类的类。它与类的关系类似于类与实例的关系。使用相同的class语句。type而是从继承表单object使其成为一个元类。按惯例self由代替cls。