インメモリ生成

Toolkit を使用して PDF を "インメモリ" で生成できます。インメモリでのPDF の生成は、処理中にハードディスク上のファイルへのアクセスやファイルを保存する必要がありません。また出力結果を直接クライアントのブラウザに提供できるため非常に便利です。

このチュートリアルでは、Toolkit を使用した 2 つの方法を紹介します。最初のサンプルでは、PDF を "インメモリ" で生成します。2 番目のサンプルでは、PDF の出力ファイルを生成して、ブラウザに提供します。

サンプル - インメモリの生成

このサンプルでは、activePDF Toolkit の "インメモリ" 生成機能を使用します。通常 Toolkit では、フォームのコピー処理で使用する基本情報のために、入力ファイルが必要です。次のスクリプトは結果出力の Output.pdf を作成するために、どのように "インメモリ" 入力ストリームを使用するかを説明します。

注意 : このサンプル スクリプトは Visual Basic 環境で動作します。

サンプル スクリプト

Set objTK = CreateObject("APToolkit.Object")

objTK.OpenOutputFile ("MEMORY")

For i = 1 To 15

objTK.SetFont "Helvetica", 15

objTK.NewPage

Next

objTK.CloseOutputFile

' この出力を変数にセット

x = objTK.OutputBytestream()

r = objTK.OpenOutputFile("Output.pdf")

' 出力バイトストリームの取得

objTK.InputByteStream = x

r = objTK.OpenInputFile("MEMORY")

objTK.SetHeaderTextColorCMYK 0, 100, 10, 0

' ディスクからフォントをロード

objTK.SetHeaderFont "Verdana Bold Italic", 20

objTK.SetHeaderText 300, 600, "activePDF Toolkit"

r = objTK.CopyForm(0, 0)

objTK.CloseOutputFile

Set objTK = Nothing 

サンプル - ブラウザへのコンテンツ配信

このチュートリアルでは、Toolkit を使用して PDF 文書を "インメモリ" で生成し、ブラウザに配信します。

注意 : このサンプル スクリプトは ASP で記述されています。

サンプル スクリプト

<%

 

' すべてのページが処理されるまで配信しないように ASP に指示

' 非常に重要です

      response.buffer = True

 

Set objTK = Server.CreateObject("APToolkit.Object")

 

' PDF をインメモリで作成するように Toolkit に指示

      r = objTK.OpenOutputFile("MEMORY")

 

'SetFont は、新規空白ページを作成し、使用するフォントを設定する

'PrintText は、新規ページにテキストを追加する

      objTK.SetFont "Helvetica", 15

      objTK.PrintText 15, 760, "activePDF Memory Example"

 

' 生成した PDF を閉じる

      objTK.CloseOutputFile

 

' 出力をバイナリイメージでメモリに書き込む

      zz = objTK.binaryImage

 

' PDF をキャッシュしないようにブラウザに指示

      response.expires = 0

 

' レスポンス バッファのクリア

      response.Clear

 

' 開くファイルの形式をブラウザに指示

      response.ContentType = "application/pdf"

      response.AddHeader "Content-Type", "application/pdf"

      response.AddHeader "Content-Disposition", "inline;filename=Example.pdf"

 

' メモリ内の PDF をブラウザに書き出す

      response.BinaryWrite zz ' ここでブラウザに書き出す

 

Set objTK = Nothing

 

%>