3

アプリケーション ディレクトリにある場合、MigraDoc は画像の挿入を提供します。例:

Section section = document.AddSection();    
section.AddImage("../../SomeImage.png");

.AddImage パラメータに http 画像パスを追加すると、「画像が見つかりません」と表示されます。PDFで。

MigraDoc によって生成された PDF に http 画像を挿入する方法はありますか?

4

1 に答える 1

4

いいえ、HTTP 参照経由で画像を挿入することはできません。

イメージをローカル フォルダーにダウンロードし、このローカル コピーを MigraDoc ドキュメントに追加します。

PDFsharp を使用する場合、ローカル ファイルは必要ありません。代わりに Image オブジェクトを使用できます。

XImage.FromURI のコードはここにあります (PDFsharp の場合):
http://forum.pdfsharp.de/viewtopic.php?p=4851&sid=4898a4ff0b0437cfdbb80bc48bdfed36#p4851

MigraDoc が動的画像を使用できるようにするコード (一時的なローカル ファイルは不要) は、次の場所にあります

更新:
PDFsharp 1.50 ベータ 2 以降では、メモリにある画像 (byte[] など) を簡単に追加できます。HTTP 参照しかない場合でも、自分で画像をダウンロードする必要があります。しかし、一時ファイルやパッチが適用された MigraDoc バージョンはもう必要ありません。
MigraDoc サイトの詳細情報

トリックは簡単です: 画像を文字列に変換し、それを "base64:" プレフィックス付きのファイル名として渡します。

static string MigraDocFilenameFromByteArray(byte[] image)
{
    return "base64:" +
           Convert.ToBase64String(image);
}
于 2013-08-29T21:01:34.860 に答える