PDF megjegyzés

A PDF-oldalon belüli tartalom nehezen szerkeszthető, de a PDF specifikáció olyan objektumok teljes készletét határozza meg, amelyek hozzáadhatók a PDF oldalakhoz az oldal tartalmának megváltoztatása nélkül. Ezeket az objektumokat megjegyzéseknek nevezik, és céljuk az oldaltartalom megjelölésétől az interaktív funkciók, például űrlapok megvalósításáig terjed.

A legtöbb PDF megtekintő lehetővé teszi különféle megjegyzéstípusok, például szövegkiemelések, jegyzetek, vonalak vagy alakzatok létrehozását és szerkesztését, és a létrehozott megjegyzéstípusoktól függetlenül a PDF-specifikációnak megfelelő PDF-nézőknek támogatniuk kell az összes megjegyzéstípus megjelenítését. Ha azonban nagy mennyiségű dokumentummal foglalkozunk, a megjegyzések kézi hozzáadásának folyamata nehézkessé válik, ezért a programozási API életképes megoldás. Tovább fogunk tárgyalni az Aspose.PDF Cloud SDK for Java használatával annotációk hozzáadására a PDF dokumentumokhoz.

SDK telepítése

Az Aspose.PDF Cloud SDK for Java egy programozási API, amely lehetővé teszi a Java programozók számára, hogy meglévő PDF-dokumentumokat hozzanak létre, kezeljenek, valamint átalakítsanak más támogatott dokumentumformátumokba. A Cloud SDK letölthető a Maven és a GitHub segítségével. Most adja hozzá a következő adatokat a pom.xml fájlhoz az Aspose.Pdf.jar letöltéséhez és a Maven build projektben való használatához.

<repositories>
 <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>https://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>
<dependencies>
 <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-pdf-cloud</artifactId>
        <version>21.1.0</version>
        <scope>compile</scope>
    </dependency>
 </dependencies>

További információért látogasson el az Aspose.Cloud SDK-k telepítése oldalra.

Továbbá kérjük, vegye figyelembe, hogy a felhasználói adatvédelem és az adatok sértetlenségének biztosítása érdekében minden API-nkat csak az arra jogosult személyek férhetnek hozzá. Ezért először meg kell látogatnia az Aspose.Cloud dashboard webhelyet, és ha rendelkezik GitHub- vagy Google-fiókkal, egyszerűen regisztráljon. Ellenkező esetben kattintson az Új fiók létrehozása gombra, és adja meg a szükséges információkat. Most jelentkezzen be az irányítópultra a hitelesítési adatokkal, és bontsa ki az Alkalmazások részt az irányítópulton, és görgessen lefelé az Ügyfél hitelesítő adatai szakasz felé, hogy megtekinthesse az ügyfél-azonosítót és az ügyféltitkot.

Szöveg áthúzása Java használatával

Néha előírjuk, hogy a dokumentum bizonyos tartalmát elavultként jelöljük meg anélkül, hogy eltávolítanánk a dokumentumból. Az Áthúzást (más néven áthúzást) olyan szavak jelentik, amelyeknek a közepén vízszintes vonal van. Ez arra utal, hogy a szöveg hibás vagy elavult, és a közelmúltban törölték vagy ilyenként jelölték meg. Az áthúzott annotációk beállításait a strikethroughSettings tulajdonság segítségével tudjuk megadni. A strikethroughSettings tulajdonság az áthúzott megjegyzések színének, átlátszatlanságának, szerzőjének, tárgyának, modifiedDate és isLocked tulajdonságainak beállítására szolgál.

// Szerezze be a ClientID-t és a ClientSecret-et a https://dashboard.aspose.cloud/ webhelyről
String clientId = "29ac1517-753f-4303-b755-7185e35cf939";
String clientSecret = "c537caf71eafc8a75a5ee7813b703276";
				
// createPdfApi példány
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// PDF dokumentum bevitele
String sourcePDF = "PdfWithTable.pdf";	        
			        
int pageNumber = 1;
// Hozzon létre téglalap alakú területet a megjegyzéshez  
Rectangle rect = new Rectangle()
    .LLX(200.)
    .LLY(380.)
    .URX(250.)
    .URY(375.);

List<AnnotationFlags> flags = new ArrayList<>();
flags.add(AnnotationFlags.DEFAULT);

List<Point> points = new ArrayList<>();
points.add(new Point().X(132.).Y(380.)); // Top-Left edge of the Strike Through line
points.add(new Point().X(95.).Y(10.));	// Top-Right edge of the strike through line
points.add(new Point().X(130.).Y(25.));
points.add(new Point().X(130.).Y(10.));

StrikeOutAnnotation annotation = new StrikeOutAnnotation();
annotation.setName("Name");
annotation.setRect(rect);
annotation.setFlags(flags);
annotation.setHorizontalAlignment(HorizontalAlignment.CENTER);
annotation.setRichText("Rich Text");
annotation.setSubject("Subj");
annotation.setZindex(1);
annotation.setTitle("Title");
annotation.setQuadPoints(points);
annotation.setModified("05/22/2021 00:00:00.000 AM");
			        

List<StrikeOutAnnotation> annotations = new ArrayList<>();
annotations.add(annotation);

AsposeResponse response = pdfApi.postPageStrikeOutAnnotations(sourcePDF, pageNumber, annotations, null, null);
assertEquals(200, (int)response.getCode());

Kiemelés megjegyzés hozzáadása

A PDF-ben található tartalom kiemelése elengedhetetlen, mert így felhívhatjuk a figyelmet a dokumentumon belüli fontos információkra. A kiemelés azért hatékony, mert először arra kéri az olvasót, hogy válassza ki a fontos részeket, majd hatékony módot ad az információk későbbi áttekintésére. A Cloud API lehetővé teszi a PDF-dokumentumok tartalmának kiemelését. Az alábbiakban bemutatjuk a kiemelt megjegyzések PDF-fájlba történő hozzáadásának lépéseit.

  • Először is hozzon létre egy PdfApi példányt, miközben megadja a ClientSecret és a ClientId adatait.
  • Létrehozunk egy fájlpéldányt a PDF-fájl helyi rendszerből való betöltéséhez, majd meghívjuk a PdfApi osztály uploadFile(…) metódusát a dokumentum felhőtárhelyre való feltöltéséhez.
  • Most hozzon létre egy példányt a Rectangle osztályból, hogy megadja azt a téglalap alakú régiót, amelyhez megjegyzéseket lehet hozzáadni.
  • Ezután hozzon létre egy Point típusú ArrayList-et, amely tartalmazza a HighlightAnnotation megrajzolásához szükséges pontokra vonatkozó információkat.
  • Hozzon létre egy objektumot a HighlightAnnotation osztályból, és állítsa be a Név, Téglalap alakú régió, Tárgy, Cím, QuadPoints, Annotation módosítás dátumát.
  • A következő lépés egy HighlightAnnotation típusú lista létrehozása, és a fent létrehozott HighlightAnnotation objektum hozzáadása ehhez a listához.
  • Végül hívja meg a PdfApi osztály postPageHighlightAnnotations(…) metódusát, és adja át argumentumként a forrás PDF-t, az oldalszámot és az Annotations listát.
Jelölje ki a Jegyzet előnézetét

  1. kép: – jelölje ki a megjegyzést a PDF-fájlban.

A fenti példában használt mintafájlokat letöltheti a következő hivatkozásokról

Soros megjegyzés hozzáadása

Az áthúzott és kiemelések hozzáadásához hasonlóan az API is lehetővé teszi sorjegyzetek hozzáadását a PDF dokumentumokhoz. Van egy LineAnnotation nevű osztályunk ennek a követelménynek a teljesítésére. Az alábbiakban további részletek találhatók e követelmény teljesítésével kapcsolatban.

  • Először is hozzon létre egy PdfApi példányt, miközben megadja a ClientSecret és a ClientId adatait.
  • Opcionálisan létrehozunk egy fájlpéldányt egy PDF-fájl betöltéséhez a helyi rendszerből, majd meghívjuk a PdfApi osztály uploadFile(…) metódusát a dokumentum felhőtárhelyre való feltöltéséhez. Abban az esetben, ha a fájl már elérhető a felhőtárhelyen, használhatjuk.
  • Az objektum inicializálásának többi tulajdonsága megegyezik a HighlithAnnotationnél fentebb említettekkel, kivéve, hogy létre kell hoznunk egy LineAnnotation osztályú objektumot, és be kell állítani egy sor kezdő- és végpontját a setStarting(…) és setEnding(…) metódusokkal.
// Szerezze be a ClientID-t és a ClientSecret-et a https://dashboard.aspose.cloud/ webhelyről
String clientId = "7042694c-5251-4aba-83c9-e81e7518724f";
String clientSecret = "db246d4742e8cd22e7266c9391992689";
				
// createPdfApi példány
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// PDF dokumentum bevitele
String sourcePDF = "PdfWithTable.pdf";	        
			    
// Töltse be a fájlt a helyi rendszerről
File file = new File("/Users/nayyershahbaz/Downloads/" + sourcePDF);

// töltse fel a fájlt a felhőtárhelyre
FilesUploadResult uploadResponse = pdfApi.uploadFile(sourcePDF, file, null);

// oldalszám, ahol megjegyzés lesz hozzáadva				
int pageNumber = 1;

// hozzon létre téglalap alakú területet a megjegyzéshez  
Rectangle rect = new Rectangle()
    .LLX(100.)
    .LLY(500.)
    .URX(400.)
    .URY(510.);

// hozzon létre AnnotationFlags típusú Lista objektumot
List<AnnotationFlags> flags = new ArrayList<>();
flags.add(AnnotationFlags.DEFAULT);

// Hozzon létre Line Annotations objektumot
LineAnnotation annotation = new LineAnnotation();

annotation.setName("Name");
annotation.setRect(rect);
annotation.setFlags(flags);
annotation.setRichText("Rich Text");
annotation.setSubject("Subj");
annotation.setTitle("Title");

// állítsa be a vonal kezdőpontját
annotation.setStarting(new Point().X(100.).Y(100.));
// állítsa be a vonal végpontját
annotation.setEnding(new Point().X(20.).Y(680.));

// színpéldány létrehozása a staleblu számára
Color color = new Color();
color.setA(0x00);
color.setR(0x6A);
color.setG(0x5A);
color.setB(0xCD);
// állítsa be a kommentár színét
annotation.interiorColor(color);

// állítsa be a megjegyzés módosításának dátumát			      
annotation.setModified("05/22/2021 00:00:00.000 AM");
			        
// Létrehozza a sorjegyzetek listáját
List<LineAnnotation> annotations = new ArrayList<>();
// adjon hozzá LineAnnotation objektumot a Line Annotations listához
annotations.add(annotation);

// hívja meg az API metódust, hogy sorjegyzetet adjon a PDF-fájlhoz
AsposeResponse response = pdfApi.postPageLineAnnotations(sourcePDF, pageNumber, annotations, null, null);

Kör megjegyzés hozzáadása PDF-ben

A körjegyzeteket a PDF dokumentumokban is gyakran használják, és az API nagyon jól támogatja ezt a megjegyzéstípust. A körjegyzetek hozzáadásához próbálja meg a CircleAnnotation osztályt használni. Az alábbi kód használható ennek a követelménynek a teljesítésére.

// Szerezze be a ClientID-t és a ClientSecret-et a https://dashboard.aspose.cloud/ webhelyről
String clientId = "7042694c-5251-4aba-83c9-e81e7518724f";
String clientSecret = "db246d4742e8cd22e7266c9391992689";
				
// createPdfApi példány
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// PDF dokumentum bevitele
String sourcePDF = "PdfWithTable.pdf";	        
			    
// Töltse be a fájlt a helyi rendszerről
File file = new File("/Users/nayyershahbaz/Downloads/" + sourcePDF);

// töltse fel a fájlt a felhőtárhelyre
FilesUploadResult uploadResponse = pdfApi.uploadFile(sourcePDF, file, null);
// oldalszám, ahol a megjegyzés hozzáadásra kerül				
int pageNumber = 1;

// hozzon létre téglalap alakú területet a megjegyzéshez  
Rectangle rect = new Rectangle()
    .LLX(100.)
    .LLY(700.)
    .URX(300.)
    .URY(500.);

// hozzon létre AnnotationFlags típusú Lista objektumot
List<AnnotationFlags> flags = new ArrayList<>();
flags.add(AnnotationFlags.DEFAULT);

// Hozzon létre Highlight Annotations objektumot
CircleAnnotation annotation = new CircleAnnotation();
annotation.setName("Name");
annotation.setRect(rect);
annotation.setFlags(flags);
annotation.setRichText("Rich Text");
annotation.setSubject("Subj");
annotation.setTitle("Title");

// színpéldány létrehozása a staleblu számára
Color color = new Color();
color.setR(0xC7);
color.setG(0xE2);
color.setB(0x6f);
// állítsa be a kommentár színét
annotation.interiorColor(color);

// állítsa be a megjegyzés módosításának dátumát			      
annotation.setModified("05/22/2021 00:00:00.000 AM");
			        
// Kiemelési megjegyzések listás példányának létrehozása
List<CircleAnnotation> annotations = new ArrayList<>();

// adja hozzá a CircleAnnotation objektumot a Circle Annotations listához
annotations.add(annotation);

// hívja meg az API metódust a Circle Annotation PDF-fájlhoz való hozzáadásához
AsposeResponse response = pdfApi.postPageCircleAnnotations(sourcePDF, pageNumber, annotations, null, null);
Kör megjegyzés PDF-ben

  1. kép: - Kör megjegyzés PDF-fájlban.

A bemeneti PDF-dokumentum és az eredményül kapott PDF a fentiek szerint letölthető a következő hivatkozásokról:

Gyors tipp

Használja ingyenes online [PDF Annotation App] alkalmazásunkat 20, hogy egyetlen kattintással távolítsa el az összes megjegyzést a PDF-ből.

Következtetés

Ebben a blogban az Aspose.PDF Cloud SDK for Java által jelenleg támogatott különféle megjegyzéstípusokat tárgyaltuk. A megjegyzéseken kívül az API számos egyéb, a PDF formátumhoz kapcsolódó izgalmas funkciót támogat. További információért javasoljuk, hogy tanulmányozza tovább a Fejlesztői útmutatót.

Tájékoztatjuk, hogy ügyfeleinket mindig a lehető legjobban kiszolgáljuk, visszajelzéseiket, javaslataikat tudomásul vesszük. Tehát, ha bármilyen problémába ütközik az API használata során, vagy bármilyen kapcsolódó kérdése van, forduljon hozzánk bizalommal Ingyenes támogatási fórumunkon.

Kapcsolódó cikkek

Erősen javasoljuk, hogy látogassa meg az alábbi linkeket, ha többet szeretne megtudni erről: