我們正在尋找以編程方式將圖像批量轉換爲PDF。到目前爲止,它看起來像我們將使用iTextSharp,但我們有與剪切路徑的JPG圖像的問題。我們在測試中使用以下代碼:使用iTextSharp將圖像轉換爲PDF保留剪切路徑
using (FileStream fs = new FileStream(output, FileMode.Create, FileAccess.Write, FileShare.None))
{
using (Document doc = new Document())
{
using (PdfWriter writer = PdfWriter.GetInstance(doc, fs))
{
doc.Open();
iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(source);
image.SetAbsolutePosition(0, 0);
doc.SetPageSize(new iTextSharp.text.Rectangle(0, 0, image.Width, image.Height, 0));
doc.NewPage();
writer.DirectContent.AddImage(image,false);
doc.Close();
}
}
}
在JPG圖像中的剪切路徑似乎只是被丟棄。有沒有辦法保留剪切路徑?另外,當調用AddImage時,InlineImage有一個選項,任何人都知道它的作用?
請勿使用嵌入式圖像:使用嵌入式圖像意味着圖像存儲在PDF的內容流中。這隻能用於大小爲4 KB或更小的圖像。 PDF 2.0中將禁止更大的內嵌圖像。此外:iText將JPG的字節直接複製到PDF中。沒有一個字節被改變。如果你說你的JPG有裁剪路徑(我從來沒有聽說過這樣的事情),並且你沒有在PDF中看到這個特性,那麼你正面臨着PDF固有的侷限性,而不是iText(iText doesn'甚至看看JPG)。 –
我確實在代碼中看到一個錯誤:第一個圖像的頁面大小將始終是錯誤的。它將是A4而不是圖像的大小。您需要使用您遇到的第一個圖像的大小來創建「Document」對象。 –
我編輯了你的標題。請參閱:「[應該在題目中包含」標籤「嗎?](http://meta.stackexchange。com/questions/19190 /)「,其中的共識是」不,他們不應該「 –