【发布时间】:2015-02-23 06:53:31
【问题描述】:
我需要在不使用 C# 中的第三方库的情况下将图像文件转换为 PDF。图片可以是任何格式,例如(.jpg、.png、.jpeg、.tiff)。
在 itextsharp 的帮助下,我成功地做到了这一点;这是代码。
string value = string.Empty;//value contains the data from a json file
List<string> sampleData;
public void convertdata()
{
//sampleData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(value);
var jsonD = System.IO.File.ReadAllLines(@"json.txt");
sampleData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(jsonD[0]);
Document document = new Document();
using (var stream = new FileStream("test111.pdf", FileMode.Create, FileAccess.Write, FileShare.None))
{
PdfWriter.GetInstance(document, stream);
document.Open();
foreach (var item in sampleData)
{
newdata = Convert.FromBase64String(item);
var image = iTextSharp.text.Image.GetInstance(newdata);
document.Add(image);
Console.WriteLine("Conversion done check folder");
}
document.Close();
}
但现在我需要在不使用第三方库的情况下执行相同的操作。
我已经搜索了互联网,但我无法获得可以提出正确答案的信息。我得到的只是将它与“itextsharp”或“PdfSharp”或“GhostScriptApi”一起使用。
有人会建议一个可能的解决方案吗?
【问题讨论】:
-
为什么不能使用库?我敢肯定有一个许可证对您的项目来说足够开放。
-
.NET 不提供此功能,因此您要么需要 PDF 打印机驱动程序、第三方库,要么必须自己编写。
-
就是这样。我已经尝试使用此代码来满足要求,但它仍然无法满足项目的要求。他们对“不使用第三方库进行转换”感到震惊
-
我们可以使用其他方式,例如先将图像转换为字节数组或任何其他格式,然后再转换为PDF
-
如果没有第三方库,这将是困难的,如果不是太具有挑战性的话。您需要浏览 PDF 文档(1300 多页)并了解它们如何以该格式存储数据。
标签: c# image c#-4.0 pdf asp.net-web-api