You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Google Apps Script实现谷歌幻灯片1920×1080适配网格?

修复Google Apps Script实现1920×1080幻灯片的矩形网格完美适配

以下是修改后的脚本,可确保无论调整边距、行列数,矩形网格都能完美适配带20px外边距的1920×1080幻灯片:

function createGrid() {
  // 目标幻灯片尺寸:1920×1080
  const SLIDE_WIDTH = 1920;
  const SLIDE_HEIGHT = 1080;
  const MARGIN = 20;
  const numRows = 4;
  const numColumns = 5; // 可按需修改行列数
  const MAX_WIDTH_RATIO = 0.2; // 矩形宽度不超过可用宽度的20%

  // 计算可用区域(减去上下左右外边距)
  const availableWidth = SLIDE_WIDTH - 2 * MARGIN;
  const availableHeight = SLIDE_HEIGHT - 2 * MARGIN;

  // 计算矩形宽度的两个限制值,取较小值
  const maxAllowedWidth = availableWidth * MAX_WIDTH_RATIO;
  const widthByColumns = (availableWidth - MARGIN * (numColumns - 1)) / numColumns;
  const rectWidth = Math.min(maxAllowedWidth, widthByColumns);

  // 计算矩形高度:确保网格在可用高度内适配
  const rectHeight = (availableHeight - MARGIN * (numRows - 1)) / numRows;

  // 获取当前演示文稿并添加新幻灯片
  const presentation = SlidesApp.getActivePresentation();
  const slide = presentation.appendSlide();
  slide.selectAsCurrentPage();

  // 设置幻灯片尺寸为1920×1080(避免默认尺寸不符)
  slide.getPageProperties().setPageSize(SlidesApp.PageSize.CUSTOM, SLIDE_WIDTH, SLIDE_HEIGHT);

  // 生成矩形网格
  for (let row = 0; row < numRows; row++) {
    for (let column = 0; column < numColumns; column++) {
      // 计算每个矩形的坐标:外边距 + 列/行的偏移(宽度/高度 + 间距)
      const x = MARGIN + column * (rectWidth + MARGIN);
      const y = MARGIN + row * (rectHeight + MARGIN);
      const shape = slide.insertShape(SlidesApp.ShapeType.RECTANGLE, x, y, rectWidth, rectHeight);
      shape.getBorder().setTransparent();
      shape.getFill().setSolidFill('#777777');
    }
  }
}

关键修改说明

  • 固定幻灯片尺寸:明确将幻灯片设置为1920×1080,避免默认尺寸导致的适配偏差,通过setPageSize方法实现。
  • 修正可用区域计算:基于幻灯片实际尺寸减去双边距,得到真实可放置网格的区域,替代原脚本中硬编码的非目标尺寸。
  • 修复最大宽度限制逻辑:原脚本错误使用整个幻灯片宽度计算最大宽度,现在改为使用可用宽度(幻灯片宽度减去左右边距)的20%,符合需求描述。
  • 动态适配参数变化:无论调整numRows、numColumns或MARGIN值,都会重新计算矩形的宽高和位置,确保网格完全在幻灯片边距内,不会超出范围。
  • 优化代码可读性:将固定参数改为大写常量,便于后续修改维护。

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 08:59:20