LoadPDF.cs
//
// このコードは、DioDocs for PDF のサンプルの一部として提供されています。
// © MESCIUS inc. All rights reserved.
//
using System;
using System.IO;
using System.Drawing;
using GrapeCity.Documents.Pdf;
using GrapeCity.Documents.Text;
namespace DsPdfWeb.Demos
{
// このサンプルは、HelloWorld サンプルで作成されたPDFファイルを読み込み、
// 最初のページに短いテキストを追加し、結果を保存します。
public class LoadPDF
{
public int CreatePDF(Stream stream)
{
// 重要:GcPdfDocument.Load() メソッドを使用して既存のPDFファイルを操作する場合、
// そのメソッドに渡されたストリームは、ドキュメントを操作している間は開いたままに
// しておく必要があります。
// これは、Load() メソッドが PDF ドキュメント全体をすぐにメモリに読み込まず、
// 必要に応じて PDF のさまざまな部分を読み込むためです。
// ストリームは読み込みにのみ使用され、元のファイル自体は変更されません。
// 変更を保存するには、通常どおり GcPdfDocument.Save() メソッドの
// オーバーロードの1つを呼び出す必要があります。
using var fs = File.OpenRead(Path.Combine("Resources", "PDFs", "HelloWorld.pdf"));
var doc = new GcPdfDocument();
doc.Load(fs);
// ドキュメント内の(唯一の)ページにメモを追加します。
var page = doc.Pages.Last;
Common.Util.AddNote(
"これは既存の PDF ファイル(HelloWorld.pdf)の文書に追加した文字列です。",
page,
new RectangleF(72, 72 * 3, page.Size.Width - 72 * 2, 72));
// PDF ドキュメントを保存します。
doc.Save(stream);
return doc.Pages.Count;
}
}
}