Kako raditi s JavaScript proširenja u .NET-u

Kako raditi s JavaScript proširenja u .NET-u

Aspose.PDF FOSS for .NET includes server-side implementations of the PDF JavaScript AF_Date_Format, AF_Number_Format, and AF_Percent_Format functions via the FieldDateTimeFormatter, FieldNumberCurrencyFormatter, i FieldNumberPercentFormatter Instalirajte paket s: dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha i koristiti ove klase za formatiranje vrijednosti polja AcroForm na poslužitelju bez potrebe JavaScript motora.

Korak po korak vodič

Korak 1: Instaliraj paket

Dodajte Aspose.PDF FOSS u svoj projekt:

dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha

Korak 2: Uvoz zahtjevnih klasa

using Aspose.Pdf.Annotations.JavascriptExtensions;

Korak 3: Formatiranje vrijednosti polja datuma/vremena

FieldDateTimeFormatter.Format(dateFormat, dateValue) pretvara string datuma prema Acrobat-style formatu datuma. To odgovara PDF JavaScript AF_Date_Format funkciji.

string formatted = FieldDateTimeFormatter.Format("mm/dd/yyyy", "2026-06-11");

U skladu s člankom 1. dateFormat U ovom slučaju, ako je to moguće, potrebno je upotrijebiti sljedeće:., mm, dd, yyyy, HH, MM) Kada je ulazna dateValue Ne može se analizirati, metoda vraća prazan niz.


Korak 4: Formatiranje numeričkog polja kao valute

FieldNumberCurrencyFormatter.Format(precision, sepStyle, negStyle, currencySymbol, isPrependCurrency, fieldValue) formatira brojni niz kao vrijednost valute. To odgovara funkciji PDF JavaScript AF_Number_Format.

var currencyFormatter = new FieldNumberCurrencyFormatter();
string formatted = currencyFormatter.Format(
    precision: 2,
    sepStyle: 0,
    negStyle: 0,
    currencySymbol: "$",
    isPrependCurrency: true,
    fieldValue: "1234.5");

Uređenje:

  • precision - broj decimalnih mjesta
  • sepStyle - stil razdvajivača tisuća (0 = tačka, 1 = točka i 2 = ništa)
  • negStyle - negativni broj stil (0 = zagrade, 1 = minus prefiks)
  • currencySymbol - valutu simbola niz
  • isPrependCurrency - da se simbol stavi prije broja.
  • fieldValue - prvu brojnu nizku za formatiranje

Korak 5: Formatiranje numeričkog polja kao postotak

FieldNumberPercentFormatter.Format(precision, sepStyle, isPrependPercent, fieldValue) formatira brojni niz kao postotak, množavajući prvu vrijednost s 100. To odgovara PDF JavaScript AF_Percent_Format funkciji.

var percentFormatter = new FieldNumberPercentFormatter();
string formatted = percentFormatter.Format(
    precision: 1,
    sepStyle: 0,
    isPrependPercent: false,
    fieldValue: "0.875");

Uređenje:

  • precision - broj decimalnih mjesta nakon desetničke točke
  • sepStyle - stil razdvajivača tisuća (0 = tačka, 1 = točka i 2 = ništa)
  • isPrependPercent - istinito za početak simbola %, lažno za dodatak
  • fieldValue - neobrađeni brojni niz (formatač množi sa 100)

Česta pitanja i rješenja

FieldDateTimeFormatter vraća prazan niz podataka To se događa kada je dateValue argument ne može biti analizirana po datumu obrazac u dateFormat. Acrobat datum žetoni razlikuju se od NET DateTime format strings.

FieldNumberCurrencyFormatter proizvodi pogrešan decimalni razdvajač U skladu s člankom 1. sepStyle Da biste koristili tačku kao razdvalitelj tisuća, prolazite: sepStyle: 1.

Izlaz materijala je 100x prevelik Formater množi ulazne vrijednosti za 100. Ako vaš fieldValue U ovom slučaju, ako je to već slučaj, podelite brojku za 100 prije nego što pozovete Format.

Ne pronađen prostor za ime nakon instalacije paketa Uverite se da ciljate na net8.0 ili noviji. JavascriptExtensions prostor imena je dostupan samo u paketu Aspose.Pdf.Foss .

NullReferenceIzuzetak na prazno poljeValue Prenositi null ili prazan niz kao: fieldValue provesti će iznimku za analizu. Potvrdite ulaz prije nego što pozovete Format.

Česta pitanja

Što znači “odgovara AF_Date_Format”?

PDF AcroForm JavaScript koristi AF_Date_Format kao ugrađenu funkciju oblikovanja za polja datuma. FieldDateTimeFormatter replicira istu formataciju logike u .NET upravljanoj kodu tako da možete primijeniti iste polja format strings bez izvršavanja JavaScript.

Mogu li koristiti ove formate izvan konteksta PDF dokumenta?

-Da, u redu je. FieldDateTimeFormatter, FieldNumberCurrencyFormatter, i FieldNumberPercentFormatter su obične klase bez ovisnosti o a Document Možete ih koristiti u bilo kojem .NET 8+ kontekstu kao formate korisničkih programa.

Koja je razlika između FieldNumberCurrencyFormattera i Field NumberPercentFormata?

FieldNumberCurrencyFormatter formatira broj kao novčani iznos bez množenja. FieldNumberPercentFormatter množi ulaz za 100 i dodaje ili prepends simbol posto.

Postoji li način da se poveže više formatera?

Ne postoji ugrađena veza. Primjenite formatere sekvencijalno u kodu.

Trebam li cijeli PDF dokument da bih koristio ove klase?

Ne. Formatujući rad na običnim nizovima i povrat formatirani niževi. Oni ne zahtijevaju otvorenu Document Primjer.

Također pogledajte:

 Hrvatski