-1

私のサイトを pdf に変換しようとしています。私のサイトはレポート用です。一方のページでは情報を入力し、もう一方のページではセッションごとに情報を取得します。サイトには画像があり、重要な場合は css があります。

itextsharp を使用しようとしていますが、私には複雑すぎます。

ここでいくつかの例を使用しようとしましたが、どれも正確に必要なものではないため、機能しません。 http://simpledotnetsolutions.wordpress.com/2012/04/08/itextsharp-few-c-examples/

誰かが私に何をする必要があるかを説明できますか?

私もこのコードを試してみましたが、うまくいきません。

Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=TestPage.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);
this.Page.RenderControl(hw);
StringReader sr = new StringReader(sw.ToString());
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 100f, 0f);
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
htmlparser.Parse(sr);
pdfDoc.Close();
Response.Write(pdfDoc);
Response.End();

ありがとうございました

ちなみに、お金がかかる簡単な解決策があれば、私はそれを支払うことができます。

4

1 に答える 1

0

Scryberを使用してみてください。商用利用では有料ですが、プロトタイピングには無料バージョン (生成された .pdf ファイルに透かしを追加します) を使用できます。

.pdf ファイルの構造とスタイルは .xml で構成できるため、非常に簡単で柔軟です。

構造体の定義例

<data:ForEach select="rss/channel" datasource-id="BBCRss" >
         <Template>
           <pdf:Div style:class="heading" >
             <data:If test="string-length(image/url) &gt; 0" >
               <Template>
                 <pdf:Link action="Uri" file="{xpath:image/link}" new-window="true" alt="{xpath:image/title}" >
                   <Content>
                     <pdf:Image src="{xpath:image/url}" style:width="{xpath:image/width}" style:padding="10" />
                   </Content>
                 </pdf:Link>
               </Template>
             </data:If>
               <pdf:H1 style:class="red-text" text="{xpath:title}"></pdf:H1>
               <pdf:Label text="{xpath:description}" /><BR/>
               Date: <pdf:Label text="{xpath:lastBuildDate}" />
           </pdf:Div>

           <pdf:Div style:class="content" >            
             <data:ForEach select="item" >
               <Template>
                 <pdf:Div style:class="rss-item red-underline" >
                   <pdf:Div style:class="rss-item-data" >
                     <pdf:H2 style:class="red-text" text="{xpath:title}" ></pdf:H2>
                     <pdf:Label text="{xpath:description}" />
                   </pdf:Div>
                 </pdf:Div>

          </Template>
 </data:ForEach>

とスタイル

<style:Style applied-type="pdf:Div" applied-class="content" >
   <style:Columns count="2" alley-width="20pt"/>
   <style:Font size="12pt" bold="false" italic="false"  />
 </style:Style>

ここにサンプル プロジェクトといくつかの説明があります。さらに、Scryber は iTextSharp よりも文書化されています。

于 2013-11-05T20:27:00.953 に答える