Разширения на полета JavaScript

Разширения на полета JavaScript

Разширения на полета JavaScript

Съветът на ЕС Aspose.Pdf.Annotations.JavascriptExtensions namespace съдържа управлявана Тези класове са съвпадения на Acrobat JavaScript AF_ форматиращи функции. да ви позволи да възпроизвеждате PDF логика за показване на полето в рамките на .NET приложението си без Изпълнение на JavaScript.

FieldDateTimeFormatter е статичен клас повикване Format директно върху типа. FieldNumberCurrencyFormatter и в) FieldNumberPercentFormatter са редовни. класове създаване на инстанция, след това повикване Format.Всеки метод приема същите условия. параметри като съответната функция на Acrobat JavaScript и връща a форматиран нисък.


FieldDateTimeFormatter

FieldDateTimeFormatter форматира синхрон от дата/време, използвайки Acrobat-style Моделът за формат на датата. AF_Date_Format Функция JavaScript.

Подпис на метода

public static string Format(string dateFormat, string dateValue)
Параметър:Тип на изпитванеОписание на състоянието
dateFormatstringОписание на формата на датата в стил Acrobat (напр. "mm/dd/yyyy")
dateValuestringСтрока с необработен дата за форматиране

Пример за изчисление

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

Ако входната стойност не може да бъде анализирана, форматиращият устройство връща първоначалната стойност без промяна.


FieldNumberCurrencyFormatter

FieldNumberCurrencyFormatter форматира числово нишка като валутна стойност. Това съответства на AF_Number_Format Функция JavaScript.

Подпис на метода

public string Format(
    int precision,
    int sepStyle,
    int negStyle,
    string currencySymbol,
    bool isPrependCurrency,
    string fieldValue)
Параметър:Тип на изпитванеОписание на състоянието
precisionintБроят на десетичните места
sepStyleintСтил с разделители на хиляди (0 = запетая, 1 = няма, 2 = точка)
negStyleintСтил на отрицателни числа (0 = минус, 1 = скоби, 2 = червено)
currencySymbolstringСимвол, предложен или приложен (напр. "$")
isPrependCurrencyboolКога? true символа е предложен; в противен случай се прилагат:
fieldValuestringЦифрови нишки за форматиране

Пример за изчисление

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 форматира числово нишка като процент, умножаване на стойността с 100 преди прилагане на формата. Това съответства на в) от AF_Percent_Format Функция JavaScript.

Подпис на метода

public string Format(
    int precision,
    int sepStyle,
    bool isPrependPercent,
    string fieldValue)
Параметър:Тип на изпитванеОписание на състоянието
precisionintБроят на десетичните места
sepStyleintСтил на разделителя от хиляди
isPrependPercentboolКога? true в) от % символа е предложен; в противен случай се прилагат
fieldValuestringЦифрова нишка за форматиране (множено с 100)

Пример за изчисление

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%

Използване на форматиращи устройства в цикъл за обработка на формуляри

Следният модел прилага форматиране на валута към всички стойности в текстово поле във PDF форма:

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}");
        }
    }
}

Вижте също:

 Български