我能做到的最接近的是使用这段代码。
这让我更接近于TIF图像的完全副本,但出现了问题:宽度缩小了5个像素,但我无法找到原因。
更多细节: ad1.tif图像为1425 x 1125,生成的最终pdf文档为1725 x 2625。 如您所见,我在cfdocument中使用5.75 x 8.75英寸。 这在PDF文档中转化为300DPI。当我在Photoshop中加载PDF文档时,它确实显示文档为300DPI。
您可能会注意到ImageNew使用了1725 x 2625而cfimage使用了1740 x 2625。 如果我将cfimage尺寸与imagenew匹配(这是非常合理的),则会在顶部、右侧和底部出现白色边框。 图像的宽度仍然偏差约5个像素。 因此,我不得不将其稍微放大以消除那个白色边框。 如果我能找出图像偏差5像素的原因就好了。
<cfset Background = ImageNew("",1725,2625)>
<cfimage source="#APPLICATION.config.serverpath#/ad1.tif" name="ad1">
<cfset height1 = ImageGetHeight(ad1)>
<cfset width1 = ImageGetWidth(ad1)>
<cfset resImage1 = ImageCopy(ad1,0,0, width1, height1)>
<cfset ImagePaste(Background,resImage1,150,150)>
<cfdocument format="pdf" pagetype="custom" pagewidth="5.75" pageheight="8.75" fontembed="no" name="temp" margintop="0" marginbottom="0" marginleft="0" marginright="0">
<div style="position:absolute; top:0; left:0; right:0; bottom:0; z-index:0;width:100%;height:100%;">
<cfimage action="writeToBrowser" source="#Background#" style="width:1740px; height: 2650px;">
</cfdocument>
这让我更接近于TIF图像的完全副本,但出现了问题:宽度缩小了5个像素,但我无法找到原因。
更多细节: ad1.tif图像为1425 x 1125,生成的最终pdf文档为1725 x 2625。 如您所见,我在cfdocument中使用5.75 x 8.75英寸。 这在PDF文档中转化为300DPI。当我在Photoshop中加载PDF文档时,它确实显示文档为300DPI。
您可能会注意到ImageNew使用了1725 x 2625而cfimage使用了1740 x 2625。 如果我将cfimage尺寸与imagenew匹配(这是非常合理的),则会在顶部、右侧和底部出现白色边框。 图像的宽度仍然偏差约5个像素。 因此,我不得不将其稍微放大以消除那个白色边框。 如果我能找出图像偏差5像素的原因就好了。
cfdocument
标签属性内部编写图像转换,而不是在标记内部,是否会有任何区别?就像这样:<cfdocument format="pdf" src="ad1.tif" mimetype="image/tif" />
,如此文件中所述。 - Miguel-F