Recortar páginas PDF en Java
Contents
[
Hide
]
Aspose.PDF for Java le permite recortar páginas ya sea mediante coordenadas de caja explícitas o basándose en el contenido detectado.
Recortar una página configurando los recuadros de página
Utilice este ejemplo cuando necesite aplicar la misma área de recorte a los recuadros principales de la página.
- Abra el PDF de origen
Document. - Cree el nuevo recorte
Rectangle. - Aplique el rectángulo a los cuadros de página relacionados con el recorte y guarde el documento.
public static void cropPage(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
Rectangle newBox = new Rectangle(200, 220, 2170, 1520, true);
document.getPages().get_Item(1).setCropBox(newBox);
document.getPages().get_Item(1).setTrimBox(newBox);
document.getPages().get_Item(1).setArtBox(newBox);
document.getPages().get_Item(1).setBleedBox(newBox);
document.save(outputFile.toString());
}
}
Recortar una página según el contenido detectado
Utilice este ejemplo cuando el área de recorte debe derivarse de la primera imagen detectada en la página.
- Abra el PDF de origen
Document. - Utilice
ImagePlacementAbsorberpara detectar la ubicación de imágenes. - Establezca la caja de recorte al rectángulo de la imagen si se encuentra, luego guarde el documento.
public static void cropPageByContent(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
ImagePlacementAbsorber absorber = new ImagePlacementAbsorber();
document.getPages().get_Item(1).accept(absorber);
if (absorber.getImagePlacements().size() > 0) {
document.getPages().get_Item(1).setCropBox(absorber.getImagePlacements().get_Item(1).getRectangle());
} else {
System.out.println("No images found on the first page");
}
document.save(outputFile.toString());
}
}