Конвертировать слайды PowerPoint в PNG на Java
О преобразовании PowerPoint в PNG
Формат PNG (Portable Network Graphics) не так популярен, как JPEG (Joint Photographic Experts Group), но всё равно очень популярен.
Случай использования: Когда у вас сложное изображение и размер не важен, PNG является лучшим форматом изображений, чем JPEG.
Tip
Возможно, вам стоит посмотреть бесплатные конвертеры Aspose PowerPoint в PNG: PPTX to PNG и PPT to PNG. Они являются живой реализацией процесса, описанного на этой странице.Преобразование PowerPoint в PNG
Выполните следующие шаги:
- Создайте экземпляр класса Presentation.
- Получите объект слайда из коллекции Presentation.getSlides() под интерфейсом ISlide.
- Вызовите метод ISlide.getImage() чтобы получить миниатюру для каждого слайда.
- Воспользуйтесь методом [IImage.save(String formatName, int imageFormat)](https://reference.aspose.com/slides/java/com.aspose.slides/IImage#save(String formatName, int imageFormat)) чтобы сохранить миниатюру слайда в формате PNG.
Этот Java‑код показывает, как преобразовать презентацию PowerPoint в PNG:
Presentation pres = new Presentation("pres.pptx");
try {
for (int index = 0; index < pres.getSlides().size(); index++)
{
ISlide slide = pres.getSlides().get_Item(index);
IImage slideImage = slide.getImage();
try {
slideImage.save("image_java_" + index + ".png", ImageFormat.Png);
} finally {
if (slideImage != null) slideImage.dispose();
}
}
} finally {
if (pres != null) pres.dispose();
}
Преобразование PowerPoint в PNG с пользовательскими размерами
Если вы хотите получить PNG‑файлы определённого масштаба, вы можете установить значения desiredX и desiredY, которые определяют размеры результирующей миниатюры.
Этот код на Java демонстрирует описанную операцию:
Presentation pres = new Presentation("pres.pptx");
try {
float scaleX = 2f;
float scaleY = 2f;
for (int index = 0; index < pres.getSlides().size(); index++)
{
ISlide slide = pres.getSlides().get_Item(index);
IImage slideImage = slide.getImage(scaleX, scaleY);
try {
slideImage.save("image_java_" + index + ".png", ImageFormat.Png);
} finally {
if (slideImage != null) slideImage.dispose();
}
}
} finally {
if (pres != null) pres.dispose();
}
Преобразование PowerPoint в PNG с пользовательским размером
Если вы хотите получить PNG‑файлы определённого размера, вы можете передать желаемые аргументы width и height для ImageSize.
Этот код показывает, как преобразовать PowerPoint в PNG, задавая размер изображений:
Presentation pres = new Presentation("pres.pptx");
try {
Dimension size = new Dimension(960, 720);
for (int index = 0; index < pres.getSlides().size(); index++)
{
ISlide slide = pres.getSlides().get_Item(index);
IImage slideImage = slide.getImage(size);
try {
slideImage.save("image_java_" + index + ".png", ImageFormat.Png);
} finally {
if (slideImage != null) slideImage.dispose();
}
}
} finally {
if (pres != null) pres.dispose();
}
FAQ
Как экспортировать только определённую форму (например, диаграмму или изображение), а не весь слайд?
Aspose.Slides поддерживает создание миниатюр для отдельных фигур; вы можете отрисовать форму в PNG‑изображение.
Поддерживается ли параллельное преобразование на сервере?
Да, но не делитесь одной экземпляром презентации между потоками. Используйте отдельный экземпляр для каждого потока или процесса.
Какие ограничения версии trial при экспорте в PNG?
Режим оценки добавляет водяной знак к выводимым изображениям и вводит другие ограничения до применения лицензии.