Trabajar con capas PDF usando Java

Aspose.PDF for Java expone capas PDF a través del Layer API en cada página. Puede crear grupos de contenido opcional, modificar su comportamiento y exportar o aplanar su contenido cuando sea necesario.

Agregar capas a una página PDF

  1. Cree un nuevo PDF Document.
  2. Agregue un Page al documento.
  3. Cree y configure lo necesario Layer objetos en la página.
  4. Guarde el PDF de salida Document.
public static void addLayers(Path outputFile) {
    try (Document document = new Document()) {
        Page page = document.getPages().add();

        Layer layer = new Layer("oc1", "Red Line");
        layer.getContents().add(new SetRGBColorStroke(1, 0, 0));
        layer.getContents().add(new MoveTo(500, 700));
        layer.getContents().add(new LineTo(400, 700));
        layer.getContents().add(new Stroke());
        page.getLayers().add(layer);

        document.save(outputFile.toString());
    }
}

El ejemplo completo crea tres capas separadas con contenido de líneas rojas, verdes y azules.

Bloquear una capa

  1. Abra el PDF de origen Document.
  2. Acceda al objetivo Page y obtenga su colección Layer.
  3. Bloquee el objetivo Layer.
  4. Guarde el PDF actualizado Document.
public static void lockLayer(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        Page page = document.getPages().get_Item(1);
        if (!page.getLayers().isEmpty()) {
            Layer layer = page.getLayers().getFirst();
            layer.lock();
            document.save(outputFile.toString());
        }
    }
}