这应该很简单,但事实并非如此。
我在舞台上有一个 792 x 612 像素的影片剪辑。舞台尺寸也是 792 x 612。这是嵌入到 HTML 页面中的。
下面是一个截图。添加了红色边框以显示影片剪辑的 792 x 612 边缘的位置。实际上,红色边框是白色的,不可见。
我正在尝试将其打印到 8.5 x 11 的纸上。
我的打印功能如下所示(页面加载后立即触发):
var printJob:PrintJob = new PrintJob();
if (printJob.start()) {
printCert_mc.width = 792;
printCert_mc.height = 612;
printCert_mc.rotation = -90;
printJob.addPage(printCert_mc);
printJob.send();
}
我应该这么简单,不是吗?逆时针旋转夹子 -90 度并打印。
但是,问题在于它切断了旋转后的movieClip 的左边缘和上边缘。这些是在被旋转之前在movieClip 的正常方向中的边缘,这些边缘将是顶部和右侧。
这是对正在打印的内容的准确描述。下图的灰色边框代表纸张的边缘:
我难住了。
我尝试添加:printCert_mc.scaleY = printCert_mc.scaleX;
并且:
printCert_mc.x = (printJob.pageWidth-printCert_mc.width) / 2;
printCert_mc.y = ((printJob.pageHeight-printCert_mc.height) / 2);
添加它们只会使过程复杂化并产生不良影响,再次导致部分图像未打印。