Class PdfManager

情報

Documentize.PdfManagerプラグインを表します。PDFドキュメントをマージ、分割、最適化、回転、サイズ変更、圧縮し、テーブルを追加し、PDFドキュメントに目次を追加するために使用されます。複数のPDFドキュメントを単一のPDFにマージすることができます。PDFドキュメントを別々のページに分割できます。PDFドキュメントを最適化、回転、サイズ変更、圧縮できます。PDFドキュメントのページを回転、サイズ変更できます。PDFドキュメントにテーブルを追加できます。PDFドキュメントに目次を追加できます。

Documentize.PdfManagerプラグインを表します。PDFドキュメントをマージ、分割、最適化、回転、サイズ変更、圧縮し、テーブルを追加し、PDFドキュメントに目次を追加するために使用されます。 複数のPDFドキュメントを単一のPDFにマージすることができます。 PDFドキュメントを別々のページに分割できます。 PDFドキュメントを最適化、回転、サイズ変更、圧縮できます。 PDFドキュメントのページを回転、サイズ変更できます。 PDFドキュメントにテーブルを追加できます。 PDFドキュメントに目次を追加できます。

public static class PdfManager

継承

objectPdfManager

継承メンバー

この例は、2つのPDFドキュメントをマージする方法を示します。

// マージオプションオブジェクトを作成して指示を設定
var options = new MergeOptions();
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 処理を実行
PdfManager.Merge(options);

この例は、PDFドキュメントを分割する方法を示します。

// 分割オプションオブジェクトを作成して指示を設定
var options = new SplitOptions();
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// 処理を実行
PdfManager.Split(options);

この例は、PDFドキュメントを最適化する方法を示します。

// 最適化オプションオブジェクトを作成して指示を設定
var options = new OptimizeOptions();
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 処理を実行
PdfManager.Optimize(options);

この例は、PDFドキュメントを回転する方法を示します。

// 回転オプションオブジェクトを作成して指示を設定
var options = new RotateOptions();
// 新しい回転を設定
options.Rotation = Rotation.On90;
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 処理を実行
PdfManager.Rotate(options);

この例は、PDFドキュメントのサイズを変更する方法を示します。

// サイズ変更オプションオブジェクトを作成して指示を設定
var options = new ResizeOptions();
// 新しいページサイズを設定
options.PageSize = PageSize.A3;
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 処理を実行
PdfManager.Resize(options);

この例は、PDFドキュメントを圧縮する方法を示します。

// 圧縮オプションオブジェクトを作成して指示を設定
var options = new CompressOptions();
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 処理を実行
PdfManager.Compress(options);

この例は、PDFファイルにテーブルを追加する方法を示します。

// テーブルオプションを設定
var options = new TableOptions();
options.InsertPageBefore(1)
   .AddTable()
        .AddRow()
            .AddCell().AddParagraph("名前")
            .AddCell().AddParagraph("年齢")
        .AddRow()
            .AddCell().AddParagraph("ボブ")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("サム")
            .AddCell().AddParagraph("20")
        .AddRow()
            .AddCell().AddParagraph("サンディ")
            .AddCell().AddParagraph("26")
        .AddRow()
            .AddCell().AddParagraph("トム")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("ジム")
            .AddCell().AddParagraph("27");
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_input.pdf"));
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// 処理を実行
PdfManager.AddTable(options);

この例は、PDFファイルに目次を追加する方法を示します。

// 目次オプションオブジェクトを作成して指示を設定
var options = new TocOptions();
// タイトルを設定
options.Title = "私の目次";
// 見出しをデザイン
options.Headings.Add(new TocHeading("はじめに", 2));
options.Headings.Add(new TocHeading("第 I 章", 3));
options.Headings.Add(new TocHeading("第 II 章", 4));
options.Headings.Add(new TocHeading("第 III 章", 5));
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 処理を実行
PdfManager.AddTableOfContents(options);

この例は、目次を生成するブックマークを追加してPDFファイルに目次を追加する方法を示します。

// 目次オプションオブジェクトを作成して指示を設定
var options = new TocOptions();
// タイトルを設定
options.Title = "私の目次";
// ブックマーク内のリンクを生成
options.GenerateBookmarks = true;
// 見出しをデザイン
options.Headings.Add(new TocHeading("はじめに", 2, false, 1));
options.Headings.Add(new TocHeading("第 I 章", 3, true, 1));
options.Headings.Add(new TocHeading("第 II 章", 4, true, 1));
options.Headings.Add(new TocHeading("例 A", 4, true, 2));
options.Headings.Add(new TocHeading("例 B", 4, true, 2));
options.Headings.Add(new TocHeading("例 C", 4, true, 2));
options.Headings.Add(new TocHeading("例 D", 4, true, 2));
options.Headings.Add(new TocHeading("第 III 章", 5, true, 1));
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 処理を実行
PdfManager.AddTableOfContents(options);

この例は、PDFファイルに目次を追加してストリームとして保存する方法を示します。

// 目次オプションオブジェクトを作成して指示を設定
var options = new TocOptions();
// タイトルを設定
options.Title = "私の目次";
// 見出しをデザイン
options.Headings.Add(new TocHeading("はじめに", 2, false, 1));
// 入力ファイルパスを追加
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 出力ストリームを設定 
var outputStream = new MemoryStream();
options.AddOutput(new StreamDataSource(outputStream));
options.CloseOutputStreams = false;
// 処理を実行
PdfManager.AddTableOfContents(options);

この例は、リクエストにメッセージを追加してChatGptを使用する方法を示します。

var options = new ChatGptRequestOptions();
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf")); 
options.ApiKey = "あなたのAPIキー"; // APIにアクセスするためにキーを提供する必要があります。
options.MaxTokens = 1000; // チャットの完了で生成されるトークンの最大数です。

// リクエストメッセージを追加します。
options.Messages.Add(new Message
{
    Content = "あなたは役に立つアシスタントです。",
    Role = Role.System
});
options.Messages.Add(new Message
{
    Content = "今まで作られた最大のピザの直径はどのくらいですか?",
    Role = Role.User
});

// リクエストを処理します。
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);

var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // ChatGPT APIのチャット完了オブジェクト。

この例は、リクエストに1つのメッセージを追加してChatGptを使用する方法を示します。

var options = new ChatGptRequestOptions();
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf")); // 出力ファイルパスを追加します。
options.ApiKey = "あなたのAPIキー"; // APIにアクセスするためにキーを提供する必要があります。
options.MaxTokens = 1000; // チャットの完了で生成されるトークンの最大数です。

// リクエストメッセージを追加します。
// この場合、"あなたは役に立つアシスタントです。"という内容のシステムメッセージがデフォルトで追加されます。
// クエリメッセージの役割はデフォルトで"ユーザー"です。
options.Query = "地球上で記録された最低の温度は何度ですか?";

// リクエストを処理します。
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);

var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // ChatGPT APIのチャット完了オブジェクト。

この例は、ファイルをメッセージソースとして追加してChatを使用する方法を示します。

var options = new ChatGptRequestOptions();
// 出力ファイルパスを設定
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));

// PDFテキストソースを追加します。
// 複数のソースがある場合、各文書からのテキストが、役割"ユーザー"の別々のメッセージとしてリクエストメッセージコレクションに追加されます。
options.AddInput(new FileDataSource("TextSource.pdf"));

options.ApiKey = "あなたのAPIキー"; // APIにアクセスするためにキーを提供する必要があります。
options.MaxTokens = 1000; // チャットの完了で生成されるトークンの最大数です。

// リクエストメッセージを追加します。
// この場合、"あなたは役に立つアシスタントです。"という内容のシステムメッセージがデフォルトで追加されます。
// クエリメッセージの役割はデフォルトで"ユーザー"です。
options.Query = "提供されたテキストには何文字ありますか?";

// リクエストを処理します。
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);

var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // ChatGPT APIのチャット完了オブジェクト。

メソッド

AddTable(TableOptions)

PDFドキュメントにテーブルを追加します。

public static ResultContainer AddTable(TableOptions options)

パラメータ

  • options TableOptions: 操作の指示を含むオプションオブジェクト。

戻り値

ResultContainer : 操作の結果を含むオブジェクト。

例外

ArgumentException

オプションが設定されていない場合。

AddTableOfContents(TocOptions)

PDFドキュメントに目次(TOC)を追加します。

public static ResultContainer AddTableOfContents(TocOptions options)

パラメータ

  • options TocOptions: 操作の指示を含むオプションオブジェクト。

戻り値

ResultContainer : 操作の結果を含むオブジェクト。

例外

ArgumentException

オプションが設定されていない場合。

Compress(CompressOptions)

PDFドキュメントを圧縮します。ドキュメントのサイズを減らそうとします。

public static ResultContainer Compress(CompressOptions options)

パラメータ

  • options CompressOptions: 操作の指示を含むオプションオブジェクト。

戻り値

ResultContainer : 操作の結果を含むオブジェクト。

例外

ArgumentException

オプションが設定されていない場合。

CreatePdfByChatGptRequestAsync(ChatGptRequestOptions)

ChatGptの返信によってPDFドキュメントを作成します。 ChatGPTに直接リクエストを送信するために使用されるか、PDFファイルソースを追加し、その返信を出力ソースに保存します。

public static Task<resultcontainer> CreatePdfByChatGptRequestAsync(ChatGptRequestOptions options)

パラメータ

戻り値

Task<ResultContainer>

操作の結果を含むオブジェクト。

例外

ArgumentException : オプションが設定されていない場合。

Merge(MergeOptions)

PDFドキュメントをマージします。

public static ResultContainer Merge(MergeOptions options)

パラメータ

  • options MergeOptions: 操作の指示を含むオプションオブジェクト。

戻り値

ResultContainer : 操作の結果を含むオブジェクト。

例外

ArgumentException

オプションが設定されていない場合。

Optimize(OptimizeOptions)

PDFドキュメントを最適化します。 ドキュメントを線形化して、次のことを行います。

  • できるだけ早く最初のページを開く。
  • 次のページや次のページへのリンクをできるだけ早く表示する。
  • 遅いチャネルでページのデータが送信されるときに届くデータに従ってページを段階的に表示する(最も有用なデータを最初に表示する)。
  • ユーザーインタラクション(たとえば、リンクをたどる)が行われることを許可します。ページ全体が受信されて表示される前に。
public static ResultContainer Optimize(OptimizeOptions options)

パラメータ

  • options OptimizeOptions: 操作の指示を含むオプションオブジェクト。

戻り値

ResultContainer : 操作の結果を含むオブジェクト。

例外

ArgumentException

オプションが設定されていない場合。

Resize(ResizeOptions)

PDFドキュメントのページをサイズ変更します。

public static ResultContainer Resize(ResizeOptions options)

パラメータ

  • options ResizeOptions: 操作の指示を含むオプションオブジェクト。

戻り値

ResultContainer : 操作の結果を含むオブジェクト。

例外

ArgumentException

オプションが設定されていない場合。

Rotate(RotateOptions)

PDFドキュメントのページを回転します。

public static ResultContainer Rotate(RotateOptions options)

パラメータ

  • options RotateOptions: 操作の指示を含むオプションオブジェクト。

戻り値

ResultContainer : 操作の結果を含むオブジェクト。

例外

ArgumentException

オプションが設定されていない場合。

Split(SplitOptions)

PDFドキュメントをページごとに分割します。

public static ResultContainer Split(SplitOptions options)

パラメータ

  • options SplitOptions: 操作の指示を含むオプションオブジェクト。

戻り値

ResultContainer : 操作の結果を含むオブジェクト。

例外

ArgumentException

オプションが設定されていない場合。

Namespace: Documentize Assembly: Documentize.dll

 日本語