26

画像 (jpg や png など) を PDF に変換したいと考えています。

ImageMagickNETをチェックアウトしましたが、私のニーズには複雑すぎます。

画像を PDF に変換する他の .NET ソリューションまたはコードはありますか?

4

9 に答える 9

35

iTextSharpで簡単:

class Program
{
    static void Main(string[] args)
    {
        Document document = new Document();
        using (var stream = new FileStream("test.pdf", FileMode.Create, FileAccess.Write, FileShare.None))
        {
            PdfWriter.GetInstance(document, stream);
            document.Open();
            using (var imageStream = new FileStream("test.jpg", FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
            {
                var image = Image.GetInstance(imageStream);
                document.Add(image);
            }
            document.Close();
        }
    }
}
于 2009-10-29T08:33:21.060 に答える
19

iTextSharpはそれをかなりきれいに行い、オープンソースです。また、フォームの管理など、より興味深いことを行う場合は、著者による非常に優れた付属の本をお勧めします. 通常の使用方法については、メーリング リストやニュースグループに、よくあることを行う方法のサンプル用のリソースがたくさんあります。

編集: @ Chirag のコメントで示唆されているように、@ Darin の回答には、現在のバージョンで確実にコンパイルされるコードがあります。

使用例:

public static void ImagesToPdf(string[] imagepaths, string pdfpath)
{
    using(var doc = new iTextSharp.text.Document())
    {
        iTextSharp.text.pdf.PdfWriter.GetInstance(doc, new FileStream(pdfpath, FileMode.Create));
        doc.Open();
        foreach (var item in imagepaths)
        {
            iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(item);
            doc.Add(image);
        }
    }
}

于 2009-10-29T08:30:06.183 に答える
5

私たちが幸運に恵まれたのはPDFSharpです(毎日何百もの医療請求のTIFFおよびテキストからPDFへの変換に使用しています)。

http://pdfsharp.com/PDFsharp/

于 2009-10-29T09:46:20.007 に答える
3

このようなタスクは、 Docotic.Pdf ライブラリを使用して簡単に実行できます。

これは、与えられた画像から PDF を作成するサンプルです (実際には JPG だけではありません)。

public static void imagesToPdf(string[] images, string pdfName)
{
    using (PdfDocument pdf = new PdfDocument())
    {
        for (int i = 0; i < images.Length; i++)
        {
            if (i > 0)
                pdf.AddPage();

            PdfPage page = pdf.Pages[i];
            string imagePath = images[i];
            PdfImage pdfImage = pdf.AddImage(imagePath);

            page.Width = pdfImage.Width;
            page.Height = pdfImage.Height;
            page.Canvas.DrawImage(pdfImage, 0, 0);
        }

        pdf.Save(pdfName);
    }
}

免責事項: 私はライブラリのベンダーで働いています。

于 2012-04-29T18:09:25.180 に答える
0

私は Sautinsoft を使用していますが、これは非常にシンプルです。

SautinSoft.PdfMetamorphosis p = new SautinSoft.PdfMetamorphosis();
p.Serial="xxx";
p.HtmlToPdfConvertStringToFile("<html><body><img src=\""+filename+"\"></img></body></html>","output.pdf");
于 2022-01-27T19:00:06.087 に答える
0

無料/オープンソースのソリューションだけを探しているのか、商用のソリューションも検討しているのかはわかりません. ただし、商用ソリューションを含める場合は、EasyPDF SDK というツールキットがあり、画像 (およびその他の多くのファイル タイプ) を PDF に変換するための API を提供します。C# をサポートしており、次の場所にあります。

 http://www.pdfonline.com/

C# コードは次のようになります。

 Printer oPrinter = new Printer();

 ImagePrintJob oPrintJob = oPrinter.ImagePrintJob;
 oPrintJob.PrintOut(imageFile, pdfFile);

完全に透明性を保つために、私は EasyPDF SDK のメーカーのために働いていることを否認する必要があります (したがって、私のハンドル)。したがって、この提案には個人的な偏見がないわけではありません :) しかし、興味がある場合は、評価版を自由にチェックしてください。乾杯!

于 2009-11-02T18:23:34.977 に答える
-5

そこに多くの差分ツール。私が使用しているのはPrimoPDF(FREE)http://www.primopdf.com/ です。ファイルを印刷して、ドライブにpdf形式で印刷します。Windowsで動作します

于 2009-10-29T08:36:29.260 に答える