このオブジェクトはオープンPDFファイルを表しています。各操作の後に PDFを閉じ、再分析することなく、PDFファイル上で実行される一連のポスト-プロセッシング操作を可能にします。つまり、複数の操作が一度にPDFへなされた時に、効率を最適化します。出力は、全ての操作が完了しハンドルがクローズされるまで書き出しされません。 PDFProcessorHandle は、物理的(ディスク上の)ファイルとイン-メモリストリームで等しく動作します。
PDFProcessor オブジェクトに精通しているユーザーのために、PDFProcessorHandle は、同じ機能の多くを提供し、とそのメソッドは非常に類似した議論をおこします。主な違いは、操作を行おうとしているPDFファイルに関して認知している内部の状態を維持するように、PDFProcessorHandleの個別の処理機能が入力または出力ファイル名を必要としていないことです。
PDFProcessorHandle は決して直接例示されるべきではないということに注意してください。 PDFProcessorHandleインスタンスは、OpenFile や OpenMem をコールすることにより、PDFProcessor オブジェクトのインスタンスからいつも得られるべきです。
Set oProcessor = CreateObject("easyPDF.PDFProcessor.6")
Set oProcessorHandle = oProcessor.OpenFile("C:\input.pdf", "C:\output.pdf")
oProcessorHandle.AddHyperlink 0, _
0, _
50, _
80, _
370, _
100, _
"http://www.bcltechnologies.com/", _
PRC_BORDERSTYLE_DASHLINE_MEDIUM, _
RGB(255, 0, 0)
oProcessorHandle.AddStamp "C:\image.jpg", _
0, _
PRC_STAMP_HPOS_CENTER, _
PRC_STAMP_VPOS_CENTER, _
PRC_STAMP_ZORDER_TOP, _
0, _
0, _
0, _
100
oProcessorHandle.Close
Dim inMem() As Byte = File.ReadAllBytes("C:\input.pdf")
Dim oProcessor As PDFProcessor = Nothing Dim oProcessorHandle As PDFProcessorHandle = Nothing
Try
oProcessor = New PDFProcessor
oProcessorHandle = oProcessor.OpenMem(inMem, Nothing)
oProcessorHandle.AddHyperlink(0, _
0, _
50, _
80, _
370, _
100, _
"http://www.bcltechnologies.com", _
prcAnnotBorderStyle.PRC_BORDERSTYLE_DASHLINE_MEDIUM, _
0)
oProcessorHandle.AddStamp("C:\image.jpg", _
0, _
prcStampHPosition.PRC_STAMP_HPOS_CENTER, _
prcStampVPosition.PRC_STAMP_VPOS_CENTER, _
prcStampZOrder.PRC_STAMP_ZORDER_TOP, _
0, _
0, _
0, _
100)
Dim outMem() As Byte = oProcessorHandle.CloseMem()
File.WriteAllBytes("C:\output.pdf", outMem)
Catch ex As System.Runtime.InteropServices.COMException
MessageBox.Show(ex.Message)
Finally
oProcessorHandle.Close()
End Try
byte[] inMem = File.ReadAllBytes(@"C:\input.pdf");
PDFProcessor oProcessor = null; PDFProcessorHandle oProcessorHandle = null;
try
{
oProcessor = new PDFProcessor();
oProcessorHandle = oProcessor.OpenMem(inMem, null);
oProcessorHandle.AddHyperlink(0,
0,
50,
80,
370,
100,
"http://www.bcltechnologies.com",
prcAnnotBorderStyle.PRC_BORDERSTYLE_DASHLINE_MEDIUM,
0);
oProcessorHandle.AddStamp(@"C:\image.jpg",
0,
prcStampHPosition.PRC_STAMP_HPOS_CENTER,
prcStampVPosition.PRC_STAMP_VPOS_CENTER,
prcStampZOrder.PRC_STAMP_ZORDER_TOP,
0,
0,
0,
100);
byte[] outMem = (byte[])oProcessorHandle.CloseMem();
File.WriteAllBytes(@"C:\output.pdf", outMem);
}
catch(System.Runtime.InteropServices.COMException ex)
{
MessageBox.Show(ex.Message);
}
finally
{
oProcessorHandle.Close();
}