考虑以下操作员序列:
Tf: R8 9.96 Tm: 0 1.00057 -1 0 105.12 60.3506 TJ: line 1: Tf: R8 9.96 Tm: 0 1.00057 -1 0 105.12 95.9906 TJ: value 1 Tm: 0 1.00057 -1 0 116.16 60.3505 TJ: line 2: Tf: R8 9.96 Tm: 0 1.00057 -1 0 116.16 124.551 TJ: value 2 Tm: 0 1.00057 -1 0 127.2 60.3507 TJ: line 3: Tf: R8 9.96 Tm: 0 1.00057 -1 0 127.2 106.671 TJ: value 3 Tm: 0 1.00057 -1 0 138.24 60.3508 TJ: line 4: Tf: R8 9.96 Tm: 0 1.00057 -1 0 138.24 112.791 TJ: value 4
PDF将其显示为:
line 1: value 1 line 2: value 2 line 3: value 3 line 4: value 4
参考PDF文档矩阵由[a b c d e f]组成,其中e = Tx且f = Ty
从前两个命令块(给出第一行文本)我注意到Tx和Ty实际上切换了位置。 105.12保持相同,应说明垂直位置。
PDF参考文献也谈到了轮换:
旋转由[cosθsinθ-sinθcosθ00]产生,其具有 将坐标系轴旋转角度θ的效果 逆时针方向。
似乎是因为Tx改变垂直位置而Ty改变水平为sin(90)= 1 cos(0)= 0.含义90逆时针
答案 0 :(得分:1)
您只考虑文本矩阵设置。您没有告诉我们这些文本对象时当前的转换矩阵,也没有告诉我们页面旋转值。
考虑到您的观察,我会假设全局页面顺时针旋转90°。
这可以解释为什么你的90°逆时针旋转文字是直立的(你的第二个问题)。
此外,通过该页面旋转,x轴将是垂直的,坐标值向下升,以回答您的第一个问题。
部分参考
旋转 - 整数 - (可选;可继承)页面的度数 显示或打印时应顺时针旋转。价值 应为90的倍数。默认值:0。
(表30 - 页面对象中的条目 - Bug #45301 Serious flaw in array_rand())
CTM - array - 当前转换矩阵,用于映射位置 用户坐标到设备坐标(参见8.3,“坐标 系统“)。该矩阵由每个应用程序修改 坐标变换算子,cm。初始值:矩阵 将默认用户坐标转换为设备 坐标。
(表52 - 与设备无关的图形状态参数 - ISO 32000-1)