Hogyan adjon hozzá vonalkódot PDF-hez Java-ban
Bevezetés
Szüksége volt már arra, hogy automatikusan nyomon kövesse a számlákat, ellenőrizze a szerződések hitelességét, vagy nagyméretben kezelje a készletdokumentumokat? A vonalkód PDF-fájlokhoz való programozott hozzáadásának megtanulása megoldja ezeket a problémákat – és ha Java-val dolgozik, egy stabil, kipróbált megoldása van.
A vonalkódok kézi hozzáadása nem skálázható. Akár tíz számlát, akár tízezeret dolgoz fel, megbízható módra van szüksége a vonalkód PDF‑hez való hozzáadásához. Itt jön jól egy jó Java PDF vonalkód könyvtár.
Ebben az útmutatóban végigvezetem, hogyan adjon hozzá vonalkódot PDF Java fájlokhoz a GroupDocs.Signature segítségével – egy olyan könyvtár, amely elvégzi a nehéz munkát, miközben finomhangolt vezérlést biztosít a pozicionálás, a méretezés és a vonalkódtípusok felett. A végére megtanulja, hogyan írjon alá PDF-et vonalkód Java kóddal, hogyan kezelje a szélsőséges eseteket, és hogyan kerüljön el gyakori csapdákat, amelyek fejlesztőket akadályoznak.
Mit fog megtanulni:
- Miért fontosak a vonalkódok a PDF-ekben a munkafolyamatában
- A GroupDocs.Signature Java-hoz való beállítása (helyesen)
- Vonalkód aláírások létrehozása és pontos pozicionálása
- Hibakezelés és teljesítményoptimalizálás
- Valós példák különböző iparágakban
Gyors válaszok
- Melyik könyvtárat használjam? GroupDocs.Signature for Java
- Hogyan hozhatok létre vonalkód aláírást PDF-ben? Használja a
BarcodeSignOptions‑t aSignature.sign()‑nel - Melyik vonalkódtípus a legjobb a legtöbb esetben? Code128
- Hozzáadhatok több vonalkódot egy PDF-hez? Igen, hívja meg a
sign()‑t többször, vagy adjon át egy listát - Szükség van licencre a termeléshez? Igen, egy érvényes GroupDocs licenc eltávolítja a vízjeleket
Miért adjunk vonalkódot a PDF-ekhez?
Mielőtt a kódba merülnénk, beszéljünk arról, miért fontos ez. A PDF-ekben lévő vonalkódok nem csak a professzionális megjelenésről szólnak – valós üzleti problémákat oldanak meg:
Dokumentum ellenőrzés – A vonalkódok egyedi azonosítókat kódolhatnak, amelyek szinte lehetetlenné teszik a hamisítást. Amikor valaki beolvassa a vonalkódot, a rendszer azonnal ellenőrizheti, hogy a dokumentum eredeti‑e.
Munkafolyamat‑automatizálás – A dokumentum‑azonosítók vagy nyomkövető számok kézi beírása helyett a személyzet (vagy az ügyfelek) beolvashatják a vonalkódot. Ez körülbelül 95 %-kal csökkenti az emberi hibákat a kézi adatbevitelhez képest.
Integráció meglévő rendszerekkel – A legtöbb ERP, készlet‑ és dokumentumkezelő rendszer már “vonalkódot” ért. Ha hozzáadja őket a PDF-ekhez, zökkenőmentes integrációt kap anélkül, hogy egyedi API‑kat kellene építenie.
Megfelelőségi követelmények – Sok iparág (egészségügy, logisztika, jog) megköveteli a dokumentum‑nyomonkövethetőséget. A vonalkódok audit‑nyomot biztosítanak, amely megfelel a szabályozási előírásoknak.
A programozott vonalkód‑hozzáadás kulcsfontosságú előnye? Következetesség és méretezhetőség. Egyszer definiálja a szabályokat, és minden dokumentum ugyanúgy kezelve lesz – akár öt, akár ötven ezer fájlt dolgoz fel.
Előfeltételek
Mielőtt kódolni kezdene, győződjön meg róla, hogy az alábbi alapok rendben vannak:
Szükséges szoftverek és könyvtárak
- JDK 8 vagy újabb telepítve a gépén (JDK 11+ ajánlott a jobb teljesítményért)
- IntelliJ IDEA, Eclipse vagy VS Code Java‑bővítményekkel
- GroupDocs.Signature for Java 23.12 verzió (a telepítést alább bemutatjuk)
Alapvető tudás
- Jól ismeri a Java alapjait (osztályok, objektumok, fájlkezelés)
- Ismeri a PDF dokumentum struktúráját (hasznos, de nem kötelező)
- Tapasztalt a függőségkezelésben (Maven vagy Gradle)
Pro tipp: Ha újonc a GroupDocs‑nél, először töltse le az ingyenes próbaverziót. 30 napot ad kísérletezésre licenc vásárlása nélkül – tökéletes a proof‑of‑concept munkához.
A GroupDocs.Signature Java‑hoz való beállítása
A GroupDocs.Signature projektbe való beillesztése egyszerű. Válassza ki a környezetéhez illő függőségkezelőt:
Maven beállítás
Adja hozzá a következőt a pom.xml fájlhoz:
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-signature</artifactId>
<version>23.12</version>
</dependency>
Gradle beállítás
Gradle‑használók számára adja hozzá ezt a sort a build.gradle‑hoz:
implementation 'com.groupdocs:groupdocs-signature:23.12'
Közvetlen letöltés
Nem szeretne build‑eszközöket használni? Töltse le a JAR‑t közvetlenül a GroupDocs.Signature for Java releases page oldalról, és manuálisan adja hozzá a projekt osztályútvonalához.
Licenc konfiguráció
Íme a legtöbb fejlesztő által követett licencelési út:
- Kezdje az ingyenes próbaverzióval – Nincs hitelkártya, nincs kötelezettség. Tökéletes a teszteléshez.
- Szerezzen ideiglenes licencet – Ha a 30 nap nem elég, kérjen ideiglenes licencet a hosszabb fejlesztéshez.
- Vásároljon termelésre – Amikor készen áll a bevezetésre, vásároljon olyan licencet, amely megfelel a felhasználási szintjének.
Fontos: Az ingyenes próbaverzió vízjeleket helyez a kimeneti dokumentumokra. Ügyfél‑szemléltető munkához legalább ideiglenes licenc szükséges.
Kezdeti beállítási kód
Miután a függőségek a helyükön vannak, inicializálja a Signature objektumot így:
import com.groupdocs.signature.Signature;
// Initialize Signature object with your document path
Signature signature = new Signature("YOUR_DOCUMENT_DIRECTORY/sample.pdf");
Mi történik itt: A Signature osztály a fő belépési pont. Megad egy fájlútvonalat, és betölti a PDF‑et memóriába feldolgozásra. Egyszerű, ugye?
Gyakori hiba, amit kerülni kell: Ne felejtse el bezárni a Signature objektumot, amikor befejezte (vagy használjon try‑with‑resources‑t). Nyitva hagyva memória‑szivárgást okozhat hosszú‑távú alkalmazásokban.
A megfelelő vonalkódtípus kiválasztása
Nem minden vonalkód egyforma. A választott típus attól függ, mit kell kódolnia és hol fogják leolvasni a vonalkódot.
Támogatott népszerű vonalkódtípusok
- Code128 – Kiváló alfanumerikus adatokhoz; gyakori szállítási címkéken.
- QR kódok – Ideális, ha több adatot kell tárolni (URL‑ek, JSON, akár 4 000 karakter).
- Code39 – Egyszerűbb, mint a Code128, de kevésbé helytakarékos; jó belső nyomonkövetéshez.
- EAN/UPC – Iparági szabvány a kiskereskedelmi termékekhez.
Mikor melyiket használja?
- Több mint 50 karakter kódolására van szükség? → QR kód
- Standard termékazonosítás? → EAN/UPC
- Általános dokumentum‑nyomonkövetés? → Code128
- Maximális kompatibilitás régi szkennerekkel? → Code39
Pro tipp: A Code128 a legbiztonságosabb alapértelmezett választás dokumentumkezeléshez. Egyensúlyt teremt az olvashatóság, az adatkapacitás és a szkenner‑kompatibilitás között.
Implementációs útmutató: vonalkód aláírások létrehozása
Most jön a jó rész – valójában hozzunk létre és adjunk hozzá vonalkódokat a PDF‑ekhez. A lépéseket könnyen követhető egységekre bontom, hogy akár csak a szükséges részeket is átugorhassa.
1. lépés: Dokumentumútvonalak beállítása
Először is mondja meg a Java‑nak, hol találja a PDF‑et, és hová mentse az aláírt változatot:
String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
String fileName = new File(filePath).getName();
Mi történik: Definiálja a bemeneti fájl útvonalát, és csak a fájlnevet vonja ki. Ez segít rendszerezni a kimenetet (különösen hasznos több fájl batch‑feldolgozásakor).
Valós tippek: Termelésben ezek az útvonalak általában konfigurációs fájlokból vagy környezeti változókból származnak – nem hard‑coded stringek. Érdemes System.getenv()‑t vagy egy properties fájlt használni a rugalmasságért.
2. lépés: Kimenet és vonalkód‑opciók konfigurálása
Ezután adja meg, hová kerül a kész PDF, és milyen vonalkódot szeretne létrehozni:
// Define output file path
String outputFilePath = "YOUR_OUTPUT_DIRECTORY/SignWithMillimeters/" + fileName;
BarcodeSignOptions options = new BarcodeSignOptions("12345678");
options.setEncodeType(BarcodeTypes.Code128);
Részletezés:
outputFilePath– A kész PDF mentési helye. Figyelje a almappaszerkezetet, ez segít a különböző aláírási módszerek rendezésében.BarcodeSignOptions("12345678")– A vonalkódban kódolt adat. Lehet számla‑szám, nyomkövető ID, dokumentum‑hash – bármi, amire szüksége van.setEncodeType(BarcodeTypes.Code128)– Megmondja a GroupDocs‑nek, hogy melyik vonalkódtípust használja.
Gyakori kérdés: “Használhatok speciális karaktereket a vonalkód adatában?” Code128‑nál igen – betűket, számokat és a legtöbb írásjelet. A QR kódok még rugalmasabbak.
3. lépés: A vonalkód pontos pozicionálása
Itt jön a varázslat. A vonalkódok milliméter‑pontos elhelyezése lehetséges:
// Set position and size in millimeters
options.setLocationMeasureType(MeasureType.Millimeters);
options.setLeft(40); // X‑coordinate from left edge
options.setTop(50); // Y‑coordinate from top edge
options.setSizeMeasureType(MeasureType.Millimeters);
options.setWidth(20); // Width of the barcode
options.setHeight(10); // Height of the barcode
Miért fontosak a milliméterek: Nyomtatott dokumentumok esetén a milliméter egység konzisztens méretezést biztosít különböző papírméretek és felbontások között. (Használhat pixel‑ vagy százalék‑alapú értékeket is, ha az jobban illik a felhasználási esethez.)
Pozicionálási stratégia:
- Jobb‑felső sarok (pl. szállítási címkék):
setLeft(150),setTop(10) - Alsó‑közép (pl. jegyek): a középpont kiszámítása az oldal szélessége alapján
- Meglévő tartalom mellett: mérje fel a PDF‑elrendezést, és ennek megfelelően helyezze el
Pro tipp: Tesztelje a pozicionálást néhány mintapdf‑en, mielőtt batch‑feldolgozást indít. Különböző PDF‑elrendezésekhez apró finomhangolásra lehet szükség.
4. lépés: Margók hozzáadása a kifinomultságért
A margók megakadályozzák, hogy a vonalkód más tartalmakhoz nyomódjon:
// Define margin settings
Padding padding = new Padding();
padding.setLeft(5); // Left margin in mm
padding.setTop(5); // Top margin in mm
padding.setRight(5); // Right margin in mm
padding.setBottom(5); // Bottom margin in mm
options.setMargin(padding);
Mit csinál: 5 mm-es „párnát” hoz létre a vonalkód körül. Ez a légköz javítja a leolvasást és professzionálisabb megjelenést kölcsönöz.
Mikor növelje a margókat: Ha a vonalkódot az oldal széléhez közel helyezi, állítsa 10 mm‑re. A nyomtatók gyakran problémát okoznak a túl szélre kerülő tartalommal.
5. lépés: Aláírás és mentés
Most jön a döntő pillanat – a vonalkód tényleges hozzáadása:
// Sign and save the document
SignResult signResult = signature.sign(outputFilePath, options);
Mi történik a háttérben: A GroupDocs megnyitja a PDF‑et, a megadott opciók alapján rendereli a vonalkódot, beágyazza a megadott pozícióba, majd elmenti a módosított fájlt. Az eredeti PDF érintetlen marad.
Visszatérési érték: A SignResult objektum tartalmazza a siker/hiba állapotot és metaadatokat arról, mi lett aláírva. Ellenőrizheti, hogy minden rendben ment‑e.
6. lépés: Hibák szép kezelése
Különböző hibák léphetnek fel (helytelen útvonalak, sérült PDF‑ek, hiányzó jogosultságok). Kezelje őket megfelelően:
try {
Signature signature = new Signature(filePath);
SignResult signResult = signature.sign(outputFilePath, options);
System.out.println("Barcode added successfully!");
System.out.println("Output saved to: " + outputFilePath);
} catch (Exception e) {
System.err.println("Error signing document: " + e.getMessage());
throw new GroupDocsSignatureException(e.getMessage());
}
Legjobb gyakorlatok a kivételkezeléshez:
- Naplózza a teljes stack trace‑t a hibakereséshez (ne csak az üzenetet)
- Adjon felhasználóbarát hibaüzeneteket (kerülje a technikai zsargont)
- Tisztítsa meg az erőforrásokat még hibák esetén is (használjon try‑with‑resources‑t)
- Fontolja meg az újrapróbálási logikát átmeneti hibákra (hálózati problémák, zárolt fájlok)
Gyakori hibák:
FileNotFoundException– A bemeneti PDF útvonala hibásGroupDocsSignatureException– Érvénytelen vonalkód adat vagy nem támogatott PDF verzióOutOfMemoryError– Túl sok nagy PDF egyszerre történő feldolgozása
Hogyan hozhatunk létre vonalkód aláírást PDF-ben Java‑val
Ha egy tömör, lépés‑ről‑lépésre ellenőrzőlistát szeretne, itt van:
- Adja hozzá a GroupDocs.Signature függőséget (Maven, Gradle vagy manuális JAR).
- Inicializálja a
Signature‑t a forrás‑PDF útvonalával. - Állítsa be a
BarcodeSignOptions‑t – adja meg az adatot, típust, méretet és helyet. - Opcionálisan állítson be margókat a jobb olvashatóságért.
- Hívja meg a
signature.sign(outputPath, options)‑t a vonalkód beágyazásához. - Kezelje a kivételeket és zárja le az erőforrásokat.
Ezeknek a hat lépésnek a követésével megbízhatóan vonalkódot adhat hozzá PDF Java dokumentumokhoz bármely Java‑alkalmazásban.
Gyakori problémák és megoldások
Nézzük meg a fejlesztők által ténylegesen tapasztalt problémákat (mert a dokumentáció ritkán foglalkozik velük):
Probléma 1: A vonalkód nem olvasható megfelelően
Tünetek: A szkenner nem tudja beolvasni a vonalkódot vagy hibás adatot ad vissza.
Megoldások:
- Növelje a vonalkód méretét (minimum 15 mm szélesség a legtöbb szkennerhez)
- Ellenőrizze, hogy a vonalkód adat nem tartalmaz-e nem támogatott karaktereket a kiválasztott típushoz
- Biztosítson megfelelő kontrasztot a vonalkód és a háttér között
- Teszteljen több szkenner‑alkalmazással – egyesek jobbak, mint mások
Probléma 2: A vonalkód pozíciója változik a dokumentumok között
Tünetek: Ugyanaz a pozicionálási kód különböző oldalméretekkel rendelkező PDF‑eken eltérő eredményt ad.
Megoldások:
- Különböző oldalméretekkel rendelkező PDF‑ekhez számított pozíciók szükségesek, ne keménykódolt értékek
- Ellenőrizze, hogy a forrás‑PDF‑ek nem tartalmaznak‑e forgatást (ez eltolja a koordinátákat)
- Használjon százalék‑alapú pozicionálást a jobb konzisztencia érdekében
- Normalizálja a bemeneti PDF‑eket egy standard oldalméretre, ha lehetséges
Probléma 3: Teljesítménycsökkenés nagy batch‑eknél
Tünetek: Az első 100 PDF gyorsan feldolgozásra kerül, majd lassul.
Megoldások:
- Zárja le a
Signatureobjektumokat azonnal (vagy használjon try‑with‑resources‑t) - Dolgozzon kisebb batch‑ekben, a batch‑ek között tisztítsa a memóriát
- Fontolja meg a párhuzamos feldolgozást CPU‑intenzív műveletekhez
- Figyelje a heap használatot – lehet, hogy JVM‑tuningra van szükség
// Good: Process in chunks
List<String> allFiles = getAllPdfFiles();
int batchSize = 100;
for (int i = 0; i < allFiles.size(); i += batchSize) {
List<String> batch = allFiles.subList(i, Math.min(i + batchSize, allFiles.size()));
processBatch(batch);
System.gc(); // Suggest garbage collection between batches
}
Probléma 4: Kimeneti fájlméret növekedése
Tünetek: Az aláírt PDF‑ek lényegesen nagyobbak, mint az eredetiek.
Megoldások:
- A GroupDocs nem tömörít automatikusan – ha szükséges, külön kezelje a tömörítést
- Kerülje a magas felbontású vonalkód‑képek használatát, ha vektorok is megfelelnek
- Ellenőrizze, hogy nem ágyaz be véletlenül betűkészleteket vagy extra metaadatokat
Mikor vegye fel a kapcsolatot a támogatással: Ha a fenti megoldások után is fennáll a probléma, a GroupDocs fórum gyors segítséget nyújt.
Valós példák
Íme, hogyan használják ezt a képességet különböző iparágak:
Jogi ipar: Szerződéskezelés
Ügyvédi irodák vonalkódot helyeznek a szerződésekre, hogy a fizikai dokumentumokat összekapcsolják az ügykezelő rendszerekkel. A vonalkód beolvasásával azonnal megjelenik a teljes ügytörténet, így a feldolgozási idő percekről másodpercekre csökken.
Implementációs tipp: Kódoljon egy dokumentum‑hash‑t a vonalkódba, így ellenőrizhető, hogy a fizikai dokumentum nem változott‑e.
Egészségügy: Betegnyilvántartások
Kórházak a kiszállási összefoglalókhoz és recept‑PDF‑ekhez vonalkódot csatolnak. Amikor a betegek bejelentkeznek, a személyzet beolvassa a vonalkódot, és azonnal feltölti a fájlt a korábbi látogatások adataival.
Megfelelőségi megjegyzés: Győződjön meg róla, hogy a vonalkód‑implementáció megfelel a HIPAA előírásainak az adatkódolás tekintetében.
Logisztika: Szállítási címkék
E‑kereskedelmi platformok automatikusan hozzáadnak nyomkövető vonalkódot a csomagcímkékhez. A raktári személyzet beolvassa, és frissíti a szállítási állapotot manuális adatbevitel nélkül.
Teljesítmény‑szempont: Ezek a rendszerek gyakran óránként több ezer dokumentumot dolgoznak fel – ezért a batch‑feldolgozás és a párhuzamos végrehajtás kritikus.
Pénzügy: Számlafeldolgozás
Számviteli osztályok vonalkódot helyeznek a számlákra, amely kódolja a fizetési feltételeket és a szállító ID‑t. A beolvasás automatikusan a megfelelő jóváhagyási folyamatba irányítja őket.
Pro tipp: Kombinálja a vonalkódot OCR‑rel a maximális automatizálásért – a vonalkód a metaadatokat, az OCR a soronkénti tételeket adja.
Teljesítmény‑legjobb gyakorlatok
Nagy mennyiségű dokumentum feldolgozásakor ezek az optimalizációk jelentős különbséget tesznek:
Memóriakezelés
- Használjon try‑with‑resources‑t: Biztosítja, hogy a
Signatureobjektumok megfelelően le legyenek zárva. - Dolgozzon batch‑ekben: Ne töltse be egyszerre a 10 000 PDF‑et a memóriába.
- Figyelje a heap használatot: Állítson be megfelelő JVM‑kapcsolókat (
-Xmx,-Xms).
Batch‑feldolgozási stratégiák
List<String> files = getAllPdfFiles();
files.parallelStream().forEach(file -> {
try {
addBarcodeToFile(file);
} catch (Exception e) {
// Handle per‑file errors
}
});
Figyelem: A párhuzamos feldolgozás több memóriát igényel. Figyelje és hangolja be ennek megfelelően.
Aláírás‑objektumok gyorsítótárazása
Ha hasonló dokumentumokat dolgoz fel ismételten, fontolja meg a konfiguráció újrahasználatát:
// Create options once
BarcodeSignOptions templateOptions = createStandardOptions();
// Reuse for multiple files
for (String file : files) {
BarcodeSignOptions options = templateOptions.clone();
// Customize per file if needed
processFile(file, options);
}
Gyakran ismételt kérdések
K: Hogyan hozhatok létre vonalkód aláírást PDF-ben Java‑val különböző vonalkódtípusokhoz?
A: Módosítsa a setEncodeType() paramétert. QR kódokhoz használja a BarcodeTypes.QR‑t. EAN‑13‑hoz a BarcodeTypes.EAN13‑at. A GroupDocs több mint 60 vonalkódtípust támogat alapból.
K: Hozzáadhatok több vonalkódot ugyanahhoz a PDF‑hez?
A: Természetesen. Hívja meg a signature.sign()‑t többször különböző BarcodeSignOptions‑szal, vagy adjon át egy aláírási opciók listáját egyetlen hívásban.
K: Hogyan adhatok hozzá vonalkódot egy meglévő PDF‑hez anélkül, hogy a tartalom elveszne?
A: A GroupDocs alapértelmezés szerint nem destruktív – új rétegként adja hozzá a vonalkódot, anélkül, hogy módosítaná a meglévő szöveget, képeket vagy formázást.
K: Mi a maximális adatméret, amit egy vonalkódban kódolhatok?
A: Ez a típustól függ. A Code128 körülbelül 128 karaktert kezel kényelmesen. A QR kód akár 4 000 karaktert is tárolhat. Ha ennél több adat szükséges, fontolja meg egy URL kódolását, amely a tényleges adatot tárolja.
K: Szükség van licencre a termeléshez?
A: Igen. Az ingyenes próbaverzió vízjeleket helyez a kimenetre. Termelési környezetben ideiglenes vagy megvásárolt licenc szükséges. Tekintse meg a GroupDocs árazási oldalt a jelenlegi lehetőségekért.
K: Hogyan kezeljem a kivételeket batch‑feldolgozás során?
A: Csomagolja minden fájl műveletét saját try‑catch blokkba, hogy egy hibás PDF ne állítsa le az egész batch‑et. Naplózza a hibákat fájlnevekkel, hogy később újra feldolgozhassa a sikerteleneket.
K: Képes a GroupDocs 2D‑s vonalkódok, például Data Matrix generálására?
A: Igen! Használja a BarcodeTypes.DataMatrix‑t. A Data Matrix vonalkódok népszerűek a gyártásban, mivel részben sérült vagy szokatlan szögekben is olvashatók.
K: Milyen PDF‑verziókat támogat a GroupDocs?
A: A GroupDocs.Signature a PDF‑1.3‑tól a PDF‑2.0‑ig terjedő verziókat kezeli (a 99 %-át lefedi a találkozott PDF‑eknek). Ha nagyon régi PDF‑jei vannak, érdemes először konvertálni őket.
Következtetés
Most már tudja, hogyan vonalkódot adhat hozzá PDF Java dokumentumokhoz programozottan a GroupDocs.Signature segítségével. Áttekintettük a kezdeti beállítástól a termelés‑kész hibakezelésig és a teljesítmény‑optimalizálásig mindent.
Főbb tanulságok
- A vonalkódok valós munkafolyamat‑problémákat oldanak meg (automatizálás, ellenőrzés, nyomonkövethetőség)
- A GroupDocs pontos vezérlést biztosít a pozicionálás és a vonalkódtípusok felett
- A megfelelő hibakezelés és erőforrás‑menedzsment megelőzi a termelési fejfájásokat
- A teljesítmény‑hangolás kulcsfontosságú nagy mennyiségű dokumentum feldolgozásakor
Következő lépések: Kezdjen egy kis proof‑of‑concept‑tel az ingyenes próbaverzióval. Tesztelje a különböző vonalkódtípusokat a saját dokumentumaival. Ha validálva van, lépjen a batch‑feldolgozásra, majd a termelési bevetésre.
Kérdése van, vagy problémába ütközik? Tegye fel a GroupDocs támogatási fórumon – a közösség segítőkész, a válaszidők gyorsak.
Források
Dokumentáció és letöltések
Licenc és támogatás
Utoljára frissítve: 2026-03-22
Tesztelve a következővel: GroupDocs.Signature 23.12 for Java
Szerző: GroupDocs