我做在C#中的小應用程序,它的PDF文件轉換爲PDF/A使用的Adobe Acrobat SDK。將PDF轉換爲PDF/A從Adobe Acrobat Professional中XI/DC SDK
我用SaveAs
JavaScript函數,包含在SDK中,這樣一來:
var pdfDocument = new AcroPDDoc();
pdfDocument.Open(fileInfo.FullName);
object pdfJavascriptObject = pdfDocument.GetJSObject();
Type jsType = pdfJavascriptObject.GetType();
// FinalExtension is either jpg or pdf (depends of convId)
var outputFileName = fileInfo.Name.Replace(fileInfo.Extension, "." + finalExtension);
var finalFullName = Path.Combine(outputFolderPath, outputFileName);
// AdobeConvId is either com.callas.preflight.pdfa either com.adobe.acrobat.jpeg
object[] saveAsParam = { finalFullName, adobeConvId, string.Empty, false, false };
// Use Javascript Object SaveAs Method
jsType.InvokeMember(StringConstants.AcrobatSaveAsMethod
, BindingFlags.InvokeMethod | BindingFlags.Public | BindingFlags.Instance
, null
, pdfJavascriptObject
, saveAsParam
, CultureInfo.InvariantCulture);
pdfDocument.Close();
它好工作與Adobe Acrobat Professional中X,但現在我不得不使用Adobe Acrobat XI專業/ DC。 我已經升級了SDK的DLL,但它不起作用。
有一個「進展」消息,這會閃爍,如果有大量的文檔轉換和過程永遠不會結束。
然而,當我轉換爲JPG文件(相同的代碼只是改變了convId
)此代碼工作正常。
你知道我可以從那裏做什麼?......
如果在「另存爲」的方法是NOGO,我聽說preflights的,但我不知道如何從C#中使用它們碼。
沒有人經歷過這個問題? – Speuline