unable to read PDF controls in c#












0














Am tryinng to read PDf and inside PDF controls. my pdf is generated by adobe pdf library. getting null acro fields.but my form have 4 check boxes. 4 check boxed i can use to check or uncheck . i want checkbox is checked or not.
i used itextsharp to read pdf but, it is not finding controls.



private static string GetFormFieldNamesWithValues(PdfReader pdfReader)
{

return string.Join("rn", pdfReader.AcroFields.Fields
.Select(x => x.Key + "=" +
pdfReader.AcroFields.GetField(x.Key) + "=" + pdfReader.AcroFields.GetFieldType(x.Key)).ToArray());

}


static void Main(string args)
{
DataTable filedDetails;
DataRow dr;
string cName="";
string cType = "";
string cValue = "";
int txtCount = 0;
int btnCount = 0;
int chkBoxCount = 0;
int rdButtonCount = 0;
int dropDownCount = 0;

var fileName = "C:\PreScreenings\ViewPDF Cien.pdf";// PDFFileName.Get(context);
//var fileName = @"C:Users465sanvDownloadsRead-PDF-Controls-masterReadPDFControlInputDavid1990.pdf";
var fields = GetFormFieldNamesWithValues(new PdfReader(fileName));
string splitRows = fields.Split(new { Environment.NewLine }, StringSplitOptions.None);
filedDetails = new DataTable("PDF Table");
filedDetails.Columns.AddRange(new { new DataColumn("Control Name"), new DataColumn("Control Type"), new DataColumn("Control Value") });

foreach (string row in splitRows)
{

dr = filedDetails.NewRow();
string str = row.Split("=".ToCharArray(), StringSplitOptions.None);

cName = str[0].ToString();
cValue = str[1].ToString();
if (str[2].ToString() == "1")
{
btnCount++;
cType = "Button" + btnCount.ToString();
}
else if (str[2].ToString() == "2")
{
chkBoxCount++;
cType = "Check Box" + chkBoxCount.ToString();

}
else if (str[2].ToString() == "3")
{
rdButtonCount++;
cType = "Radio Button" + rdButtonCount.ToString();
}
else if (str[2].ToString() == "4")
{
txtCount++;
cType = "Text Field" + txtCount.ToString();
}
else if (str[2].ToString() == "6")
{
dropDownCount++;
cType = "Drop Down" + dropDownCount.ToString();
}
dr[0] = cName;
dr[1] = cType;
dr[2] = cValue;

filedDetails.Rows.Add(dr);

}

}









share|improve this question




















  • 2




    It would help to see the PDF.
    – Paulo Soares
    Nov 21 '18 at 13:24










  • Indeed. Most likely the pdf either has no AcroForm at all (and instead probably only a xfa form) or the acroform structures are broken.
    – mkl
    Nov 21 '18 at 13:35
















0














Am tryinng to read PDf and inside PDF controls. my pdf is generated by adobe pdf library. getting null acro fields.but my form have 4 check boxes. 4 check boxed i can use to check or uncheck . i want checkbox is checked or not.
i used itextsharp to read pdf but, it is not finding controls.



private static string GetFormFieldNamesWithValues(PdfReader pdfReader)
{

return string.Join("rn", pdfReader.AcroFields.Fields
.Select(x => x.Key + "=" +
pdfReader.AcroFields.GetField(x.Key) + "=" + pdfReader.AcroFields.GetFieldType(x.Key)).ToArray());

}


static void Main(string args)
{
DataTable filedDetails;
DataRow dr;
string cName="";
string cType = "";
string cValue = "";
int txtCount = 0;
int btnCount = 0;
int chkBoxCount = 0;
int rdButtonCount = 0;
int dropDownCount = 0;

var fileName = "C:\PreScreenings\ViewPDF Cien.pdf";// PDFFileName.Get(context);
//var fileName = @"C:Users465sanvDownloadsRead-PDF-Controls-masterReadPDFControlInputDavid1990.pdf";
var fields = GetFormFieldNamesWithValues(new PdfReader(fileName));
string splitRows = fields.Split(new { Environment.NewLine }, StringSplitOptions.None);
filedDetails = new DataTable("PDF Table");
filedDetails.Columns.AddRange(new { new DataColumn("Control Name"), new DataColumn("Control Type"), new DataColumn("Control Value") });

foreach (string row in splitRows)
{

dr = filedDetails.NewRow();
string str = row.Split("=".ToCharArray(), StringSplitOptions.None);

cName = str[0].ToString();
cValue = str[1].ToString();
if (str[2].ToString() == "1")
{
btnCount++;
cType = "Button" + btnCount.ToString();
}
else if (str[2].ToString() == "2")
{
chkBoxCount++;
cType = "Check Box" + chkBoxCount.ToString();

}
else if (str[2].ToString() == "3")
{
rdButtonCount++;
cType = "Radio Button" + rdButtonCount.ToString();
}
else if (str[2].ToString() == "4")
{
txtCount++;
cType = "Text Field" + txtCount.ToString();
}
else if (str[2].ToString() == "6")
{
dropDownCount++;
cType = "Drop Down" + dropDownCount.ToString();
}
dr[0] = cName;
dr[1] = cType;
dr[2] = cValue;

filedDetails.Rows.Add(dr);

}

}









share|improve this question




















  • 2




    It would help to see the PDF.
    – Paulo Soares
    Nov 21 '18 at 13:24










  • Indeed. Most likely the pdf either has no AcroForm at all (and instead probably only a xfa form) or the acroform structures are broken.
    – mkl
    Nov 21 '18 at 13:35














0












0








0







Am tryinng to read PDf and inside PDF controls. my pdf is generated by adobe pdf library. getting null acro fields.but my form have 4 check boxes. 4 check boxed i can use to check or uncheck . i want checkbox is checked or not.
i used itextsharp to read pdf but, it is not finding controls.



private static string GetFormFieldNamesWithValues(PdfReader pdfReader)
{

return string.Join("rn", pdfReader.AcroFields.Fields
.Select(x => x.Key + "=" +
pdfReader.AcroFields.GetField(x.Key) + "=" + pdfReader.AcroFields.GetFieldType(x.Key)).ToArray());

}


static void Main(string args)
{
DataTable filedDetails;
DataRow dr;
string cName="";
string cType = "";
string cValue = "";
int txtCount = 0;
int btnCount = 0;
int chkBoxCount = 0;
int rdButtonCount = 0;
int dropDownCount = 0;

var fileName = "C:\PreScreenings\ViewPDF Cien.pdf";// PDFFileName.Get(context);
//var fileName = @"C:Users465sanvDownloadsRead-PDF-Controls-masterReadPDFControlInputDavid1990.pdf";
var fields = GetFormFieldNamesWithValues(new PdfReader(fileName));
string splitRows = fields.Split(new { Environment.NewLine }, StringSplitOptions.None);
filedDetails = new DataTable("PDF Table");
filedDetails.Columns.AddRange(new { new DataColumn("Control Name"), new DataColumn("Control Type"), new DataColumn("Control Value") });

foreach (string row in splitRows)
{

dr = filedDetails.NewRow();
string str = row.Split("=".ToCharArray(), StringSplitOptions.None);

cName = str[0].ToString();
cValue = str[1].ToString();
if (str[2].ToString() == "1")
{
btnCount++;
cType = "Button" + btnCount.ToString();
}
else if (str[2].ToString() == "2")
{
chkBoxCount++;
cType = "Check Box" + chkBoxCount.ToString();

}
else if (str[2].ToString() == "3")
{
rdButtonCount++;
cType = "Radio Button" + rdButtonCount.ToString();
}
else if (str[2].ToString() == "4")
{
txtCount++;
cType = "Text Field" + txtCount.ToString();
}
else if (str[2].ToString() == "6")
{
dropDownCount++;
cType = "Drop Down" + dropDownCount.ToString();
}
dr[0] = cName;
dr[1] = cType;
dr[2] = cValue;

filedDetails.Rows.Add(dr);

}

}









share|improve this question















Am tryinng to read PDf and inside PDF controls. my pdf is generated by adobe pdf library. getting null acro fields.but my form have 4 check boxes. 4 check boxed i can use to check or uncheck . i want checkbox is checked or not.
i used itextsharp to read pdf but, it is not finding controls.



private static string GetFormFieldNamesWithValues(PdfReader pdfReader)
{

return string.Join("rn", pdfReader.AcroFields.Fields
.Select(x => x.Key + "=" +
pdfReader.AcroFields.GetField(x.Key) + "=" + pdfReader.AcroFields.GetFieldType(x.Key)).ToArray());

}


static void Main(string args)
{
DataTable filedDetails;
DataRow dr;
string cName="";
string cType = "";
string cValue = "";
int txtCount = 0;
int btnCount = 0;
int chkBoxCount = 0;
int rdButtonCount = 0;
int dropDownCount = 0;

var fileName = "C:\PreScreenings\ViewPDF Cien.pdf";// PDFFileName.Get(context);
//var fileName = @"C:Users465sanvDownloadsRead-PDF-Controls-masterReadPDFControlInputDavid1990.pdf";
var fields = GetFormFieldNamesWithValues(new PdfReader(fileName));
string splitRows = fields.Split(new { Environment.NewLine }, StringSplitOptions.None);
filedDetails = new DataTable("PDF Table");
filedDetails.Columns.AddRange(new { new DataColumn("Control Name"), new DataColumn("Control Type"), new DataColumn("Control Value") });

foreach (string row in splitRows)
{

dr = filedDetails.NewRow();
string str = row.Split("=".ToCharArray(), StringSplitOptions.None);

cName = str[0].ToString();
cValue = str[1].ToString();
if (str[2].ToString() == "1")
{
btnCount++;
cType = "Button" + btnCount.ToString();
}
else if (str[2].ToString() == "2")
{
chkBoxCount++;
cType = "Check Box" + chkBoxCount.ToString();

}
else if (str[2].ToString() == "3")
{
rdButtonCount++;
cType = "Radio Button" + rdButtonCount.ToString();
}
else if (str[2].ToString() == "4")
{
txtCount++;
cType = "Text Field" + txtCount.ToString();
}
else if (str[2].ToString() == "6")
{
dropDownCount++;
cType = "Drop Down" + dropDownCount.ToString();
}
dr[0] = cName;
dr[1] = cType;
dr[2] = cValue;

filedDetails.Rows.Add(dr);

}

}






c# pdf itext






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 21 '18 at 6:59









Curiousdev

3,79921833




3,79921833










asked Nov 21 '18 at 6:59









user1167870user1167870

176318




176318








  • 2




    It would help to see the PDF.
    – Paulo Soares
    Nov 21 '18 at 13:24










  • Indeed. Most likely the pdf either has no AcroForm at all (and instead probably only a xfa form) or the acroform structures are broken.
    – mkl
    Nov 21 '18 at 13:35














  • 2




    It would help to see the PDF.
    – Paulo Soares
    Nov 21 '18 at 13:24










  • Indeed. Most likely the pdf either has no AcroForm at all (and instead probably only a xfa form) or the acroform structures are broken.
    – mkl
    Nov 21 '18 at 13:35








2




2




It would help to see the PDF.
– Paulo Soares
Nov 21 '18 at 13:24




It would help to see the PDF.
– Paulo Soares
Nov 21 '18 at 13:24












Indeed. Most likely the pdf either has no AcroForm at all (and instead probably only a xfa form) or the acroform structures are broken.
– mkl
Nov 21 '18 at 13:35




Indeed. Most likely the pdf either has no AcroForm at all (and instead probably only a xfa form) or the acroform structures are broken.
– mkl
Nov 21 '18 at 13:35












0






active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53406770%2funable-to-read-pdf-controls-in-c-sharp%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.





Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


Please pay close attention to the following guidance:


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53406770%2funable-to-read-pdf-controls-in-c-sharp%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Create new schema in PostgreSQL using DBeaver

Deepest pit of an array with Javascript: test on Codility

Costa Masnaga