Изменить размер слайда презентации в PHP

Размеры слайдов в презентациях PowerPoint

Aspose.Slides for PHP via Java позволяет изменять размер слайда или соотношение сторон в презентациях PowerPoint. Если вы планируете печатать свою презентацию или отображать её слайды на экране, вам следует обратить внимание на размер слайда или соотношение сторон.

Это наиболее распространённые размеры слайдов и соотношения сторон:

  • Стандарт (соотношение 4:3)

    Если ваша презентация будет отображаться или просматриваться на относительно старых устройствах или экранах, возможно, вам следует использовать эту настройку.

  • Широкоформатный (соотношение 16:9)

    Если ваша презентация будет показываться на современных проекторах или дисплеях, возможно, вам следует использовать эту настройку.

Нельзя использовать несколько настроек размера слайда в одной презентации. Когда вы выбираете размер слайда для презентации, эта настройка применяется ко всем слайдам презентации.

Если вы предпочитаете использовать специальный размер слайда для своих презентаций, мы настоятельно рекомендуем сделать это заранее. Желательно указать предпочтительный размер слайда в начале, то есть при первоначальной настройке презентации — до того, как вы добавите какой‑либо контент. Таким образом, вы избежите осложнений, возникающих из‑за (будущих) изменений размера слайдов.

Изменение размера слайда в презентациях

Этот пример кода демонстрирует, как изменить размер слайда в презентации с помощью Aspose.Slides:

  $pres = new Presentation("pres-4x3-aspect-ratio.pptx");
  try {
    $pres->getSlideSize()->setSize(SlideSizeType::OnScreen16x9, SlideSizeScaleType::DoNotScale);
    $pres->save("pres-4x3-aspect-ratio.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

Указание пользовательских размеров слайдов в презентациях

Если стандартные размеры слайдов (4:3 и 16:9) не подходят для вашей работы, вы можете решить использовать конкретный или уникальный размер слайда. Например, если вы планируете печатать полноразмерные слайды из вашей презентации на пользовательском макете страницы или хотите отображать презентацию на определённых типах экранов, вам, вероятно, будет полезна настройка пользовательского размера для вашей презентации.

Этот пример кода показывает, как с помощью Aspose.Slides for PHP via Java задать пользовательский размер слайда для презентации :

  $pres = new Presentation("pres.pptx");
  try {
    $pres->getSlideSize()->setSize(780, 540, SlideSizeScaleType::DoNotScale);// размер листа A4

    $pres->save("pres-a4-slide-size.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

Обработка содержимого слайдов после изменения размера

После изменения размера слайда в презентации содержимое слайдов (например, изображения или объекты) может исказиться. По умолчанию объекты автоматически масштабируются, чтобы соответствовать новому размеру слайда. Однако при изменении размера слайда презентации вы можете задать параметр, определяющий, как Aspose.Slides обрабатывает содержимое на слайдах.

В зависимости от того, что вы планируете сделать или достичь, вы можете использовать любой из этих параметров:

  • DoNotScale

    Если вы НЕ хотите, чтобы объекты на слайдах масштабировались, используйте эту настройку.

  • EnsureFit

    Если вы хотите масштабировать к меньшему размеру слайда и требуется, чтобы Aspose.Slides уменьшал объекты слайдов, гарантируя, что они все помещаются на слайдах (тем самым избегая потери содержимого), используйте эту настройку.

  • Maximize

    Если вы хотите масштабировать к большему размеру слайда и требуется, чтобы Aspose.Slides увеличивал объекты слайдов, делая их пропорциональными новому размеру, используйте эту настройку.

Этот пример кода показывает, как использовать параметр Maximize при изменении размера слайда презентации:

  $pres = new Presentation("pres.pptx");
  try {
    $pres->getSlideSize()->setSize(SlideSizeType::Ledger, SlideSizeScaleType::Maximize);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

FAQ

Могу ли я задать пользовательский размер слайда, используя единицы измерения, отличные от дюймов (например, пункты или миллиметры)?

Да. Aspose.Slides использует пункты во внутренней реализации, где 1 пункт равен 1/72 дюйма. Вы можете преобразовать любую единицу измерения (например, миллиметры или сантиметры) в пункты и использовать полученные значения для определения ширины и высоты слайда.

Влияет ли очень большой пользовательский размер слайда на производительность и использование памяти во время рендеринга?

Да. Большие размеры слайда (в пунктах) в сочетании с более высоким масштабом рендеринга приводят к повышенному потреблению памяти и увеличенному времени обработки. Старайтесь выбирать практический размер слайда и регулировать масштаб рендеринга только при необходимости для получения требуемого качества вывода.

Могу ли я задать один нестандартный размер слайда, а затем объединять слайды из презентаций с разными размерами?

Вы не можете объединять презентации при разных размерах слайдов — сначала измените размер одной презентации, чтобы он совпал с другой. При изменении размера слайда можно выбрать, как будет обрабатываться существующее содержимое, используя параметр SlideSizeScaleType. После согласования размеров вы можете объединять слайды, сохраняя форматирование.

Могу ли я генерировать миниатюры отдельных фигур или конкретных областей слайда, и будут ли они учитывать новый размер слайда?

Да. Aspose.Slides может генерировать миниатюры как для полных слайдов, так и для выбранных фигур. Полученные изображения отражают текущий размер слайда и соотношение сторон, обеспечивая единообразную кадрацию и геометрию.