PDF manipulacija dokumentom u Java-i
Aspose.PDF FOSS for Java provides a rich set of APIs for manipulating existing PDF U ovom slučaju, u skladu s člankom 21. stavkom 1. točkama (a) i (b) ovog članka, se primjenjuje sljedeća pravila: U ovom slučaju, to je vrlo važno. PdfFileEditor i drugove njegove, ContentsResizeParameters i u članku 1. ContentsResizeValue.
PdfFileEditor: Glavne operacije stranice
U skladu s člankom 1. PdfFileEditor Class je središnji sustav za operacije PDF datoteka visokog razine. Pruža metode za povezivanje više PDF datoteka, ekstrakciju podmnožina stranica., dijeljenje dokumenta na pojedinačne stranice i unosa stranica iz jednog dokumenta u drugu na određenoj poziciji.
PdfFileEditor editor = new PdfFileEditor();
// Concatenate two documents into one
editor.concatenate("first.pdf", "second.pdf", "combined.pdf");
// Extract pages 2 through 5 to a new file
editor.extract("source.pdf", 2, 5, "extracted.pdf");
Glavne metode uključuju:
concatenate(inputFiles, outputFile)spaja više dokumenata u redoslijeduextract(inputFile, startPage, endPage, outputFile)izvozi neprekinutu razinu proizvodaextract(inputFile, pageNumbers, outputFile)izvozi nespojivi skupsplitToPages(inputFile)dijeli se u jednu.ByteArrayOutputStreamna stranicuinsert(inputFile, insertPosition, portFile, startPage, endPage, outputFile)uvodi opsegdelete(inputFile, pageNumbers, outputFile)uklanja određene straniceappend(inputFile, portFile, startPage, endPage, outputFile)dodaje raspon stranica
Za velike datoteke, setUseDiskBuffer(true) Prebaci unutarnji pohran iz heapa na disk.
Sadržaj preuređivanje s sadržajemRizinaParametri
PdfFileEditor.resizeContents() prilagođava sadržaj unutar postojećih granica stranice. Svaki margin lijevo, desno, gore, dolje ?? i širina sadržaja i visina su: određeno kao: ContentsResizeValue U slučaju da je to moguće, potrebno je uzeti u obzir sljedeće: ContentsResizeValue.percents(value) ili: ContentsResizeValue.units(value).
try (Document doc = new Document("input.pdf")) {
PdfFileEditor editor = new PdfFileEditor();
ContentsResizeParameters params = new ContentsResizeParameters(
ContentsResizeValue.percents(10), // left margin
ContentsResizeValue.percents(80), // content width
ContentsResizeValue.percents(10), // right margin
ContentsResizeValue.percents(10), // top margin
ContentsResizeValue.percents(80), // content height
ContentsResizeValue.percents(10) // bottom margin
);
editor.resizeContents(doc, params);
doc.save("resized.pdf");
}
Šest argument konstruktor za ContentsResizeParameters prihvaća vrijednosti u redoslijed: lijevaMargina, sadržajŠirokoća, desnaMarjina, gornjaMarzina, SadržajiVisoka, donja Margina. Sve šest mora biti 100% pri korištenju vrijednosti na temelju postotka ili se poklapa s stranicom. U slučaju primjene apsolutnih točaka, dimenzije.
Promjena veličine određenih stranica
Kada samo podskuplj stranica zahtijeva promjenu veličine, preopterećenje koje prihvaća cijeli niz brojeva stranice cilja te stranici dok ostavi ostatak nepromenjen:
PdfFileEditor editor = new PdfFileEditor();
ContentsResizeParameters params = new ContentsResizeParameters(
ContentsResizeValue.units(28), // left margin in points
ContentsResizeValue.units(540), // content width
ContentsResizeValue.units(28), // right margin
ContentsResizeValue.units(28), // top margin
ContentsResizeValue.units(786), // content height
ContentsResizeValue.units(28) // bottom margin
);
// Only resize pages 1 and 3
editor.resizeContents(doc, new int[]{1, 3}, params);
ContentsResizeValue.getValue() i u članku 1. isPercent() omogućiti pregled skladištenog U tom slučaju, u skladu s člankom 16. stavkom 1. točkom (a) stavka 2. točke (b) ovog članka, Komisija može utvrditi:.
Priloga i N-Up raspored
PdfFileEditor uključuje: makeBooklet() za postavljanje stranica u dvostrani brošure redoslijedu i u članku 1. makeNUp() za crtanje više stranica po listu. obje metode prihvaćaju putanje datoteke ili za vodene tokove:
PdfFileEditor editor = new PdfFileEditor();
// Print as a folded booklet
editor.makeBooklet("input.pdf", "booklet.pdf");
// Tile 2 columns × 3 rows per sheet
editor.makeNUp("input.pdf", "nup.pdf", 2, 3);
PdfPageEditor: Kontrola povećanja po stranici
PdfPageEditor cilja na pojedinačne osobine stranice, kao što je razina zumiranja. setZoom() prihvaća multiplikator koji kontrolira početno uvećanje kada dokument Otvoren je u prikazaču:
PdfPageEditor pageEditor = new PdfPageEditor();
pageEditor.bindPdf("input.pdf");
pageEditor.setZoom(1.5f);
pageEditor.save("zoomed.pdf");
Vrijednosti: 0.0 ili negativne su odbačene getZoom() povratni podaci 1.0 u tim slučajevima. To čini… PdfPageEditor Odgovarajući članak. U ovom slučaju, u skladu s člankom 15. stavkom 2. točkom (a) Uredbe (EU) br. 1308/2013 i Uredbom (EZ) št. 765/2008 trebalo bi se upotrijebiti sljedeće:.
Početak
Dodajte Maven zavisnost i uvozite fasade paket:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>0.1.0-alpha</version>
</dependency>
import org.aspose.pdf.*;
import org.aspose.pdf.facades.*;
Aspose.PDF FOSS for Java is MIT-licensed and available at https://github.com/aspose-pdf-foss/Aspose.PDF-FOSS-for-Java.