itextsharp将点数转换为cm

时间:2013-01-29 23:49:17

标签: c# itextsharp

我正在使用iTextsharp - 一个java pdf lib - 动态生成pdfs。 据我所知,测量结果以点数表示。我知道在哪里放置厘米的地方。 所以我需要转换: 点< - >厘米

1 个答案:

答案 0 :(得分:17)

iText(夏普)有一个Utilities类(包com.itextpdf.text /命名空间iTextSharp.text),其中包含几种静态转换方法,特别是:

// iText
public static final float millimetersToPoints(final float value);
public static final float millimetersToInches(final float value);
public static final float pointsToMillimeters(final float value);
public static final float pointsToInches(final float value);
public static final float inchesToMillimeters(final float value);
public static final float inchesToPoints(final float value);

// iTextSharp
public static float MillimetersToPoints(float value);
public static float MillimetersToInches(float value);
public static float PointsToMillimeters(float value);
public static float PointsToInches(float value);
public static float InchesToMillimeters(float value);
public static float InchesToPoints(float value);

您假设测量以点指定只是部分正确,但在您的用例中动态生成pdfs 这已经足够了。

一般情况下,测量是在用户空间单位中指定的,并且默认用户空间单位(即在任何转换到位之前)可以基于每页配置为任何浮动倍数(受特定实施限制)1/72英寸:

  

<强> UserUnit   数   (可选; PDF 1.6)一个正数,应给出默认用户空间单位的大小,以1/72英寸的倍数表示。支持值的范围应取决于实现。

     

默认值:1.0(用户空间单位为1/72英寸)。

(Table 30, section 7.7.3.3, ISO 32000-1)

由于该默认值,如果没有其他选择,则您的假设成立。