You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

InDesign如何在单张纸上打印多张小尺寸页面

解决InDesign多单页文档同纸打印且保留原尺寸的问题

我来帮你搞定这个痛点——要把4个150x100mm的单页文档打印到同一张纸上还不改变原尺寸,确实不能用默认的缩略图选项,它会自动缩放页面。下面分两种方案给你说明,手动操作适合偶尔用,脚本适合重复批量处理:

一、手动操作方法(无需脚本)

这个方法步骤直观,适合临时需求:

  1. 创建大尺寸母版文档:新建一个InDesign文档,页面尺寸设为能容纳4个150x100mm页面的大小(比如自定义300x200mm,要是需要留打印边距,就改成310x210mm)。
  2. 置入单页文档:用文件>置入(快捷键Cmd+D),依次导入4个单页文档。导入时按住Shift键,能强制保留原页面尺寸,不会被自动缩放适配母版。
  3. 精准排列页面:把4个导入的页面分别放到母版页面的四个角落(或你想要的布局),可以用参考线辅助对齐,确保每个页面都是150x100mm的原尺寸。
  4. 打印设置确认:按下Cmd+P后,在打印面板里选你设置的大尺寸纸张,然后在缩放选项里勾选“100%”或“无缩放”,绝对不要选“适合纸张”,这样打印出来的每个页面都会保留原尺寸,且4个页面在同一张纸上。

二、脚本自动化方法(适合重复操作)

如果需要频繁做这种合并打印,用脚本能省不少时间,下面提供Mac专属的AppleScript和跨平台的JavaScript两种选项:

AppleScript(Mac专属)

tell application "Adobe InDesign 2024"
    set docList to choose file with prompt "选择4个单页InDesign文档:" of type "indd" with multiple selections allowed
    -- 自定义大页面尺寸,这里设置为300x200mm,刚好放下4个150x100mm的页面,需留边距可自行调整
    set newDoc to make document with properties {page width:300, page height:200, pages per document:1}
    
    repeat with i from 1 to count of docList
        set currentDoc to open item i of docList
        set pageItem to page 1 of currentDoc
        duplicate pageItem to page 1 of newDoc
        close currentDoc saving no
        
        -- 按左上、右上、左下、右下的顺序排列页面
        set xPos to ((i mod 2) - 1) * -150
        set yPos to ((i > 2) - 1) * -100
        set geometric bounds of page item 1 of page 1 of newDoc to {yPos, xPos, yPos + 100, xPos + 150}
    end repeat
end tell

使用方式:打开Mac自带的Script Editor,粘贴代码,按需修改page widthpage height的数值,运行脚本后选择4个目标文档即可自动合并。

JavaScript(跨平台)

#target indesign

var docList = File.openDialog("选择4个单页InDesign文档:", "*.indd", true);
if (docList == null) exit();

// 创建300x200mm的大页面文档,需留边距可调整数值
var newDoc = app.documents.add(false, undefined, undefined, 300, 200);

for (var i = 0; i < docList.length; i++) {
    var currentDoc = app.open(docList[i]);
    var pageObj = currentDoc.pages[0];
    var dupPage = pageObj.duplicate(newDoc.pages[0], ElementPlacement.PLACE_AT_BEGINNING);
    currentDoc.close(SaveOptions.NO);
    
    // 计算页面位置,按左上、右上、左下、右下排列
    var x = (i % 2) * 150;
    var y = Math.floor(i / 2) * 100;
    dupPage.geometricBounds = [y, x, y + 100, x + 150];
}

使用方式:打开InDesign的脚本面板(Window>Utilities>Scripts),新建一个JavaScript文件,粘贴代码并调整尺寸参数后运行即可。

关键注意点

  • 大页面的尺寸一定要足够容纳4个原尺寸页面,记得预留打印边距(比如每边加5mm),避免打印时内容被裁切。
  • 打印时务必确认缩放设置为100%,这是保留原尺寸的核心。

内容的提问来源于stack exchange,提问作者Zararsiz

火山引擎 最新活动