Menambahkan Gambar dan Teks

Kelas PdfFileMend dapat membantu Anda menambahkan gambar dan teks dalam dokumen PDF yang ada, di lokasi yang ditentukan. Ini menyediakan dua metode dengan nama AddImage dan AddText. Metode AddImage memungkinkan Anda menambahkan gambar dengan tipe JPG, GIF, PNG, dan BMP. Metode AddText mengambil argumen dari kelas FormattedText dan menambahkannya ke dalam file PDF yang ada. Gambar dan teks dapat ditambahkan dalam wilayah persegi panjang yang ditentukan oleh koordinat titik kiri bawah dan kanan atas. Saat menambahkan gambar, Anda dapat menentukan baik jalur file gambar atau aliran file gambar. Untuk menentukan nomor halaman di mana gambar atau teks perlu ditambahkan, kedua metode ini menyediakan argumen nomor halaman. Jadi, Anda tidak hanya dapat menambahkan gambar dan teks di lokasi yang ditentukan tetapi juga di halaman yang ditentukan.

Gambar adalah bagian penting dari konten dokumen PDF. Memanipulasi gambar dalam file PDF yang ada adalah kebutuhan umum bagi orang-orang yang bekerja dengan file PDF. Dalam artikel ini, kita akan menjelajahi bagaimana gambar dapat dimanipulasi, dalam file PDF yang ada, dengan bantuan namespace Aspose.Pdf.Facades dari Aspose.PDF for .NET. Semua operasi terkait gambar dari namespace Aspose.Pdf.Facades telah dikonsolidasikan dalam artikel ini.

Detail Implementasi

Namespace Aspose.Pdf.Facades memungkinkan Anda menambahkan gambar baru dalam file PDF yang ada. Anda juga dapat mengganti atau menghapus gambar yang ada. File PDF juga dapat dikonversi menjadi gambar. Anda dapat mengonversi setiap halaman individu menjadi satu gambar atau seluruh file PDF menjadi satu gambar. Ini memungkinkan Anda menggunakan format seperti JPEG, BMP, PNG, dan TIFF, dll. Anda juga dapat mengekstrak gambar dari file PDF. Anda dapat menggunakan empat kelas dari namespace Aspose.Pdf.Facades untuk menerapkan operasi ini, yaitu PdfFileMend, PdfContentEditor, PdfExtractor, dan PdfConverter.

Operasi Gambar

Dalam bagian ini, kita akan melihat lebih dalam tentang operasi gambar ini. Kita juga akan melihat potongan kode untuk menunjukkan penggunaan kelas dan metode terkait. Pertama-tama, mari kita lihat cara menambahkan gambar dalam file PDF yang ada. Kita dapat menggunakan metode AddImage dari kelas PdfFileMend untuk menambahkan gambar baru. Menggunakan metode ini, Anda tidak hanya dapat menentukan nomor halaman di mana Anda ingin menambahkan gambar, tetapi juga lokasi gambar dapat ditentukan.

Tambahkan Gambar dalam File PDF yang Ada (Facades)

Anda dapat menggunakan metode AddImage dari kelas PdfFileMend. Metode AddImage memerlukan gambar yang akan ditambahkan, nomor halaman di mana gambar perlu ditambahkan, dan informasi koordinat. Setelah itu, simpan file PDF yang diperbarui menggunakan metode Close.

Dalam contoh berikut, kita menambahkan gambar ke halaman menggunakan imageStream:

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddImage01()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images(); 

    // Create PDF document and PdfFileMend objects
    using (var document = new Aspose.Pdf.Document(dataDir + "AddImage.pdf"))
    {
        using (var mender = new Aspose.Pdf.Facades.PdfFileMend())
        {
            // Load image into stream
            using (var imageStream = File.OpenRead(dataDir + "AddImage.png"))
            {
                // Bind PDF document
                mender.BindPdf(document);

                // Add image to first page
                mender.AddImage(imageStream, 1, 10, 650, 110, 750);

                // Save PDF document
                mender.Save(dataDir + "AddImage_out.pdf");
            }
        }
    }
}

Tambahkan Gambar

Dengan bantuan CompositingParameters, kita dapat menumpuk satu gambar di atas gambar lainnya:

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddImage02()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Create PDF document and PdfFileMend objects
    using (var document = new Aspose.Pdf.Document(dataDir + "AddImage.pdf"))
    {
        using (var mender = new Aspose.Pdf.Facades.PdfFileMend())
        {
            // Load image into stream
            using (var imageStream = File.OpenRead(dataDir + "AddImage.png"))
            {
                // Bind PDF document
                mender.BindPdf(document);

                int pageNum = 1;
                int lowerLeftX = 10;
                int lowerLeftY = 650;
                int upperRightX = 110;
                int upperRightY = 750;

                // Use compositing parameters for the image
                var compositingParameters = new Aspose.Pdf.CompositingParameters(Aspose.Pdf.BlendMode.Multiply);

                mender.AddImage(imageStream, pageNum, lowerLeftX, lowerLeftY, upperRightX, upperRightY, compositingParameters);

                // Save PDF document
                mender.Save(dataDir + "AddImage_out.pdf");
            }
        }
    }
}

Tambahkan Gambar

Ada beberapa cara untuk menyimpan gambar dalam file PDF. Kami akan mendemonstrasikan salah satunya dalam contoh berikut:

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddImage03()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "AddImage.pdf"))
    {
        using (var mender = new Aspose.Pdf.Facades.PdfFileMend())
        {
            // Load image into stream
            using (var imageStream = File.OpenRead(dataDir + "AddImage.png"))
            {
                // Bind PDF document
                mender.BindPdf(document);

                int pageNum = 1;
                int lowerLeftX = 10;
                int lowerLeftY = 650;
                int upperRightX = 110;
                int upperRightY = 750;

                // Use compositing parameters with BlendMode.Exclusion and ImageFilterType.Flate
                var compositingParameters = new Aspose.Pdf.CompositingParameters(
                    Aspose.Pdf.BlendMode.Exclusion,
                    Aspose.Pdf.ImageFilterType.Flate);

                mender.AddImage(imageStream, pageNum, lowerLeftX, lowerLeftY, upperRightX, upperRightY, compositingParameters);

                // Save PDF document
                mender.Save(dataDir + "AddImage_out.pdf");
            }
        }
    }
}
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddImage04()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "AddImage.pdf"))
    {
        using (var mender = new Aspose.Pdf.Facades.PdfFileMend())
        {
            // Load image into stream
            using (var imageStream = File.OpenRead(dataDir + "AddImage.png"))
            {
                // Bind PDF document
                mender.BindPdf(document);

                int pageNum = 1;
                int lowerLeftX = 10;
                int lowerLeftY = 650;
                int upperRightX = 110;
                int upperRightY = 750;

                // Use compositing parameters with BlendMode.Multiply, ImageFilterType.Flate and false
                var compositingParameters = new Aspose.Pdf.CompositingParameters(
                    Aspose.Pdf.BlendMode.Multiply,
                    Aspose.Pdf.ImageFilterType.Flate,
                    false);

                mender.AddImage(imageStream, pageNum, lowerLeftX, lowerLeftY, upperRightX, upperRightY, compositingParameters);

                // Save PDF document
                mender.Save(dataDir + "AddImage_outp.pdf");
            }
        }
    }
}

Tambahkan Teks dalam File PDF yang Ada (facades)

Kita dapat menambahkan teks dengan beberapa cara. Pertimbangkan yang pertama. Kita mengambil FormattedText dan menambahkannya ke Halaman. Setelah itu, kita menunjukkan koordinat sudut kiri bawah, dan kemudian kita menambahkan teks kita ke Halaman.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddText01()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Create PdfFileMend object
    using (var mender = new Aspose.Pdf.Facades.PdfFileMend())
    {
        // Bind PDF document
        mender.BindPdf(dataDir + "AddImage.pdf");

        // Create formatted text
        var message = new Aspose.Pdf.Facades.FormattedText("Welcome to Aspose!");

        // Add text to the first page at position (10, 750)
        mender.AddText(message, 1, 10, 750);

        // Save PDF document
        mender.Save(dataDir + "AddText_out.pdf");
    }
}

Periksa bagaimana tampilannya:

Tambahkan Teks

Cara kedua untuk menambahkan FormattedText. Selain itu, kita menunjukkan sebuah persegi panjang di mana teks kita harus muat.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddText02()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Create PdfFileMend object
    using (var mender = new Aspose.Pdf.Facades.PdfFileMend())
    {
        // Bind PDF document
        mender.BindPdf(dataDir + "AddImage.pdf");

        // Create formatted text
        var message = new Aspose.Pdf.Facades.FormattedText("Welcome to Aspose! Welcome to Aspose!");

        // Add text to the first page at the specified position with wrapping
        mender.AddText(message, 1, 10, 700, 55, 810);

        // Set word wrapping mode to wrap by words
        mender.WrapMode = Aspose.Pdf.Facades.WordWrapMode.ByWords;

        // Save PDF document
        mender.Save(dataDir + "AddText_out.pdf");
    }
}

Contoh ketiga memberikan kemampuan untuk Menambahkan Teks ke halaman yang ditentukan. Dalam contoh kita, mari kita tambahkan keterangan di halaman 1 dan 3 dari dokumen.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddText03()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "AddImage.pdf"))
    {
        document.Pages.Add();
        document.Pages.Add();
        document.Pages.Add();

        // Create PdfFileMend object
        using (var mender = new Aspose.Pdf.Facades.PdfFileMend())
        {
            // Bind PDF document
            mender.BindPdf(document);

            // Create formatted text
            var message = new Aspose.Pdf.Facades.FormattedText("Welcome to Aspose!");

            // Specify the pages where text should be added
            int[] pageNums = new int[] { 1, 3 };

            // Add text to the specified pages at the specified coordinates
            mender.AddText(message, pageNums, 10, 750, 310, 760);

            // Save PDF document
            mender.Save(dataDir + "AddText_out.pdf");
        }
    }
}