-1

のテンプレートに基づいてPDF形式のポスターを自動生成する必要があります。このPDFには、Webアプリケーションを介して提供されるカスタムテキストと画像が含まれている必要があります。フィールドからPDFに追加して、iTextSharp(私はC#を使用しています)のようなもので埋めることができることは知っていますが、これらは背景がしっかりしているため、ポスターにオーバーレイすることはできません。OpenOfficeで透過的なフォームコントロールを作成しようとしましたが、それは不可能のようです。誰かがこの要件を満たす方法を提案できますか?

どうもありがとう

4

1 に答える 1

1

これは、ITextsharpを使用して実行できます。これは非常に強力なPDFライブラリです。背景をPDFとして保持し、ストリームにロードします。次に、ロードされたpdfに書き込み、ポスターを返すことができます。

 private PdfContentByte _pcb; 
Document document = new Document();

FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);
PdfReader Mypdfreader= new PdfReader(fileStream);
 PdfTemplate background = writer.GetImportedPage(Mypdfreader, 1);
 document.NewPage();
_pcb = writer.DirectContentUnder;
_pcb.AddTemplate(background, 0, 0);
 _pcb = writer.DirectContent;
_pcb.BeginText();
         _pcb.SetFontAndSize(BaseFont.CreateFont(BaseFont.TIMES_ROMAN, BaseFont.CP1252, false), 10);
 _pcb.ShowTextAligned(PdfContentByte.ALIGN_LEFT, text, 10, 5, 0);//10,5 are x and y coordinates resp.
 _pcb.EndText();

 writer.Flush();
fileStream.Close();

またはサンプルの PDFポスターを参照してください

于 2012-07-12T10:38:13.010 に答える