جایگزینی متن در اسناد تجاری یک کار رایج است. این مقاله توضیح می‌دهد چگونه می‌توان محتوا را در اسناد PDF با استفاده از هوش مصنوعی و C# پیدا و جایگزین کرد. شما یاد می‌گیرید که چگونه ویرایش‌های سفارشی را اعمال کرده و هوش مصنوعی را برای اصلاح محتوای PDF ادغام کنید.

موضوعات زیر در این مقاله پوشش داده شده است:

ویژگی GroupDocs.Redaction برای جایگزینی متن

GroupDocs.Redaction به شما این امکان را می‌دهد که متن را در انواع فرمت‌های فایل پشتیبانی‌شده جایگزین کنید. این روش به عبارات منظم برای شناسایی متنی که باید جایگزین شود، متکی است. با این حال، کار با عبارات منظم می‌تواند نیاز به تلاش اضافی داشته باشد، به ویژه در موارد پیچیده‌تر. برای اطلاعات بیشتر، مستندات ما را ببینید documentation.

مراحل ویرایش PDF با استفاده از ابزارهای هوش مصنوعی از طریق C#

شما می‌توانید از این ویژگی برای پنهان کردن اطلاعات حساس یا ایجاد یک سند سفارشی از یک الگو استفاده کنید. مراحل زیر نشان می‌دهد که چگونه از هوش مصنوعی برای جایگزینی متن خاصی در یک سند PDF در یک برنامه .NET استفاده کنید.

  • بارگذاری فایل PDF با استفاده از کلاس Redactor.
  • فراهم کردن یک هندلر ویرایش سفارشی با اجرای منطق هوش مصنوعی خود از طریق رابط ICustomRedactionHandler.
  • پردازش متن سند با استفاده از PageAreaRedaction همراه با ReplacementOptions.
  • اعمال ویرایش با استفاده از متد Apply().
  • ذخیره سند پردازش‌شده در یک محل جدید با استفاده از متد Save().

کد عمومی C# برای استفاده از قابلیت‌های GroupDocs.Redaction

کد زیر از هوش مصنوعی برای پیدا کردن و جایگزینی شماره‌های کارت اعتباری در یک سند استفاده می‌کند. این قطعه کد شامل متد اصلی است که Redactor را راه‌اندازی کرده و با فراخوانی متد Apply() ویرایش‌ها را اعمال می‌کند.

public async Task Redaction_Custom_AI()
{
    // معمولاً برای پیدا کردن متن برای جایگزینی از این regex استفاده می‌شود
    // برای فراهم کردن تمامی متون ممکن برای ویرایش سفارشی، از regex مانند مثال استفاده کنید
    Regex regex = new Regex(".*");

    //تعریف صفحات هدف و متن جایگزین برای ویرایش‌ها
    ReplacementOptions optionsText = new ReplacementOptions("[replaced]");
        optionsText.Filters = new RedactionFilter[] {
        new PageRangeFilter(PageSeekOrigin.Begin, 0, 2)
    };

    //فراهم کردن یک پیاده‌سازی هندلر ویرایش سفارشی
    optionsText.CustomRedaction = new TextRedactor() { Test = this };

    var textRedaction = new PageAreaRedaction(regex, optionsText);
    var redactions = new Redaction[] { textRedaction };

    //پردازش سند
    using (var redactor = new Redactor("source.pdf"))
    {
        //اعمال ویرایش‌هایی به سند
        RedactorChangeLog result = redactor.Apply(redactions);
        if (result.Status != RedactionStatus.Failed)
        {
            redactor.Save(new GroupDocs.Redaction.Options.SaveOptions(false, "Result"));
        }
    }
}

کد ویرایش سفارشی C#

پیاده‌سازی ICustomRedactionHandler به کاربران این امکان را می‌دهد که منطق خود را برای ویرایش پاراگراف‌های متنی در فایل‌های PDF تعریف کنند. استفاده از چنین کلاس‌هایی امکان الگوریتم‌های منعطفی را که متناسب با نیازهای خاص کسب‌وکار می‌باشد، فراهم می‌کند.

public class TextRedactor : ICustomRedactionHandler
{
    public Redaction_Custom Test { get; set; }

    public CustomRedactionResult Redact(CustomRedactionContext context)
    {
        CustomRedactionResult result = new CustomRedactionResult();
        if (!String.IsNullOrEmpty(context.Text))
        {
            var response = Process_AI(context.Text, "[redacted-custom]").GetAwaiter().GetResult();
            if (response.Result != "none")
            {
                result.Apply = true;
                result.Text = response.Result;
            }
        }
        return result;
    }
}

نمونه‌ای از درخواست هوش مصنوعی

قسمت نهایی کد ادغام هوش مصنوعی است. درخواست ارائه‌شده نسبتاً پیچیده است، زیرا همه ابزارهای هوش مصنوعی نمی‌توانند داده‌های حساس مانند شماره‌های کارت اعتباری را پردازش کنند.

public async Task<OpenAIResult> Process_AI(string text, string replacement)
{
    string prompt =
        "سلام، من یک بخش از یک سند دارم. " +
        "آیا می‌توانید به من کمک کنید که هر بخش که شبیه بلوک‌های دیجیتال است، مانند 'XXXX-' را جایگزین کنم؟ " +
        "این بلوک‌ها فقط اعداد و خط تیره هستند. " +
        "هر ورودی که می‌خواهم جایگزین کنم ممکن است از یک تا چهار تا از این بلوک‌ها داشته باشد. " +
        $"لطفاً کل بلوک را با '{replacement}' در متن جایگزین کنید. " +
        "نیازی به هیچ نظری از شما ندارم. " +
        "فقط متن با ورودی‌های جایگزین شده را به عنوان نتیجه برگردانید یا فقط کلمه 'none' را اگر چیزی برای جایگزینی نبود. " +
        $"این هم متن برای کار با \n\n {text}";

    // کد ادغام هوش مصنوعی کاربر که بستگی به ابزار هوش مصنوعی مورد استفاده دارد.
    return await RequestToAI(prompt);
}

خروجی کد بالا به شرح زیر است:

نتیجه‌گیری

در این مقاله یاد گرفتیم که چگونه می‌توان از ویرایش‌های سفارشی و ادغام‌های هوش مصنوعی برای پردازش PDF استفاده کرد. ابزارهای هوش مصنوعی می‌توانند پردازش متن را به‌طور قابل توجهی ساده کنند، اما ممکن است زمان بیشتری طول بکشد و پیش‌بینی‌پذیری کمتری نسبت به ابزارهای عادی داشته باشند.

برای اطلاعات بیشتر راجع به محصولات ما، به documentation مراجعه کنید. اگر سوالی دارید، لطفاً از طریق forum با ما تماس بگیرید.

از برنامه وب رایگان ما استفاده کنید

قابلیت‌های GroupDocs.Redaction را با استفاده از online web application ما کشف کنید. ویژگی‌های اصلی را به‌طور مستقیم در مرورگر خود آزمایش کنید بدون نیاز به نصب چیزی.

همچنین ببینید