![](/img/trans.png)
[英]Set the position of a text or an image in a pdf using itextsharp(C#/asp.net)
[英]Add text above and below an image in a pdf using itextsharp(asp.net,C#)
我已經使用memorystream將圖像轉換為byte[]
,然后使用itextsharp將byte[]
添加到了pdf中。 現在,我的要求是在圖像上方添加某些文本,以提供有關該圖像的一些信息。
這是我的代碼
private void generatepdf(byte[] byteImage)
{
iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(byteImage);
image.ScalePercent(0.3f * 100);
using (System.IO.MemoryStream memoryStream = new System.IO.MemoryStream())
{
Document document = new Document(PageSize.A4, 188f, 88f, 10f, 10f);
PdfWriter writer = PdfWriter.GetInstance(document, memoryStream);
document.Open();
document.Add(image);
document.Close();
byte[] bytes = memoryStream.ToArray();
memoryStream.Close();
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "attachment; filename=test.pdf");
Response.ContentType = "application/pdf";
Response.Buffer = true;
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.BinaryWrite(bytes);
Response.End();
}
如何添加一些文本並轉換為字節,然后將其發送到pdf對象。 還是有更好的方法來指導我正確的方向。
你可以這樣嘗試
private void generatepdf(byte[] byteImage)
{
iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(byteImage);
image.ScalePercent(0.3f * 100);
using (MemoryStream memoryStream = new System.IO.MemoryStream())
{
Document document = new Document(PageSize.A4, 188f, 88f, 10f, 10f);
PdfWriter writer = PdfWriter.GetInstance(document, memoryStream);
string text1 = "before image";
Paragraph text1Title = new Paragraph(text1);
string text2 = "after image";
Paragraph text2Title = new Paragraph(text2);
document.Open();
document.Add(text1Title);
document.Add(image);
document.Add(text2Title);
document.Close();
byte[] bytes = memoryStream.ToArray();
memoryStream.Close();
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "attachment; filename=test.pdf");
Response.ContentType = "application/pdf";
Response.Buffer = true;
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.BinaryWrite(bytes);
Response.End();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.