.NET में iText7 के साथ एक पीडीएफ में चेक बॉक्स को चेक

वोट
0

मैं एक नमूना पीडीएफ है, कि मैं प्रोग्राम के रूप में भरते समय कर रहा हूँ इस तरह के (iText7 का प्रयोग करके) के रूप में: -

string name = TextBox1.Text.ToString();
string pdfTemplate = @..\WebApplication1\Sample.pdf;
string newFile = @..\WebApplication1\completed_sample.pdf;

PdfDocument pdf = new PdfDocument(new PdfReader(pdfTemplate).SetUnethicalReading(true), new PdfWriter(newFile));
PdfAcroForm form = PdfAcroForm.GetAcroForm(pdf, true);
IDictionary<String, PdfFormField> fields = form.GetFormFields();
PdfFormField toSet;

// This doesn't work //
fields.TryGetValue(TypeofApplication.1, out toSet);
toSet.SetValue(/On);

// This works //
fields.TryGetValue(FullName, out toSet);
toSet.SetValue(name);

form.FlattenFields();
pdf.Close(); 

मैं रेडियो बटन / चेक बॉक्स को भरने के लिए पीडीएफ में पाठ बॉक्स को भरने के लिए सक्षम है, लेकिन नहीं कर रहा हूँ।

आवेदन का प्रकार मेरी में दो विकल्प हैं cshtmlपेज:

@Html.RadioButton(Application_Type, New) New 
@Html.RadioButton(Application_Type, Renew) Renewal 

और जब मैं के माध्यम से अपने मूल्यों शब्दकोश देखो, मैं वहाँ 3 विकल्प हैं कि देखें:

  1. निवेदन पत्र के प्रकार
  2. TypeofApplication.1
  3. TypeofApplication.2

मैं कैसे के रूप में चेक बॉक्स सेट करूँ checked = true

मेरे तर्क का पालन है:

if(dr.Application_Type == New){
    fields.TryGetValue(TypeofApplication.1, out toSet);
    toSet.SetValue(/On);}

लेकिन इस स्पष्ट रूप से काम नहीं करता।

13/02/2020 को 21:53
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


1 जवाब

वोट
0

जिस तरह से तो मैं इस पता लगा: -

1) मैं पीडीएफ खोला, के रूप में जाँच की चेकबॉक्स सेट और मेरे कार्यक्षेत्र फ़ोल्डर में बचाया।
2) फिर, मैं प्रोग्राम के रूप में फाइल खोली और इस तरह के रूप फ़ील्ड मान का निरीक्षण: -

            string pdfTemplate = @"..\WebApplication1\Sample.pdf";
            string newFile = @"..\WebApplication1\completed_sample.pdf";

            PdfDocument pdf = new PdfDocument(new PdfReader(pdfTemplate).SetUnethicalReading(true), new PdfWriter(newFile));
            PdfAcroForm form = PdfAcroForm.GetAcroForm(pdf, true);
            IDictionary<String, PdfFormField> fields = form.GetFormFields();
            PdfFormField toSet;
            fields.TryGetValue("TypeofApplication", out toSet);
            var x = toSet.GetValueAsString();

अब, मैं एक्स का मान है, जो जाँच की क्षेत्र है। (नई या नवीनीकृत)। मैं किसी भी चेकबॉक्स, radiobutton सूची, वगैरह के लिए संभव सभी मूल्यों खोजने के लिए इस तकनीक का इस्तेमाल किया।

14/02/2020 को 00:15
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more