4. .NETのビルドと実行手順

ここでは、Visual Studio Code(VSCode)を使用した、.NETの各種プログラム作成と実行方法を説明します。

AHPDFToolAPI8-Linux_X86_64-Lib_***/SampleCode/dotnet

4.1. Visual Studio Codeのインストールと準備

4.1.1. Visual Studio Codeのインストール

(1) Visual Studio Codeの公式サイトより、.rpmファイルをダウンロードします。

『Download Visual Studio Code』を開いて「.rpm」を選択してください。

https://code.visualstudio.com/download

Please enter alt text.

(2) ダウンロードしたrpmファイルをクリックして開きます。

左上の「インストール」ボタンを押すとインストールが始まります。

Please enter alt text.

(3) インストールが完了した後、Visual Studio Codeを開きます。

Please enter alt text.

(4) VSCode拡張機能「Japanese Language Pack for VS Code」のインストール

以下の手順でVSCodeの表示を日本語化します。

  1. 左側アクティビティバーにある拡張機能をクリック
  2. 開いたサイドバー上部にある検索欄に「Japanese」と記入
  3. 結果に表れる「Japanese Language Pack for VS Code」を選択
    Please enter alt text.
  4. 青色の「install」ボタンを押す

Please enter alt text.

5. インストール終了後にVSCodeの再起動をする

再起動後はVSCodeの表示が日本語になっています。

4.2. .NET 8のサンプルコードビルド・実行

4.2.1. .NET SDKのインストール

Linux環境への.NET SDKのインストール方法はLinuxディストリビューションにより異なります。

本マニュアルでは例として、「Red Hat Enterprise Linux (RHEL)」におけるインストール方法を解説します。
それ以外のディストリビューションにおけるインストールは以下の公式リファレンスをご参照ください。
https://learn.microsoft.com/ja-jp/dotnet/core/install/linux

(1) コンソールを開き、以下のコマンドを実行します。

sudo dnf install dotnet-sdk-8.0

これで.NET 8の.NET SDKがインストールされます。

(2) インストール先を指定しなかった場合、ホームディレクトリ内の以下の位置にインストールされます。ディレクトリが表示されない場合、「隠しファイルを表示する」にチェックを入れてください。

($HOME)/.dotnet

(3) インストールした.NET SDKの「dotnet」コマンドをコンソールで使用するには環境変数の設定が必要です。

「ホーム」の.bashrc(または.bash_profile)に以下の環境変数を追記し、システムを再起動することで、以後の環境変数の設定が不要になります。

export DOTNET_ROOT=${HOME}/.dotnet

export PATH=${PATH}:${DOTNET_ROOT}:${DOTNET_ROOT}/tools

(4) インストールしたSDKのバージョンは以下のコマンドとオプションで確認できます。

dotnet --list-sdks

実行した場合、以下のように表示されます。

8.0.21 [/home/test/.dotnet/sdk]

4.2.2. Visual Studio Code拡張のインストール

VSCode拡張機能「C#」をインストールします。

(1) 左側アクティビティバーにある拡張機能をクリック

(2) 開いたサイドバー上部にある検索欄に「C#」と記入

(3) 結果に表れる「C#」を選択

Please enter alt text.

(4) 青色の「install」ボタンを押す

Please enter alt text.

これでC#の拡張機能のインストールが完了します。

4.2.3. プロジェクトの作成

「フォルダを開く」と「ターミナルによるプロジェクトの作成」の2つの手順を踏む必要があります。

4.2.3.1. フォルダを開く

  1. 左側アクティビティバーにあるエクスプローラーを選択します。
  2. サイドバーに表示された「フォルダーを開く」をクリックします。
    または、メニューバー左上の「ファイル」を選択し、開いたメニューの「フォルダーを開く」をクリックします。

Please enter alt text.Please enter alt text.

(3) プロジェクトのファイルを生成するフォルダを指定して右上の「開く」をクリックします。
(画像ではtest_net8というフォルダを指定しています)

Please enter alt text.

(4) 下記のダイアログが表示されるので「はい、作成者を信頼します」を選択します。

Please enter alt text.

(5) 左側のサイドバーのエクスプローラーに指定したファイル名が表示されます。

Please enter alt text.

4.2.3.2. ターミナルによるプロジェクトの作成

(1) 「ターミナル」メニューの「新しいターミナル」を選択します。

Please enter alt text.

新しいターミナル画面が開きます。

Please enter alt text.

(2) 開かれたターミナル画面に以下の dotnet new コマンドを入力します。

dotnet new console --framework net8.0 --use-program-main

これにより新しいコンソールアプリケーションのプロジェクトが作成されます。

Please enter alt text.

( 参考:dotnet new <TEMPLATE> - .NET CLI | Microsoft Learn

4.2.4. PDF Tool API のサンプルコードを使用したプログラムの作成

(1) PDF Tool APIのインストール

2 PDF Tool APIの開発環境を整える」をご参照ください。

  1. VSCodeを起動してプロジェクトを作成します。
    4.2.3 プロジェクトの作成」をご参照ください。
  2. 「(フォルダ名).csproj」 を開いて以下の赤字箇所を追記します。
    csprojファイルはプロジェクト作成時に生成されます。

<HintPath> に記入するのはPdfTkNet8_80.dllの配置パスです。
以下の例はPDF Tool APIのインストール時にパス指定をしなかった場合です。

<Project Sdk="Microsoft.NET.Sdk">

 <PropertyGroup>
  <OutputType>Exe</OutputType>
  <TargetFramework>net6.0</TargetFramework>
  <ImplicitUsings>enable</ImplicitUsings>
  <Platform>x64</Platform>
  
<Nullable>enable</Nullable>
 </PropertyGroup>

 <ItemGroup>
  <Reference Include="PdfTkNet8_80">
   <HintPath>/usr/AHPDFToolLib80/lib/PdfTkNet8_80.dll</HintPath>
  </Reference>
 </ItemGroup>

</Project>

(4) 「ファイル」メニューの「ファイルを開く」を選択して使用したいサンプルコードのcsファイルを開きます。

Please enter alt text.

「このワークスペースで信頼されていないファイルを許可しますか?」のダイアログが出た場合は「開く」を選択します。

Please enter alt text.

(5) 「ファイル」メニューの「名前を付けて保存」を選択してプロジェクト生成時に作成された「Program.cs」に上書き保存します。
または、「ファイル」メニューの「名前を付けて保存」を選択して別名保存を行い、その後「Program.cs」を選択し右クリックメニューで「削除」します。

Please enter alt text.

Please enter alt text.

(6) ターミナルに下記のdotnet buildコマンドを入力しビルドを行います。

dotnet build -c Release

(7) ビルドが完了したら、ターミナルに下記のdotnet runコマンドを入力し、実行します。

dotnet run

プログラムに引数が必要な場合は「run」のあとに引数を記入してください。

4.3. 同梱の.NET 8実行用シェルスクリプトについて

PDF Tool APIのサンプルフォルダには.NET 8インターフェースでサンプルプログラムを簡易に実行するためのシェルスクリプト「dotnet8sample-run.sh」が同梱されています。

AHPDFToolAPI8-Linux_X86_64-Lib_***/SampleCode

4.3.1. シェルスクリプトの操作方法

本項では、シェルスクリプトの簡易な実行方法を解説します。

(1) 実行したいサンプルプログラムを引数に指定し、ターミナルから「dotnet8sample-run.sh」を呼び出します。

> ./dotnet8sample-run.sh ImageToPdf

実行が完了すると完了メッセージが出てシェルスクリプトが終了します。

(2) シェルスクリプトと同じ階層に以下のディレクトリが生成され、各実行結果が出力されます。

  • 「dotnet8-out」ディレクトリ:実行結果の出力先
    サンプルプログラムで処理されたPDFなどが「(プログラム名)_out」の名前で出力されます。
  • 「dotnet8-out-ExtractPage」ディレクトリ:サンプルプログラム「ExtractPage」専用の出力先

4.4. .NET 8 のアプリケーションファイル実行について

ビルド済みアプリケーションファイルの実行のみを行う場合、環境にインストール.NETをSDKの代わりに.NETランタイムにすることが可能です。

4.4.1. .NET ランタイムのセットアップ

(1) 4.2.1 .NET SDKのインストール』の(1)のインストールコマンドを以下に変更して実行します。
これは.NET8を.NET SDKとしてではなく、ASP.NET Core ランタイムとしてインストールするコマンドです。

sudo dnf install dotnet-runtime-8.0

※:
インストール先ディレクトリに関しては『4.2.1 .NET SDKのインストール』をご参照ください。

(2) .NET ランタイムの「dotnet」コマンドを使用するために環境変数を設定します。
具体的な設定項目は『4.2.1 .NET SDKのインストール』をご参照ください。

(3) インストールしたランタイムのバージョンは以下のコマンドとオプションで確認できます。

dotnet --list-runtimes

実行した場合、以下のように表示されます。

Microsoft.AspNetCore.App 8.0.21 [/usr/lib64/dotnet/shared/Microsoft.AspNetCore.App]

Microsoft.NETCore.App 8.0.21 [/usr/lib64/dotnet/shared/Microsoft.NETCore.App]

4.4.2. .NET アプリケーションの実行

.NETアプリケーションを実行する手順をまとめると以下のようになります。

(1) ターゲットフレームワークの.NET SDKまたはランタイムをインストールしします。(※1)

(2) PDF Tool APIのモジュールファイルをセットアップします。(※2)

(3) PDF Tool APIのライセンスファイルを配置します。

(4) 文字を扱う処理を行う場合、「font-config.xml」(フォント構築ファイル)でフォントディレクトリの設定を行います。(※3)

(5) モジュールファイル、フォント構築ファイル、ライセンスファイルを利用するための環境変数を設定します。(※4)
以下はコンソールで設定する場合の例です。

> export LD_LIBRARY_PATH=/usr/AHPDFToolLib80/lib:${LD_LIBRARY_PATH}
> export PTL80_LIC_PATH=/usr/AHPDFToolLib80/License
> export PTL80_FONT_CONFIGFILE=/usr/AHPDFToolLib80/fontconfig/font-config.xml
> export PTL80_ICCPROFILE_PATH=/usr/AHPDFToolLib80/icc

(6) アプリケーションファイルを任意の場所に配置します。

(7) コンソールを起動し、アプリケーションファイルがあるディレクトリをカレントにして実行します。必要に応じて、コマンド入力時に引数を指定してください。

以下は「dotnet」コマンドを用いて実行する場合の例です。

dotnet {アプリケーションファイル名} {オプション}

(※1)
4.2.1 .NET SDKのインストール』や『4.4.1 .NET ランタイムのセットアップ』をご参照ください。
なお、アプリケーションファイルにランタイムライブラリ―を組み込んだ場合は不要です。

(※2)
実行環境にモジュールファイルをセットアップする場合、PDF Tool API付属のインストーラは使用しないでください。

(※3)
テキスト透かしやテキスト追加といった処理に必要です。
詳細は『PDF Tool APIの開発環境を整える』の『2.3 フォントの準備』をご参照ください。

(※4)
Linux環境で必要な環境変数の詳細は「2.4 Linux開発・実行環境における環境」をご参照ください。