Convertir PPT a PPTX en Java

Visión general

PPT es el formato binario heredado de PowerPoint, mientras que PPTX es el formato Open XML más reciente. Aspose.Slides for Java puede cargar un archivo PPT y guardarlo como PPTX sin necesidad de Microsoft PowerPoint. Este artículo muestra cómo convertir un archivo o un directorio de archivos y explica qué verificar después de la conversión.

Convertir un archivo PPT a PPTX

Cargue el archivo de origen con la clase Presentation, luego llame a Presentation.save con SaveFormat.Pptx. El bloque finally libera la presentación y sus recursos.

// Cargar la presentación PPT heredada.
com.aspose.slides.Presentation presentation = new com.aspose.slides.Presentation("presentation.ppt");
try {
    // Guardar la presentación en formato PPTX.
    presentation.save("presentation.pptx", com.aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

La extensión del archivo no determina el formato de salida por sí misma; lo hace el argumento SaveFormat.Pptx. Mantenga las rutas de entrada y salida diferentes si necesita conservar el archivo PPT original.

Convertir varios archivos PPT

El siguiente ejemplo convierte cada archivo .ppt en un directorio. Cada archivo se procesa de forma independiente, de modo que una conversión fallida no detiene el resto del lote.

java.io.File inputDirectory = new java.io.File("input");
java.io.File outputDirectory = new java.io.File("output");
if (!outputDirectory.exists() && !outputDirectory.mkdirs()) {
    throw new IllegalStateException("Cannot create the output directory: " + outputDirectory);
}

java.io.File[] inputFiles = inputDirectory.listFiles((directory, name) -> name.toLowerCase(java.util.Locale.ROOT).endsWith(".ppt"));
if (inputFiles == null) {
    throw new IllegalStateException("Cannot read the input directory: " + inputDirectory);
}

for (java.io.File inputFile : inputFiles) {
    String inputPath = inputFile.getPath();
    String fileName = inputFile.getName();
    String outputFileName = fileName.substring(0, fileName.length() - 4) + ".pptx";
    String outputPath = new java.io.File(outputDirectory, outputFileName).getPath();
    com.aspose.slides.Presentation presentation = null;

    try {
        presentation = new com.aspose.slides.Presentation(inputPath);
        presentation.save(outputPath, com.aspose.slides.SaveFormat.Pptx);
        System.out.println("Converted: " + inputPath);
    } catch (Exception exception) {
        System.err.println("Failed: " + inputPath + " (" + exception.getMessage() + ")");
    } finally {
        if (presentation != null) {
            presentation.dispose();
        }
    }
}

Para cargas de trabajo en producción, registre la excepción completa, decida si se puede sobrescribir un archivo de salida existente y guarde los nombres de los archivos que fallaron en una cola de reintento o revisión. Archivos corruptos, archivos protegidos con contraseña abiertos sin la contraseña requerida, rutas inaccesibles y contenido no compatible pueden provocar una conversión fallida. Consulte Password-Protected Presentations para cargar archivos cifrados.

Fidelidad y características heredadas

La conversión normalmente conserva diapositivas, patrones, diseños, texto, formas, imágenes, tablas y gráficas. Sin embargo, PPT y PPTX no representan cada característica de la misma manera exacta. Una característica heredada que no tiene equivalente en PPTX, o que no es compatible con la biblioteca, puede normalizarse, omitirse o mostrarse de forma diferente.

Verifique el archivo convertido cuando contenga animaciones, transiciones, objetos OLE incrustados o vinculados, controles ActiveX, medios incrustados, fuentes poco comunes o macros VBA. Un archivo PPTX sencillo no es un formato compatible con macros, por lo que debe utilizar un flujo de trabajo adecuado para macros cuando VBA deba permanecer disponible. También verifique que las fuentes requeridas y los recursos externos estén presentes en el entorno donde se abrirá o renderizará la presentación convertida.

Para documentos importantes, vuelva a abrir el PPTX generado programáticamente e inspeccione el número de diapositivas y el contenido clave, luego compare su aspecto y el comportamiento de la presentación en el visor previsto. No tome una llamada exitosa a Presentation.save como prueba de que cada característica heredada tiene una representación exacta en PPTX.

Cuándo usar PPTX

Utilice PPTX cuando la presentación se vaya a editar en versiones actuales de PowerPoint, se intercambie con sistemas que trabajen con paquetes Open XML o se almacene en un formato más fácil de inspeccionar y recuperar que el binario heredado PPT. Conserve el PPT original como copia de archivo o de reversión hasta que la presentación convertida haya superado sus pruebas de fidelidad.

Si necesita PDF, HTML, imágenes, XPS u otro tipo de salida, utilice la guía específica de formato en Convert Presentations to Multiple Formats en lugar de suponer que todos los destinos preservan las características editables de PowerPoint.

Convertidor en línea

Para un archivo puntual o una comparación rápida, puede usar el online PPT to PPTX converter. Para conversiones repetibles, procesamiento por lotes o manejo de errores a nivel de aplicación, utilice la API de Java.

Artículos relacionados

Preguntas frecuentes

¿Puedo convertir PPT a PPTX sin tener instalado Microsoft PowerPoint?

Sí. Aspose.Slides for Java carga y guarda archivos de presentación sin requerir Microsoft PowerPoint.

¿La conversión de PPT a PPTX preservará todo el contenido exactamente?

Preserva el contenido de presentación común, pero la fidelidad exacta no está garantizada para cada característica heredada o no compatible. Revise el archivo generado cuando contenga macros, objetos OLE o ActiveX, medios, animaciones especializadas o fuentes poco comunes.

¿Puedo convertir un archivo PPT protegido con contraseña?

Sí, siempre que proporcione la contraseña correcta al cargar el archivo. Una contraseña ausente o incorrecta hace que la operación de carga falle.

¿Debo eliminar el archivo PPT después de la conversión?

Conserve el original hasta que haya verificado el PPTX en los visores y flujos de trabajo que le importan. Esto proporciona una copia de reversión si una característica heredada se convierte de forma distinta.