ASP サンプル

重要!
プリンタオブジェクトを使用する場合、
easyPDF SDK ローダー オブジェクトの設定をしていることを確認してください。

ここでは、Microsoft Word ドキュメントをIIS バージョン5 を持つASP スクリプトを使用してPDF へ変換する方法を紹介します。

備考: 異なるプログラミング言語内でのeasyPDF SDK オブジェクト使用方法の基本については、easyPDF オブジェクトの使用 セクションを参照してください。

ASP セットアップ:

  1. Word ドキュメントとASP スクリプトを準備します。ファイルをIIS スクリプト作業フォルダにコピーします。(例 "C:\Inetpub\Scripts")



  2. テストスクリプトを書きます。下記にクリプトの例を挙げています。

    備考: ASP (ASP.NET では必要なし) からeasyPDF SDK エニュメレーションタイプへアクセスするために、ルートフォルダ(例 "C:\Inetpub\wwwroot") 内にGlobal.asa ファイルを作成し、下記のようにタイプライブラリを宣言してください。:
            
    
    <!--
    
    METADATA TYPE="TypeLib"
    
    NAME="BCL easyPDF Printer SDK 7 Type Library"
    
    UUID="{EA8A1E91-64A1-4ddf-BBC5-F89F169D432B}"
    
    VERSION="7.0"
    
    -->
    
    
    
    <!--
    
    METADATA TYPE="TypeLib"
    
    NAME="BCL easyPDF PDF Processor SDK 7 Type Library"
    
    UUID="{CCE51F13-59D1-4e99-8187-AC1C2852691B}"
    
    VERSION="7.0"
    
    -->
    
    
    
    <!--
    
    METADATA TYPE="TypeLib"
    
    NAME="BCL easyPDF PDF Converter SDK 7 Type Library"
    
    UUID="{04E35557-0E8B-431c-9622-B3B7D7B2007D}"
    
    VERSION="7.0"
    
    -->
    
    
    
    <!--
    
    METADATA TYPE="TypeLib"
    
    NAME="BCL easyPDF PDF Document SDK 7 Type Library"
    
    UUID="{D1E38948-AEF4-4ee1-B7BF-75655FA5EAD2}"
    
    VERSION="7.0"
    
    -->
    
    
    ASP 例 1 (VBScript):
    
    <%@ Language=VBScript %>
    
    <%
    
    Option Explicit
    
    
    
    Dim oLoader
    
    Dim oPrinter
    
    Dim oPrintJob
    
    
    
    ' ASP のため、プリンタオブジェクトを直接取得する代わりに、
    
    ' easyPDF SDK オーダーオブジェクトを通してプリンタオブジェクトを取得してください。
    
    Set oLoader = Server.CreateObject("easyPDF.Loader.7")
    
    
    
    Set oPrinter = oLoader.LoadObject("easyPDF.Printer.7")
    
    Set oPrintJob = oPrinter.PrintJob
    
    
    
    On Error Resume Next
    
    
    
    ' PDFへ変換します。
    
    Call oPrintJob.PrintOut(Server.MapPath("./input.doc"), Server.MapPath("./output.doc.pdf"))
    
    
    
    If Err Then
    
        Response.Write("<B>Failed!</B> " + Err.Description + "<BR>")
    
        Response.Write("Conversion Result: " + oPrintJob.ConversionResultMessage + "<BR>")
    
        Response.Write("Printer Result: " + oPrintJob.PrinterResultMessage + "<BR>")
    
        Response.End
    
    End If
    
    
    
    Response.Write("<B>Success!</B><BR>")
    
    %>
    
    
    ASP 例 2 (VBScript):
    
    <%@ Language=VBScript %>
    
    <%
    
    Option Explicit
    
    Dim oLoader
    
    Dim oPrinter
    
    Dim oPrintJob
    
    Dim arrPDF
    
    
    
    ' ASP のため、プリンタオブジェクトを直接取得する代わりに、  
    
    ' easyPDF SDK オーダーオブジェクトを通してプリンタオブジェクトを取得してください。
    
    Set oLoader = Server.CreateObject("easyPDF.Loader.7")
    
    Set oPrinter = oLoader.LoadObject("easyPDF.Printer.7")
    
    Set oPrintJob = oPrinter.PrintJob
    
    On Error Resume Next
    
    ' メモリ内の出力PDFを取得します。 (VT_ARRAY | VT_UI1)
    
    arrPDF = oPrintJob.PrintOut2(Server.MapPath("./input.doc"))
    
    
    
    If Err Then
    
        Response.Write("<B>Failed!</B> " + Err.Description + "<BR>")
    
        Response.Write("Conversion Result: " + oPrintJob.ConversionResultMessage + "<BR>")
    
        Response.Write("Printer Result: " + oPrintJob.PrinterResultMessage + "<BR>")
    
        Response.End
    
    End If
    
    
    
    On Error Goto 0
    
    ' PDFファイルをブラウザ内へプッシュします。
    
    Response.Clear
    
    Response.ContentType = "application/pdf"
    
    Response.AddHeader "Content-Disposition", "inline; filename=output.pdf"
    
    Response.Buffer = True
    
    Response.BinaryWrite arrPDF
    
    Response.End
    
    %>
    
    
    ASP.NET 例 (C# code snippet):
    
    // easyPDF SDK COM オブジェクトをお手持ちのアプリケーションの中へ追加する必要があります。  
    
    // Add Reference ダイアログを取り出すために、  
    
    // プロジェクトから、"Project" -> "Add Reference..." メニューへ行きます。  
    
    // COM タブをクリックし、そして今から使用するであろう全てeasyPDF SDK オブジェクトを選択します。
    
    
    
    using BCL.easyPDF.Interop.easyPDFLoader;
    
    using BCL.easyPDF.Interop.easyPDFPrinter;
    
    
    
    // ...
    
    Loader oLoader = null;
    
    Printer oPrinter = null;
    
    PrintJob oPrintJob = null;
    
    try
    
    {
    
        // ASP のため、プリンタオブジェクトを直接取得する代わりに、      
    
        // easyPDF SDK オーダーオブジェクトを通してプリンタオブジェクトを取得してください。
    
        Type type = Type.GetTypeFromProgID("easyPDF.Loader.7");
    
        oLoader = (Loader)Activator.CreateInstance(type);
    
    
    
        oPrinter = (Printer)oLoader.LoadObject("easyPDF.Printer.7");
    
        oPrintJob = oPrinter.PrintJob;
    
        // PDFへ変換します。
    
    
    
        oPrintJob.PrintOut(Server.MapPath("./input.doc"), Server.MapPath("./output.doc.pdf"));
    
        Response.Write("<B>Success!</B>");
    
    }
    
    catch(System.Runtime.InteropServices.COMException err)
    
    {
    
        // エラーハンドリングコード
    
        Response.Write("<B>Failed!</B> " + err.Message + "<BR>");
    
        if(err.ErrorCode == (int)prnResult.PRN_R_CONVERSION_FAILED
    
        && oPrintJob != null)
    
        {
    
            Response.Write("Conversion Result: " + oPrintJob.ConversionResultMessage);
    
            prnConversionResult result = oPrintJob.ConversionResult;
    
            if(result == prnConversionResult.PRN_CR_CONVERSION
    
            || result == prnConversionResult.PRN_CR_CONVERSION_INIT
    
            || result == prnConversionResult.PRN_CR_CONVERSION_PRINT)
    
            {
    
                Response.Write("Printer Result: " + oPrintJob.PrinterResultMessage);
    
            }
    
        }
    
    }
    
    
  3. input.doc が現在の IIS 作業フォルダ (例 "C:\Inetpub\Scripts") 内にあることを確認してください。
  4. ウェブブラウザ上で実行します。 (例 http://localhost/scripts/pdftest.asp).