Image PDF裁剪图像几乎正确

Image PDF裁剪图像几乎正确,image,pdf,pdf-generation,Image,Pdf,Pdf Generation,我继承了一些手动滚动PDF文件的代码。这段代码所做的一件事是,将一个大图像作为资源插入到PDF中,然后在PDF命令流中裁剪该图像的片段并单独绘制 例如,如果大图像为1000 x 400像素,则代码绘制从大图像左上角提取的块((0,0)到(250,200)),然后在该块旁边绘制从大图像中上角提取的另一块((250,0),(500,200))(在这篇文章中,我将使用原点位于左上角的标准图像坐标系来描述裁剪坐标) 代码执行此操作的方式是创建一个仅绘制大图像的次XObject,并进行适当的缩放和偏移。因

我继承了一些手动滚动PDF文件的代码。这段代码所做的一件事是,将一个大图像作为资源插入到PDF中,然后在PDF命令流中裁剪该图像的片段并单独绘制

例如,如果大图像为1000 x 400像素,则代码绘制从大图像左上角提取的块((0,0)到(250,200)),然后在该块旁边绘制从大图像中上角提取的另一块((250,0),(500,200))(在这篇文章中,我将使用原点位于左上角的标准图像坐标系来描述裁剪坐标)

代码执行此操作的方式是创建一个仅绘制大图像的次XObject,并进行适当的缩放和偏移。因此,要从((250,0)到(500,200))提取图像,它定义了一个新的XObject,如下所示:

/Type/XObject /Subtype/Form /FormType 1 /Name/Img4 /BBox [0 0 1 1] /Matrix [1 0 0 1 0 0] /Length 26/Resources << /XObject << /img3 23 0 R >> >>

4 0 0 2 1 1 cm
/img3 Do
这看起来应该足够精确了,但即使我提高了精度:

2.1298701 0 0 5.4666667 -0 -4.4666667 cm
同样的问题也会发生

看起来Adobe Reader在计算中的某个地方截断了精度

你知道为什么会发生这种事吗?我怎样才能避开它

2.1298701 0 0 5.4666667 -0 -4.4666667 cm