The following C# code example determines whether the input
PDF document is PDF/A-compliant. The input PDF document that is
passed to the DocConverter service is named Loan.pdf. Validation
results are written to an XML file named ValidationResults.xml.
(See Programmatically Determining PDF/A Compliancy.)
/*
* Ensure that you create a .NET client assembly that uses
* base64 encoding. This is required to populate a BLOB
* object with data or retrieve data from a BLOB object.
*
* For information, see "Invoking LiveCycle using Base64 Encoding"
* in Programming with LiveCycle
*/
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.IO;
namespace IsDocumentPDFA
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
try
{
//Create a DocConverterServiceService object
DocConverterServiceService docConverterClient = new DocConverterServiceService();
docConverterClient.Credentials = new System.Net.NetworkCredential("administrator", "password");
//Reference a PDF file
BLOB inDoc = new BLOB();
string path = "C:\\Adobe\Loan.pdf";
FileStream fs = new FileStream(path, FileMode.Open);
//Get the file stream length and create a byte array
int len = (int)fs.Length;
byte[] ByteArray = new byte[len];
//Populate the byte array with the contents of the FileStream object
fs.Read(ByteArray, 0, len);
inDoc.binaryData = ByteArray;
//Create a PDFAValidationOptionSpec object and set
//run-time options
PDFAValidationOptionSpec spec = new PDFAValidationOptionSpec();
spec.compliance = PDFAConversionOptionSpec_Compliance.PDFA_1B;
spec.resultLevel = PDFAValidationOptionSpec_ResultLevel.DETAILED;
spec.ignoreUnusedResource = true;
//Determine if the PDF document is PDF/A compliant
PDFAValidationResult result = docConverterClient.isPDFA(inDoc, spec);
//Get validation results
BLOB validationResults = result.validationLog;
//Get XML data that contains validation results
byte[] outByteArray = validationResults.binaryData;
string FILE_NAME = "C:\\Adobe\ValidationResults.xml";
FileStream fs2 = new FileStream(FILE_NAME, FileMode.OpenOrCreate);
//Create a BinaryWriter object
BinaryWriter w = new BinaryWriter(fs2);
w.Write(outByteArray);
w.Close();
fs2.Close();
}
catch (Exception ee)
{
Console.WriteLine(ee.Message);
}
}
}
}
|
|
|