JavaScript Rozšíření polí

JavaScript Rozšíření polí

JavaScript Rozšíření polí

Prostor názvů Aspose.Pdf.Annotations.JavascriptExtensions obsahuje spravované protějšky funkcí formátování Acrobat JavaScript AF_. Tyto třídy vám umožní reprodukovat logiku zobrazení polí PDF ve vaší .NET aplikaci bez spouštění JavaScriptu.

FieldDateTimeFormatter je statická třída — zavolejte Format přímo na typu.
FieldNumberCurrencyFormatter a FieldNumberPercentFormatter jsou běžné
třídy — vytvořte instanci a poté zavolejte Format. Každá metoda přijímá stejné
parametry jako odpovídající funkce Acrobat JavaScript a vrací
formátovaný řetězec.


FieldDateTimeFormatter

FieldDateTimeFormatter formátuje surový řetězec data/času pomocí vzoru formátu data ve stylu Acrobat. Odpovídá funkci JavaScript AF_Date_Format.

Podpis metody

public static string Format(string dateFormat, string dateValue)
ParametrTypPopis
dateFormatstringFormát vzoru data ve stylu Acrobat (např. "mm/dd/yyyy")
dateValuestringSurový řetězec data k formátování

Příklad

using Aspose.Pdf.Annotations.JavascriptExtensions;
string result = FieldDateTimeFormatter.Format("mm/dd/yyyy", "2026-06-11");
Console.WriteLine(result); // 06/11/2026

Pokud nelze vstupní hodnotu analyzovat, formátovač vrátí původní hodnotu beze změny.


FieldNumberCurrencyFormatter

FieldNumberCurrencyFormatter formátuje číselný řetězec jako měnovou hodnotu. Odpovídá funkci JavaScript AF_Number_Format.

Podpis metody

public string Format(
    int precision,
    int sepStyle,
    int negStyle,
    string currencySymbol,
    bool isPrependCurrency,
    string fieldValue)
ParameterTypeDescription
precisionintPočet desetinných míst
sepStyleintStyl oddělovače tisíců (0 = čárka, 1 = žádný, 2 = tečka)
negStyleintStyl záporných čísel (0 = mínus, 1 = závorky, 2 = červená)
currencySymbolstringSymbol přidaný před nebo za (např. "$")
isPrependCurrencyboolKdyž true, je symbol přidán před; jinak za
fieldValuestringČíselný řetězec k formátování

Příklad

using Aspose.Pdf.Annotations.JavascriptExtensions;
var formatter = new FieldNumberCurrencyFormatter();
string result = formatter.Format(
    precision: 2,
    sepStyle: 0,
    negStyle: 0,
    currencySymbol: "$",
    isPrependCurrency: true,
    fieldValue: "1234.5");
Console.WriteLine(result); // $1,234.50

FieldNumberPercentFormatter

FieldNumberPercentFormatter formátuje číselný řetězec jako procenta, přičemž před použitím formátu vynásobí hodnotu 100. Odpovídá funkci JavaScript AF_Percent_Format.

Podpis metody

public string Format(
    int precision,
    int sepStyle,
    bool isPrependPercent,
    string fieldValue)
ParametrTypPopis
precisionintPočet desetinných míst
sepStyleintStyl oddělovače tisíců
isPrependPercentboolKdyž true, je symbol % připojen na začátek; jinak na konec
fieldValuestringČíselný řetězec k formátování (vynásobený 100)

Příklad

using Aspose.Pdf.Annotations.JavascriptExtensions;
var formatter = new FieldNumberPercentFormatter();
string result = formatter.Format(
    precision: 1,
    sepStyle: 0,
    isPrependPercent: false,
    fieldValue: "0.1234");
Console.WriteLine(result); // 12.3%

Používání formátovačů v cyklu zpracování formuláře

Následující vzor použije formátování měny na všechny hodnoty textových polí v PDF formuláři:

using Aspose.Pdf;
using Aspose.Pdf.Annotations.JavascriptExtensions;
byte[] data = File.ReadAllBytes("form.pdf");
using var doc = Document.Open(data);
if (doc.Form is not null)
{
    var currencyFormatter = new FieldNumberCurrencyFormatter();
    foreach (var field in doc.Form.Fields)
    {
        if (field.Value is not null)
        {
            string formatted = currencyFormatter.Format(
                precision: 2,
                sepStyle: 0,
                negStyle: 0,
                currencySymbol: "$",
                isPrependCurrency: true,
                fieldValue: field.Value);
            Console.WriteLine($"{field.Name}: {formatted}");
        }
    }
}

Viz také

 Čeština