PDF Эзоҳҳо Ҳуҷҷатҳои Word

Чӣ тавр илова кардани эзоҳҳо ба PDF бо истифода аз C# .NET

Дар асри рақамии имрӯза PDFs ба формати маъмул барои мубодилаи иттилоот, ҳуҷҷатҳо ва ҳисоботҳо табдил ёфтааст. Бо вуҷуди ин, танҳо дидани PDF барои бисёр корбарон кофӣ нест. Баъзан, корбарон метавонанд мехоҳанд, ки ба қисмҳои мушаххаси PDF қайдҳо илова кунанд, то контексти иловагӣ ё фикру мулоҳизаро пешниҳод кунанд. Хушбахтона, якчанд аннотаторҳои ройгони PDF мавҷуданд, ки ба корбарон имкон медиҳанд, ки ба осонӣ шарҳҳо илова кунанд, матнро таъкид кунанд ва ғайра. Аммо, дар ин мақола, мо мефаҳмем, ки чӣ тавр истифода бурдани REST API барои дастгирии эзоҳҳои PDF ва ба шумо нишон медиҳем, ки чӣ тавр ба ҳуҷҷатҳои PDF-и худ қайд, шарҳ додан ва илова кардани қайдҳоро нишон диҳед.

API REST барои тавзеҳи PDF

Aspose.PDF Cloud як ҳалли осони истифода ва ҳамаҷониба барои илова кардани эзоҳҳо ба ҳуҷҷатҳои PDF ба таври барномавӣ пешниҳод мекунад. Бо Aspose.PDF Cloud, шумо метавонед намудҳои гуногуни эзоҳҳоро ба ҳуҷҷатҳои PDF илова кунед, аз ҷумла матн, тасвир, мӯҳр ва эзоҳҳои гуногуни аломатгузорӣ. Шумо инчунин метавонед эзоҳҳои мавҷударо тағир диҳед, ба монанди тағир додани мавқеъ, андоза, ранг ё ҳама гуна хосиятҳои дигар.

Эзоҳҳои дастгиришаванда иборатанд аз Матн, Доира, Полигон, ПолиХат, Хат, Майдон, FreeText, Равшансозӣ, Зерхат, Squiggly, StrikeOut, Caret, Ink, Link, Popup, FileAtachment, Садо, Филм, Экран, Виҷет, Нишони обӣ, TrapNet, PrinterMark, Редакция, штамп, RichMedia ва PDF3D.

Ҳоло, барои илова кардани SDK дар лоиҳаи худ, лутфан Aspose.PDF-Cloud-ро дар менеҷери бастаҳои NuGet ҷустуҷӯ кунед ва тугмаи Иловаи бастаро пахш кунед. Қадами муҳими навбатӣ ин сабти ҳисоб тавассути панели абрӣ ва гирифтани маълумоти шахсии муштарии шумост. Лутфан барои тафсилоти бештар дастури Оғози зуд-ро аз назар гузаронед.

Бо истифода аз C# ба PDF шарҳҳо илова кунед

Биёед порчаи рамзи C# .NET-ро дида бароем, ки барои илова кардани эзоҳ ба ҳуҷҷати PDF истифода мешавад.

// Барои мисолҳои пурра ва файлҳои маълумот, лутфан равед 
https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-dotnet

// Маълумоти эътимоднокии муштариро аз https://dashboard.aspose.cloud/ гиред
string clientSecret = "7f098199230fc5f2175d494d48f2077c";
string clientID = "ee170169-ca49-49a4-87b7-0e2ff815ea6e";

// объекти PdfApi эҷод кунед
PdfApi api = new PdfApi(clientSecret, clientID);

// эҷод кардани объекти Рӯйхат дорои FreeTextAnnotations
List<FreeTextAnnotation> annotations = new List<FreeTextAnnotation>
{
new FreeTextAnnotation(
    // минтақаи росткунҷаеро, ки FreeTextAnnotation дорад, муайян кунед
    // инчунин тафсилоти форматкунии матнро муайян кунед
    Rect: new Rectangle(100, 800, 350, 830),
    TextStyle:new TextStyle(
        FontSize: 26, Font: "Arial",
        ForegroundColor: new Aspose.Pdf.Cloud.Sdk.Model.Color(0xFF, 0, 0xFF, 0),
        BackgroundColor: new Aspose.Pdf.Cloud.Sdk.Model.Color(0xFF, 0xFF, 0, 0)
        ))
    {
    // Мундариҷа дар дохили FreeTextAnnotation намоиш дода мешавад
    Contents = "Confidential !",
    Color = new Aspose.Pdf.Cloud.Sdk.Model.Color(0, 0, 0, 0),
    Id = "id1",
    Name = "Test Free Text",                    
    Flags = new List<AnnotationFlags> {AnnotationFlags.Default},
    HorizontalAlignment = HorizontalAlignment.Center,
    Intent = FreeTextIntent.FreeTextTypeWriter,
    RichText = "Rich Text",
    Subject = "Text Box Subj",
    ZIndex = 1,
    Justification = Justification.Center,
    Title = "Title",
    PageIndex = 1                     
    }
};
var response = api. PostPageFreeTextAnnotations("Binder1.pdf", 1, annotations);

Акнун, биёед пораи кодро ба таври муфассал фаҳмем.

PdfApi api = new PdfApi(clientSecret, clientID);

Як мисоли синфи PdfApi эҷод кунед, ки маълумоти мизоҷро ҳамчун аргумент дар созандаи худ мегирад.

List<FreeTextAnnotation> annotations = new List<FreeTextAnnotation>

Азбаски API қобилияти илова кардани як ё якчанд эзоҳҳои навъи шабеҳро дастгирӣ мекунад, аз ин рӯ мо бояд объекти Рӯйхати навъи FreeTextAnnnotation эҷод кунем.

new FreeTextAnnotation(
    Rect: new Rectangle(100, 800, 350, 830),
    TextStyle:new TextStyle(
        FontSize: 26, Font: "Arial",
        ForegroundColor: new Aspose.Pdf.Cloud.Sdk.Model.Color(0xFF, 0, 0xFF, 0),
        BackgroundColor: new Aspose.Pdf.Cloud.Sdk.Model.Color(0xFF, 0xFF, 0, 0)
        ))

Объекти FreeTextAnnotation эҷод кунед, ки дар он мо минтақаи росткунҷаро барои тафсилоти эзоҳ ва форматкунии матн муайян мекунем.

Contents = "Confidential !"

Дар ин ҷо мо мундариҷаро барои FreeTextAnnotation муайян мекунем.

var response = api. PostPageFreeTextAnnotations("Binder1.pdf", 1, annotations);

Барои илова кардани FreeTextAnnotation дар саҳифаи аввали ҳуҷҷати PDF, ки аллакай дар нигаҳдории абр мавҷуд аст, ба REST API занг занед.

Дар зер арзишҳои эҳтимолӣ дода шудаанд, ки метавонанд ба хосиятҳое, ки дар порчаи коди боло истифода мешаванд, таъин карда шаванд.

  • Парчамҳои Annotation - Қиматҳои дастгирӣшаванда метавонанд [Пешфарз, Нонамоён, Пинҳонӣ, Чоп, NoZoom, NoRotate, NoView, ReadOnly, Locked, ToggleNoView, LockedContents] бошанд.
  • Гард кардан - Кунҷи гардиш барои матн. Қиматҳои имконпазир метавонанд [Не, on90, on180, on270] бошанд.
  • Парчамҳои Annotation - Маҷмӯи парчамҳое, ки хусусиятҳои гуногуни эзоҳро муайян мекунанд. Арзиши имконпазир метавонад [Пешфарз, Нонамоён, Пинҳонӣ, Чоп, NoZoom, NoRotate, NoView, ReadOnly, Locked, ToggleNoView, LockedContents] бошад.
  • FreeTextIntent - Мақсадҳои эзоҳи матни озодро номбар мекунад. Арзишҳои имконпазир метавонанд [ Номаълум, FreeTextCallout, FreeTextTypeWriter] бошанд.

Бо истифода аз фармонҳои cURL ба PDF шарҳи матни ройгон илова кунед

Истифодаи фармонҳои cURL барои занг задан ба Aspose.PDF Cloud API як равиши хуб барои иҷрои ин талабот аст. Инчунин хуб аст, агар шумо бо асбобҳои сатри фармон шинос бошед ё истифодаи онҳоро афзал донед. Ҳамин тавр, бо асбоби сатри фармони cURL, шумо метавонед HTTP дархост кунед ва дар робита ба коркарди файлҳои PDF амалҳои гуногунро иҷро кунед.

Ҳоло, барои илова кардани эзоҳҳо ба ҳуҷҷати PDF бо истифода аз фармонҳои cURL, аввал мо бояд аломати аутентификатсияро тавассути ирсоли дархост ба нуқтаи ниҳоии нишона бо SID Барнома ва Калиди Барномасозони худ тавлид кунем. Лутфан фармони зеринро барои тавлиди accessToken иҷро кунед.

curl -v "https://api.aspose.cloud/connect/token" \
 -X POST \
 -d "grant_type=client_credentials&client_id=ee170169-ca49-49a4-87b7-0e2ff815ea6e&client_secret=7f098199230fc5f2175d494d48f2077c" \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Accept: application/json"

Пас аз тавлиди accessToken, лутфан фармони зеринро иҷро кунед, ки FreeTextAnnotation-ро ба ҳуҷҷати PDF илова мекунад. Файли тавзеҳи PDF пас аз он дар нигаҳдории абрӣ нав карда мешавад.

curl -v "https://api.aspose.cloud/v3.0/pdf/{inputPDF}/pages/1/annotations/freetext" \
-X POST \
-H  "accept: application/json" \
-H  "authorization: Bearer {accessToken}" \
-H  "Content-Type: application/json" \
-d "[  {        \"Color\": {      \"A\": 0,      \"R\": 0,      \"G\": 0,      \"B\": 0    },    \"Contents\": \"Confidential !\",    \"Modified\": \"01/05/2023 12:00:00.000 PM\",    \"Id\": \"id0\",    \"Flags\": [      \"Default\"    ],    \"Name\": \"comment\",    \"Rect\": {      \"LLX\": 100,      \"LLY\": 800,      \"URX\": 350,      \"URY\": 830    },    \"PageIndex\": 0,    \"ZIndex\": 1,    \"HorizontalAlignment\": \"Center\",    \"VerticalAlignment\": \"Center\",    \"CreationDate\": \"03/05/2023 16:00:00.000 PM\",    \"Subject\": \"Subj.\",    \"Title\": \"Main Heading\",    \"RichText\": \"Hello world...\",    \"Justification\": \"Left\",    \"Intent\": \"FreeTextTypeWriter\",    \"Rotate\": \"None\",    \"TextStyle\": {      \"FontSize\": 26,      \"Font\": \"Arial\",      \"ForegroundColor\": {        \"A\": 10,        \"R\": 10,        \"G\": 100,        \"B\": 120      },      \"BackgroundColor\": {        \"A\": 0,        \"R\": 0,        \"G\": 50,        \"B\": 80      }    }  }]"

{inputPDF}-ро бо номи файли вуруди PDF, ки аллакай дар нигаҳдории абр мавҷуд аст, иваз кунед, {accessToken} бо аломати дастрасии JWT дар боло тавлидшуда.

Пешнамоиши тавзеҳи PDF

Тасвир: - Пешнамоиши шарҳи матни ройгон дар файли PDF.

Ҳуҷҷати PDF-ро, ки дар мисоли боло истифода шудааст, метавон аз [ин истиноди] зеркашӣ кард (https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-dotnet/blob/master/testData/Binder1.pdf).

Хулоса

Хулоса, илова кардани эзоҳҳо ба PDF метавонад фоиданокӣ ва функсияҳои онҳоро хеле беҳтар созад. Новобаста аз он ки шумо мехоҳед матни муҳимро қайд кунед, шарҳҳо илова кунед ё бевосита дар дохили ҳуҷҷат қайд кунед, пас Aspose.PDF Cloud интихоби аҷибест барои ноил шудан ба ин. Мо инчунин фаҳмидем, ки Aspose.PDF Cloud SDK барои .NET ва фармонҳои cURL ҳалли пуриқтидорро барои тавзеҳи PDF-ҳо пешниҳод мекунанд, ки ба шумо қобилияти эҷоди ҷараёнҳои корӣ ва равандҳои автоматикунонии фармоиширо медиҳад. Аз ин рӯ, бо ин абзорҳо шумо метавонед зуд ва ба осонӣ ба PDFҳо эзоҳҳо илова кунед ва ҳамзамон вақтро сарфа кунед ва маҳсулнокии онро зиёд кунед.

Пайвандҳои муфид

Мақолаҳои марбут

Мо тавсия медиҳем, ки аз блогҳои зерин гузаред: