pdf/F字体大小不是真实大小?

pdf/F字体大小不是真实大小?,pdf,acrobat,pdfbox,adobe-reader,Pdf,Acrobat,Pdfbox,Adobe Reader,我正在向我的可见签名添加文本。我的案文是: BT 1 0 0 1 0 1 Tm /F1 5 Tf (Hello World)Tj ET 5是字体大小。但这是如何计算的呢 我刚刚检查了文本的宽度,但不一样: AffineTransform affinetransform = new AffineTransform(); FontRenderContext frc = new FontRenderContext(affinetransform,true,true); Font font

我正在向我的可见签名添加文本。我的案文是:

BT
1 0 0 1 0 1 Tm
 /F1 5
Tf
(Hello World)Tj
ET
5是字体大小。但这是如何计算的呢

我刚刚检查了文本的宽度,但不一样:

AffineTransform affinetransform = new AffineTransform();
FontRenderContext frc = new FontRenderContext(affinetransform,true,true);     
Font font = new Font("myFont", Font.PLAIN, 5);
int textwidth = (int)(font.getStringBounds(text, frc).getWidth());

在我的PDC矩形中,5号太大了。有什么想法吗?如何计算5?

您还应该对该值应用Tm文本矩阵变换


“字体定义一个标准大小的字形。本标准的安排应确保紧密间隔文本行的标称高度为1个单位。在默认用户坐标系中,这意味着标准图示符大小为用户空间中的1个单位,或1⁄72英寸。然后,必须缩放标准大小字体以使其可用。比例因子被指定为Tf运算符的第二个操作数,从而在图形状态下设置文本字体大小参数。”

您还应该对此值应用Tm文本矩阵变换


“字体定义一个标准大小的字形。本标准的安排应确保紧密间隔文本行的标称高度为1个单位。在默认用户坐标系中,这意味着标准图示符大小为用户空间中的1个单位,或1⁄72英寸。然后,必须缩放标准大小字体以使其可用。比例因子被指定为Tf运算符的第二个操作数,从而在图形状态下设置文本字体大小参数。”

@stanlyF已经引用了字体大小的解释方式。特别注意,它大约是行的标称高度

您似乎有一种误解,认为它是宽度。正如您在中提到的,字符串的宽度取决于

  • 字体度量,特别是所涉及字符的字符宽度
  • 字体大小
  • 当前字符间距值
  • 当前字间距值
  • 水平缩放
  • 当前文本矩阵,以及
  • 电流变换矩阵

有关详细信息,请阅读。

@stanlyF已经引用了如何解释字体大小。特别要注意的是,它大约是行的标称高度

您似乎有一种误解,认为它是宽度。正如您在中提到的,字符串的宽度取决于

  • 字体度量,特别是所涉及字符的字符宽度
  • 字体大小
  • 当前字符间距值
  • 当前字间距值
  • 水平缩放
  • 当前文本矩阵,以及
  • 电流变换矩阵

有关详细信息,请阅读。

你能给我举个例子吗?你能给我举个例子吗?