lnk Annotation Line Width
Bevezetés
Amikor PDF-dokumentumokkal dolgozik, a megjegyzések hozzáadása hatékony módja lehet az információk kiemelésének vagy interaktív elemek hozzáadásának a fájlokhoz. Az egyik ilyen megjegyzés az Ink Annotation, amely lehetővé teszi, hogy szabad formájú vonalakat rajzoljon a PDF-fájlba. De mi van akkor, ha testre kell szabnia e vonalak megjelenését, különösen a vonalszélességet? Ebben az oktatóanyagban végigvezetjük a tinta megjegyzés vonalszélességének beállításán az Aspose.PDF for .NET használatával.
Előfeltételek
Mielőtt belemerülne a kódba, győződjön meg arról, hogy minden be van állítva az oktatóanyag zökkenőmentes követéséhez:
- Aspose.PDF for .NET: Győződjön meg arról, hogy telepítve van az Aspose.PDF for .NET könyvtár. Letöltheti aletöltési oldal vagy telepítse a NuGet Package Manager segítségével a Visual Studio alkalmazásban.
- Fejlesztési környezet: Ez az oktatóanyag feltételezi, hogy .NET fejlesztői környezetben, például a Visual Studioban dolgozik.
- Alapvető C# ismerete: A C# alapvető ismerete segít a kódolási lépések követésében.
- PDF-dokumentum: Használjon egy meglévő PDF-dokumentumot, vagy hozzon létre egy újat ehhez az oktatóanyaghoz.
A szükséges névterek importálása
A kódolás megkezdése előtt feltétlenül importálja a szükséges névtereket a projektbe:
using System.IO;
using Aspose.Pdf.Annotations;
using Aspose.Pdf;
using Aspose.Pdf.Facades;
using System;
using System.Collections;
using System.Collections.Generic;
Ezek a névterek biztosítják a PDF-dokumentumok kezeléséhez, a megjegyzésekkel való munkához és a grafikus elemek kezeléséhez szükséges osztályokat és módszereket.
Most, hogy megvannak az előfeltételeink, bontsuk le a tinta annotáció vonalszélességének beállítását egyértelmű, kezelhető lépésekre.
1. lépés: Inicializálja a PDF-dokumentumot
Először is létre kell hoznunk vagy meg kell nyitnunk egy PDF dokumentumot. Ehhez az oktatóanyaghoz egy új PDF-dokumentumot készítünk a semmiből.
// Inicializálja a PDF-dokumentumot
string dataDir = "YOUR DOCUMENT DIRECTORY"; // Adja meg a dokumentumkönyvtárat
Document doc = new Document();
doc.Pages.Add(); // Adjon hozzá egy üres oldalt a dokumentumhoz
Itt inicializálunk egy újatDocument
objektum, amely a mi PDF fájlunkat képviseli. Ezután hozzáadunk egy üres oldalt ehhez a dokumentumhoz.
2. lépés: Hozza létre a tintajegyzetet
Ezután létrehozzuk magát a tinta-annotációt. Ez magában foglalja a tintavonásokat alkotó pontok meghatározását.
// Hozzon létre tintajegyzetet
IList<Point[]> inkList = new List<Point[]>();
LineInfo lineInfo = new LineInfo();
lineInfo.VerticeCoordinate = new float[] { 55, 55, 70, 70, 70, 90, 150, 60 };
lineInfo.Visibility = true;
lineInfo.LineColor = Color.Red;
lineInfo.LineWidth = 2;
Ebben a lépésben meghatározzuk aLineInfo
objektum, amely tartalmazza a tintavonások koordinátáit, láthatóságát, színét és kezdeti vonalszélességét. AVerticeCoordinate
A tömb a körvonal minden pontjának X és Y koordinátáit tartalmazza.
3. lépés: Konvertálja a koordinátákat pontokká
Most ezeket a koordinátákat olyan pontokká kell konvertálnunk, amelyeket az Ink Annotation használhat.
// Konvertálja a koordinátákat pontokká
int length = lineInfo.VerticeCoordinate.Length / 2;
Aspose.Pdf.Point[] gesture = new Aspose.Pdf.Point[length];
for (int i = 0; i < length; i++)
{
gesture[i] = new Aspose.Pdf.Point(lineInfo.VerticeCoordinate[2 * i], lineInfo.VerticeCoordinate[2 * i + 1]);
}
inkList.Add(gesture);
Ez a ciklus feldolgozza a koordinátatömböt, és minden koordinátapárt a-vá alakítPoint
objektum, amely azután hozzáadódik a miinkList
.
4. lépés: Adja hozzá a tinta megjegyzést a PDF-oldalhoz
Ha készen vannak a pontok, most elkészíthetjük a tinta annotációt, és hozzáadhatjuk a PDF oldalhoz.
// Adja hozzá a tinta megjegyzést a PDF-oldalhoz
InkAnnotation a1 = new InkAnnotation(doc.Pages[1], new Aspose.Pdf.Rectangle(100, 100, 300, 300), inkList);
a1.Subject = "Test";
a1.Title = "Title";
a1.Color = Aspose.Pdf.Color.FromRgb(Color.Green);
Ebben a lépésben inicializálunk egyInkAnnotation
objektumot, megadva az oldalt, egy határoló téglalapot és a pontlistánkat. Beállítjuk a kommentár tárgyát, címét és színét is.
5. lépés: A kommentár szegélyének testreszabása
A kommentár megjelenésének további testreszabása érdekében módosítjuk a szegély tulajdonságait.
// Testreszabhatja a kommentár szegélyét
Border border = new Border(a1);
border.Width = 3;
border.Effect = BorderEffect.Cloudy;
border.Dash = new Dash(1, 1);
border.Style = BorderStyle.Solid;
doc.Pages[1].Annotations.Add(a1);
Itt létrehozunk aBorder
objektumot a megjegyzésünkhöz, beállítva annak szélességét, hatását, szaggatott mintáját és stílusát. Ez a lépés biztosítja, hogy a megjegyzés vizuálisan kiemelkedjen a PDF-oldalon.
6. lépés: Mentse el a PDF-dokumentumot
Végül az összes szükséges módosítás elvégzése után eljött az ideje a dokumentum mentésének.
// Mentse el a PDF dokumentumot
dataDir = dataDir + "lnkAnnotationLineWidth_out.pdf";
doc.Save(dataDir);
Console.WriteLine("\nInk annotation line width setup successfully.\nFile saved at " + dataDir);
Ez a kód elmenti a módosított PDF dokumentumot a tinta megjegyzéssel a megadott könyvtárba. AConsole.WriteLine
utasítás megerősíti a kód sikeres végrehajtását.
Következtetés
Gratulálok! Sikeresen létrehozott és testreszabott egy tintajegyzetet egy PDF-dokumentumban az Aspose.PDF for .NET használatával. Ez az oktatóanyag a teljes folyamatot lefedte, a dokumentum inicializálásától a végső fájl mentéséig. Ezzel a tudással tovább fedezheti az Aspose.PDF for .NET hatalmas képességeit, és hasonló technikákat alkalmazhat más típusú megjegyzéseknél vagy PDF-manipulációknál.
GYIK
Használhatok különböző színeket a tintajegyzet különböző részeihez?
Igen, létrehozhat többször isInkAnnotation
különböző színű objektumokat, és adja hozzá őket a PDF-fájl azonos vagy különböző oldalaihoz.
Hogyan változtathatom meg dinamikusan a vonal szélességét?
Beállíthatja aLineWidth
tulajdona aLineInfo
objektumot a koordináták pontokká alakítása előtt.
Lehetséges-e átlátszóvá tenni a tinta annotációt?
Igen, módosíthatja aOpacity
tulajdona aInkAnnotation
tárgyat, hogy átlátszó legyen.
Hozzáadhatok több tintajelölést ugyanarra az oldalra?
Teljesen! A folyamat megismétlésével tetszőleges számú tintajegyzetet adhat hozzá egyetlen oldalhoz.
Hogyan távolíthatok el egy tintajelölést a PDF-ből?
A kommentárt a következővel távolíthatja eldoc.Pages[1].Annotations.Delete(a1)
módszer, hola1
az annotációs objektuma.