Altbilgi içeriğine atla
IRONPDF KULLANARAK
.NET Maui'de PDF Dosyaları Nasıl Görüntülenir

C# PDF'den Metin Çıkarma (Kod Örneği Eğitimi)

.NET Multi-platform App UI (.NET MAUI), C# ve XAML ile yerel mobil ve masaüstü uygulamaları oluşturmak için bir çapraz platform çerçevesidir. .NET MAUI'yi Android, iOS, macOS ve Windows'ta tek bir kod tabanı kullanarak çalıştırabilirsiniz. .NET MAUI açık kaynaklı olup, Xamarin Forms üzerindeki bir gelişimi temsil eder. Kullanıcı arayüzü denetimleri, performans ve genişletilebilirlik için baştan sona yeniden yazılmıştır. Ayrıca, mobil platformdan masaüstü kullanım senaryolarını da içerecek şekilde genişlemiştir. Eğer daha önce çapraz platform kullanıcı arayüzleri oluşturmak için Xamarin Forms kullandıysanız, .NET MAUI çerçevesinin onunla birçok ortak noktası olduğunu göreceksiniz.

Ancak bazı farklılıklar vardır. .NET MAUI Çerçevesi ile tek bir proje kullanarak çapraz platform uygulamaları oluşturabilirsiniz, ancak ihtiyaç duyarsanız platforma özgü kod ve kaynaklar ekleyebilirsiniz. .NET MAUI'nin ana hedeflerinden biri, uygulama mantığı ve kullanıcı arayüzü düzenini mümkün olduğunca tek bir kod tabanında yazmanızı sağlamaktır. .NET MAUI, tüm platformlar için mevcut olacak ve mevcut MVVM ve XAML kalıplarını destekleyecektir.

.NET MAUI, geliştiricilerin mobil geliştirme ve Windows platformları gibi çeşitli platformlarda çalışmasına olanak tanır.

IronPDF Özellikleri

IronPDF neredeyse bir tarayıcının halledebildiği hemen her görevi halledebilen güçlü bir PDF dönüştürücüdür. Geliştiriciler için .NET kütüphanesi, PDF dosyalarını oluşturmayı, okumayı ve değiştirmeyi basit hale getirir. IronPDF, Google Chrome motorunu HTML'yi PDF dosyalarına dönüştürmek için kullanır. IronPDF, HTML, ASPX, IronPDF ile Razor Sayfalarına PDF'e Dönüştürme ve MVC Görünümünü destekler. IronPDF, Microsoft .NET uygulamalarını (hem ASP.NET Web Uygulamaları hem de geleneksel Windows Uygulamaları) destekler. IronPDF, cezbedici PDF belgeleri oluşturmak için de kullanılabilir.

IronPDF, PDF dosyalarını JavaScript ve CSS içeren HTML dosyalarından oluşturabilir.

IronPDF ile HTML dosyalarını PDF'e dönüştürmekle kalmaz, ayrıca görüntü dosyalarını PDF'e dönüştürebilirsiniz.

IronPDF, etkileşimli PDF belgeleri oluşturabilir, IronPDF kullanarak interaktif formları doldurup gönderebilir, PDF belgelerini birleştirip ayırabilir, PDF belgelerinden metin ve görüntü çıkarabilir, PDF belgelerinde metin arayabilir, PDF sayfalarını görüntülere çevirebilir, PDF'yi HTML'ye dönüştürebilir ve IronPrint kullanarak PDF belgeleri yazdırabilir.

IronPDF bir URL'den belge oluşturabilir. HTML'de IronPDF kullanarak login formları için, özel ağ giriş bilgileri, kullanıcı ajanları, proxy'ler, çerezler, HTTP başlıkları ve form değişkenlerinin kullanımına da izin verir.

IronPDF, PDF belgelerini okuyabilen ve doldurabilen, belgelerden görüntü çıkarabilen bir kütüphanedir. PDF dosyalarına başlık ve alt bilgi eklemeyi, metin, fotoğraf, kolay gezinme için yer imleri, filigranlar ve daha fazlasını belgelere eklemeyi sağlar. Ayrıca, yeni veya mevcut bir belgede sayfaları birleştirmemize ve ayırmamıza olanak tanır. IronPDF, bir belge görüntüleyici kullanmadan belgeleri PDF nesnelerine dönüştürebilir. Ayrıca, bir CSS dosyasını PDF belgesine dönüştürmek de mümkündür ve CSS medya türü dosyaları belgelerle dönüştürülebilir.

Visual Studio'da Yeni Proje Oluşturma

Öncelikle, hem Visual Studio Code hem de Visual Studio kullanarak bir proje oluşturun. Visual Studio Code kullanılırken, proje türü şablonunu kurmak için komut satırı aracını kullanmak gereklidir.

Microsoft Visual Studio yazılımını açın ve Dosya menüsüne gidin. "yeni proje"'yi seçin ve yeni proje penceresinde ".NET MAUI Uygulama"'yı seçin. Bu makale bir .NET MAUI Uygulaması kullanarak PDF belgeleri oluşturup uygun bir yere kaydedecektir.

.NET MAUI'da IronPDF Kullanarak Bir PDF Dosyası Oluşturma, Şekil 1: Visual Studio'da yeni bir proje oluşturma Visual Studio'da yeni proje oluşturun

Proje adını girin ve uygun metin kutusuna dosya yolunu seçin. Daha sonra, aşağıdaki ekran görüntüsünde olduğu gibi Oluştur düğmesine tıklayın.

.NET MAUI'da IronPDF Kullanarak Bir PDF Dosyası Oluşturma, Şekil 2: Projeyi yapılandırma Projeyi yapılandırma

Visual Studio projesi şimdi seçilen uygulama için .NET MAUI Uygulama platformunu takip eden yapıyı oluşturacaktır. Dosyayı şimdi açacak MainPage.cs kod ekleyip uygulamayı oluşturmak/çalıştırmak için.

.NET MAUI'da IronPDF Kullanarak Bir PDF Dosyası Oluşturma, Şekil 3: MainPage.cs dosyasına kod ekleme MainPage.cs dosyasına kod ekleme

Sonra, kodu test etmek için kütüphaneyi yükleyin.

IronPDF Kütüphanesini Yükleyin

IronPDF Kütüphanesi dört şekilde indirilebilir ve yüklenebilir.

Bunlar şunlardır:

  • Visual Studio kullanarak.
  • Visual Studio Komut Satırını Kullanarak.
  • NuGet web sitesinden doğrudan indirin.
  • IronPDF web sitesinden doğrudan indirerek.

Visual Studio Kullanımı

Visual Studio yazılımı, paketi doğrudan çözüme yüklemek için NuGet Paket Yöneticisi seçeneği sağlar. Aşağıdaki ekran görüntüsü, NuGet Paket Yöneticisi'ni nasıl açacağınızı gösterir.

.NET MAUI'da IronPDF Kullanarak Bir PDF Dosyası Oluşturma, Şekil 4: NuGet Paket Yöneticisi UI'ına gitme NuGet Package Manager UI'ye Git

NuGet web sitesinden paket listesini göstermek için arama kutusu sağlar. NuGet Package Manager'da, aşağıdaki ekran görüntüsünde olduğu gibi "IronPDF" anahtar kelimesini arayın.

.NET MAUI'da IronPDF Kullanarak Bir PDF Dosyası Oluşturma, Şekil 5: NuGet Paket Yöneticisi UI'ından IronPDF paketini seçme NuGet Package Manager UI'den IronPDF paketi

Yukarıdaki resimde, ilgili arama öğeleri listelenmiştir, paketi çözüm için yüklemek üzere ilk seçeneği seçin. Android, iOS ve Windows platformları gibi tüm .NET MAUI uygulama platformlarına yüklenecektir.

Visual Studio Komut Satırını Kullanma

Visual Studio'da Araçlar > NuGet Paket Yöneticisi > Paket Yöneticisi Konsolu bölümüne gidin.

Paket Yöneticisi Konsol sekmesinde aşağıdaki satırı girin:

Install-Package IronPdf

Şimdi, paket güncel projedeki tüm .NET MAUI platformlarına indirilecek/yüklenecek ve kullanıma hazır olacak.

.NET MAUI'da IronPDF Kullanarak Bir PDF Dosyası Oluşturma, Şekil 6: Paketi Paket Yöneticisi Konsolu'nda yükleme Paket Manager Konsolu'nda paketi yükleyin

NuGet Web Sitesinden Doğrudan İndirme

Üçüncü yol, bu IronPDF NuGet repository page erişim sağlayarak paketini doğrudan web sitelerinden indirmektir.

  • Sağdaki menüden indirme paketi seçeneğini seçin.
  • İndirilen paketi çift tıklayın. Otomatik olarak yüklenecek.
  • Çözümü yeniden yükleyin ve paket projenizde kullanıma hazır olacaktır.

IronPDF Web Sitesinden Doğrudan İndirme

en son IronPDF ZIP paketini web sitelerinden doğrudan indirin. İndirdikten sonra, paketi projenize eklemek için aşağıdaki adımları izleyin.

  • Çözüm penceresinden proje için Bağımlılıklar seçeneğine sağ tıklayın.
  • Belirli platformu seçin, ardından seçeneklere referans ekleyin ve indirilen referansın konumunu gözden geçirin.
  • Referansı eklemek için Tamam'a tıklayın.

.NET MAUI destekli tüm platformlara da referanslar eklemeniz gerekecek.

IronPDF kullanarak .NET MAUI uygulamasında PDF'ler Oluşturun

Bir proje oluşturulduğunda, MainPage.xaml adlı otomatik oluşturulmuş bir dosya bulunacaktır. .NET MAUI uygulamasının arayüzünü buraya koymak isteyebilirsiniz.

Aşağıdaki kodu takip edin.

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MAUI_PDF.MainPage"
            >

    <ScrollView>
        <VerticalStackLayout
            Spacing="25"
            Padding="30,0"
            VerticalOptions="Center">

            <Image
                Source="dotnet_bot.png"
                SemanticProperties.Description="Cute .NET bot waving hi to you!"
                HeightRequest="200"
                HorizontalOptions="Center" />

            <Label
                Text="Welcome to IronPDF!"
                SemanticProperties.HeadingLevel="Level1"
                FontSize="32"
                HorizontalOptions="Center" />

            <Button
                x:Name="PdfBtn"
                Text="Click me to generate PDF"
                SemanticProperties.Hint="Click button to generate PDF"
                Clicked="GeneratePDF"
                HorizontalOptions="Center" />
        </VerticalStackLayout>
    </ScrollView>

</ContentPage>
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MAUI_PDF.MainPage"
            >

    <ScrollView>
        <VerticalStackLayout
            Spacing="25"
            Padding="30,0"
            VerticalOptions="Center">

            <Image
                Source="dotnet_bot.png"
                SemanticProperties.Description="Cute .NET bot waving hi to you!"
                HeightRequest="200"
                HorizontalOptions="Center" />

            <Label
                Text="Welcome to IronPDF!"
                SemanticProperties.HeadingLevel="Level1"
                FontSize="32"
                HorizontalOptions="Center" />

            <Button
                x:Name="PdfBtn"
                Text="Click me to generate PDF"
                SemanticProperties.Hint="Click button to generate PDF"
                Clicked="GeneratePDF"
                HorizontalOptions="Center" />
        </VerticalStackLayout>
    </ScrollView>

</ContentPage>
XML

Yukarıdaki kod MainPage.xaml dosyasına eklendikten sonra, MainPage.xaml.cs dosyasını açın ve MainPage sınıfı içinde aşağıdaki yöntemi ekleyin:

private void GeneratePDF(object sender, EventArgs e)
{
    ChromePdfRenderer renderer = new ChromePdfRenderer();
    var doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>");

    // Saves the memory stream as file.
    SaveService saveService = new SaveService();
    saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream);
}
private void GeneratePDF(object sender, EventArgs e)
{
    ChromePdfRenderer renderer = new ChromePdfRenderer();
    var doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>");

    // Saves the memory stream as file.
    SaveService saveService = new SaveService();
    saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream);
}
Private Sub GeneratePDF(ByVal sender As Object, ByVal e As EventArgs)
	Dim renderer As New ChromePdfRenderer()
	Dim doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>")

	' Saves the memory stream as file.
	Dim saveService As New SaveService()
	saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream)
End Sub
$vbLabelText   $csharpLabel

GeneratePDF yöntemi, "Merhaba, IronPDF!..." metnini içeren yeni bir PDF belgesi oluşturur ve belirli bir konumda kullanıcının bilgisayarına kaydeder.

Yukarıdaki yöntem içinde, yeni bir ChromePdfRenderer nesnesi oluşturulur ve "Merhaba IronPDF!" kelimelerini içeren yeni bir PDF belgesi üretmek için RenderHtmlAsPdf yöntemi çağrılır. "..." bir dizi HTML işaretlemesinden. Daha sonra, dosyanın kullanıcının cihazına kaydedilmesi SaveService adlı ayrı bir sınıfa devredilecektir. Bu sınıf bir sonraki adımda oluşturulacaktır.

Tam MainPage.xaml.cs dosyası aşağıda verilmiştir. Lütfen dosyanın içeriğinin aşağıda gösterilene uyduğundan emin olun ve bir sonraki adıma geçmeden önce:

// Change the namespace as desired, but make sure that all source files use this same namespace,
// or there will be errors!
namespace MAUI_IronPDF;    

// This namespace is required to make use of IronPDF functionality
using IronPdf;

public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();
    }

    private void GeneratePDF(object sender, EventArgs e)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        var doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>");
        // Saves the memory stream as file.
        SaveService saveService = new SaveService();
        saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream);
    }
}
// Change the namespace as desired, but make sure that all source files use this same namespace,
// or there will be errors!
namespace MAUI_IronPDF;    

// This namespace is required to make use of IronPDF functionality
using IronPdf;

public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();
    }

    private void GeneratePDF(object sender, EventArgs e)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        var doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>");
        // Saves the memory stream as file.
        SaveService saveService = new SaveService();
        saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream);
    }
}
Imports IronPdf

' Change the namespace as desired, but make sure that all source files use this same namespace,
' or there will be errors!
Namespace MAUI_IronPDF

	' This namespace is required to make use of IronPDF functionality

	Partial Public Class MainPage
		Inherits ContentPage

		Public Sub New()
			InitializeComponent()
		End Sub

		Private Sub GeneratePDF(ByVal sender As Object, ByVal e As EventArgs)
			Dim renderer As New ChromePdfRenderer()
			Dim doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>")
			' Saves the memory stream as file.
			Dim saveService As New SaveService()
			saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Şimdi, projenin kökünde SaveService.cs adlı yeni bir sınıf dosyası oluşturun ve aşağıdaki kaynak kodunu ekleyin:

// Change the namespace as desired, but make sure that all source files use this same namespace,
// or there will be errors!
namespace MAUI_IronPDF
{
    // SaveService partial class declaration ... this allows a layer of abstraction
    // as we implement the save file details specially for each platform on which this app will
    // operate! 
    public partial class SaveService
    {
        public void SaveAndView(string filename, string contentType, MemoryStream stream)
        {
            SaveFile(filename, contentType, stream);
        }

        // Additional partial files will provide implementations for this method specifically.
        partial void SaveFile(string filename, string contentType, MemoryStream stream);
    }
}
// Change the namespace as desired, but make sure that all source files use this same namespace,
// or there will be errors!
namespace MAUI_IronPDF
{
    // SaveService partial class declaration ... this allows a layer of abstraction
    // as we implement the save file details specially for each platform on which this app will
    // operate! 
    public partial class SaveService
    {
        public void SaveAndView(string filename, string contentType, MemoryStream stream)
        {
            SaveFile(filename, contentType, stream);
        }

        // Additional partial files will provide implementations for this method specifically.
        partial void SaveFile(string filename, string contentType, MemoryStream stream);
    }
}
' Change the namespace as desired, but make sure that all source files use this same namespace,
' or there will be errors!
Namespace MAUI_IronPDF
	' SaveService partial class declaration ... this allows a layer of abstraction
	' as we implement the save file details specially for each platform on which this app will
	' operate! 
	Partial Public Class SaveService
		Public Sub SaveAndView(ByVal filename As String, ByVal contentType As String, ByVal stream As MemoryStream)
			SaveFile(filename, contentType, stream)
		End Sub

		' Additional partial files will provide implementations for this method specifically.
		Partial Private Sub SaveFile(ByVal filename As String, ByVal contentType As String, ByVal stream As MemoryStream)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Kullanıcı cihazlarındaki içerikleri kaydetme işlemine ilişkin uygulama ayrıntıları her platform için farklılık gösterdiğinden (Windows, Android, macOS, vb.), uygulamanın destekleyeceği her cihaz türü için platforma özel kod yazmak gereklidir. Bunu mümkün kılmak için, (soyutlama amacıyla) SaveService bir partial sınıf olarak tanımlıyoruz ve SaveAndView adlı bir partial yöntemi içeriyor. Bunun ardından, bu yöntemin uygulanması, Çözüm Gezgini içindeki Platformlar klasörüne yuvalanmış bir veya daha fazla klasör için ayrı bir SaveService.cs partial sınıfında tanımlanacaktır (aşağıdaki resme bakın):

.NET MAUI'da IronPDF Kullanarak Bir PDF Dosyası Oluşturma, Şekil 7: Çapraz platform uygulamak için klasör yapısı Çapraz platformu uygulamak için klasör yapısı

Sadelik adına, bu eğitim sadece Windows platformu için bahsedilen kısmi dosyayı tanımlayacaktır. Windows platform klasörünün altında aşağıda gösterilen kodu içeren yeni bir SaveService.cs dosyası oluşturun:

using Windows.Storage;
using Windows.Storage.Pickers;
using Windows.Storage.Streams;
using Windows.UI.Popups;

namespace MAUI_IronPDF;

public partial class SaveService
{
    async partial void SaveFile(string filename, string contentType, MemoryStream stream)
    {
        StorageFile stFile;
        string extension = Path.GetExtension(filename);
        // Gets process windows handle to open the dialog in application process.
        IntPtr windowHandle = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle;
        if (!Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))
        {
            // Creates file save picker to save a file.
            FileSavePicker savePicker = new();
            savePicker.DefaultFileExtension = ".pdf";
            savePicker.SuggestedFileName = filename;
            // Saves the file as PDF file.
            savePicker.FileTypeChoices.Add("PDF", new List<string>() { ".pdf" });

            WinRT.Interop.InitializeWithWindow.Initialize(savePicker, windowHandle);
            stFile = await savePicker.PickSaveFileAsync();
        }
        else
        {
            StorageFolder local = ApplicationData.Current.LocalFolder;
            stFile = await local.CreateFileAsync(filename, CreationCollisionOption.ReplaceExisting);
        }
        if (stFile != null)
        {
            using (IRandomAccessStream zipStream = await stFile.OpenAsync(FileAccessMode.ReadWrite))
            {
                // Writes compressed data from memory to file.
                using Stream outstream = zipStream.AsStreamForWrite();
                outstream.SetLength(0);
                // Saves the stream as file.
                byte [] buffer = stream.ToArray();
                outstream.Write(buffer, 0, buffer.Length);
                outstream.Flush();
            }
            // Create message dialog box.
            MessageDialog msgDialog = new("Do you want to view the document?", "File has been created successfully");
            UICommand yesCmd = new("Yes");
            msgDialog.Commands.Add(yesCmd);
            UICommand noCmd = new("No");
            msgDialog.Commands.Add(noCmd);

            WinRT.Interop.InitializeWithWindow.Initialize(msgDialog, windowHandle);

            // Showing a dialog box.
            IUICommand cmd = await msgDialog.ShowAsync();
            if (cmd.Label == yesCmd.Label)
            {
                // Launch the saved file.
                await Windows.System.Launcher.LaunchFileAsync(stFile);
            }
        }
    }
}
using Windows.Storage;
using Windows.Storage.Pickers;
using Windows.Storage.Streams;
using Windows.UI.Popups;

namespace MAUI_IronPDF;

public partial class SaveService
{
    async partial void SaveFile(string filename, string contentType, MemoryStream stream)
    {
        StorageFile stFile;
        string extension = Path.GetExtension(filename);
        // Gets process windows handle to open the dialog in application process.
        IntPtr windowHandle = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle;
        if (!Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))
        {
            // Creates file save picker to save a file.
            FileSavePicker savePicker = new();
            savePicker.DefaultFileExtension = ".pdf";
            savePicker.SuggestedFileName = filename;
            // Saves the file as PDF file.
            savePicker.FileTypeChoices.Add("PDF", new List<string>() { ".pdf" });

            WinRT.Interop.InitializeWithWindow.Initialize(savePicker, windowHandle);
            stFile = await savePicker.PickSaveFileAsync();
        }
        else
        {
            StorageFolder local = ApplicationData.Current.LocalFolder;
            stFile = await local.CreateFileAsync(filename, CreationCollisionOption.ReplaceExisting);
        }
        if (stFile != null)
        {
            using (IRandomAccessStream zipStream = await stFile.OpenAsync(FileAccessMode.ReadWrite))
            {
                // Writes compressed data from memory to file.
                using Stream outstream = zipStream.AsStreamForWrite();
                outstream.SetLength(0);
                // Saves the stream as file.
                byte [] buffer = stream.ToArray();
                outstream.Write(buffer, 0, buffer.Length);
                outstream.Flush();
            }
            // Create message dialog box.
            MessageDialog msgDialog = new("Do you want to view the document?", "File has been created successfully");
            UICommand yesCmd = new("Yes");
            msgDialog.Commands.Add(yesCmd);
            UICommand noCmd = new("No");
            msgDialog.Commands.Add(noCmd);

            WinRT.Interop.InitializeWithWindow.Initialize(msgDialog, windowHandle);

            // Showing a dialog box.
            IUICommand cmd = await msgDialog.ShowAsync();
            if (cmd.Label == yesCmd.Label)
            {
                // Launch the saved file.
                await Windows.System.Launcher.LaunchFileAsync(stFile);
            }
        }
    }
}
Imports Windows.Storage
Imports Windows.Storage.Pickers
Imports Windows.Storage.Streams
Imports Windows.UI.Popups

Namespace MAUI_IronPDF

	Partial Public Class SaveService
		Private Async Sub SaveFile(ByVal filename As String, ByVal contentType As String, ByVal stream As MemoryStream)
			Dim stFile As StorageFile
			Dim extension As String = Path.GetExtension(filename)
			' Gets process windows handle to open the dialog in application process.
			Dim windowHandle As IntPtr = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle
			If Not Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons") Then
				' Creates file save picker to save a file.
				Dim savePicker As New FileSavePicker()
				savePicker.DefaultFileExtension = ".pdf"
				savePicker.SuggestedFileName = filename
				' Saves the file as PDF file.
				savePicker.FileTypeChoices.Add("PDF", New List(Of String)() From {".pdf"})

				WinRT.Interop.InitializeWithWindow.Initialize(savePicker, windowHandle)
				stFile = Await savePicker.PickSaveFileAsync()
			Else
				Dim local As StorageFolder = ApplicationData.Current.LocalFolder
				stFile = Await local.CreateFileAsync(filename, CreationCollisionOption.ReplaceExisting)
			End If
			If stFile IsNot Nothing Then
				Using zipStream As IRandomAccessStream = Await stFile.OpenAsync(FileAccessMode.ReadWrite)
					' Writes compressed data from memory to file.
					Using outstream As Stream = zipStream.AsStreamForWrite()
						outstream.SetLength(0)
						' Saves the stream as file.
						Dim buffer() As Byte = stream.ToArray()
						outstream.Write(buffer, 0, buffer.Length)
						outstream.Flush()
					End Using
				End Using
				' Create message dialog box.
				Dim msgDialog As New MessageDialog("Do you want to view the document?", "File has been created successfully")
				Dim yesCmd As New UICommand("Yes")
				msgDialog.Commands.Add(yesCmd)
				Dim noCmd As New UICommand("No")
				msgDialog.Commands.Add(noCmd)

				WinRT.Interop.InitializeWithWindow.Initialize(msgDialog, windowHandle)

				' Showing a dialog box.
				Dim cmd As IUICommand = Await msgDialog.ShowAsync()
				If cmd.Label = yesCmd.Label Then
					' Launch the saved file.
					Await Windows.System.Launcher.LaunchFileAsync(stFile)
				End If
			End If
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

MAUI uygulamasını oluşturun ve çalıştırın. Aşağıda gösterilen arayüzü içeren bir pencere açılacaktır:

.NET MAUI'da IronPDF Kullanarak Bir PDF Dosyası Oluşturma, Şekil 8: MAUI Uygulamasının Kullanıcı Arayüzü MAUI Uygulamasının Arayüzü

"PDF Oluştur" düğmesine tıklayın. Birkaç saniye sonra, oluşturulan PDF dosyasının konumunu seçmek için bir açılır pencere belirecektir.

.NET MAUI'da IronPDF Kullanarak Bir PDF Dosyası Oluşturma, Şekil 9: PDF dosyasını kaydetmek için bir konum seçin PDF dosyasını kaydetmek için bir konum seçin

Sonuç

IronPDF, PDF'leri oluşturmayı, okumayı, düzenlemeyi ve biçimlendirmeyi sağlayan en yaygın kullanılan PDF dönüştürücü kütüphanelerinden biridir. IronPDF kütüphanesi, verilen bir URL'yi PDF dosyasına dönüştürmenize yardımcı olacak bir tarayıcı motoru gibi birçok avantaj ve işlevsellik sağlar, HTML dizelerine CSS ekleyip PDF dosyalarına dönüştürmenizi sağlar ve ayrıca PDF formlarını doldurmanıza olanak tanır. IronPDF'in tüm özellikleri tek bir kütüphanede yer alır.

IronPDF çeşitli fiyat yapıları ile gelir. IronPDF için temel fiyat $999 ile başlar. Ürün desteği ve güncellemeleri de bir yıllık ücret karşılığında mevcuttur. Telif ücretsiz yeniden dağıtım kapsaması da bir ek olarak satın alınabilir.

Özetlemek gerekirse, IronPDF'in büyük performans sunması ve PDF'lerle çalışan geliştiriciler için çok sayıda özellik sunması nedeniyle önerilir. Evrensel platformları destekler, örneğin .NET MAUI. Ayrıca, kütüphanenin geniş kapsamlı özelliklerini ve birçok işlevini tam anlamıyla kullanmanıza olanak tanıyan mükemmel yardım ve belgelerle birlikte gelir.

Sıkça Sorulan Sorular

Bir .NET MAUI uygulamasında PDF dosyalarını nasıl üretebilirim?

Bir .NET MAUI uygulamasında PDF dosyaları oluşturmak için IronPDF kullanabilirsiniz. Visual Studio'da bir .NET MAUI projesi kurarak başlayın, IronPDF'i NuGet üzerinden yükleyin ve HTML içeriğini PDF belgesine dönüştürmek için ChromePdfRenderer.RenderHtmlAsPdf yöntemini kullanın.

.NET MAUI'yi çapraz platform uygulama geliştirmeye uygun kılan nedir?

.NET MAUI, çapraz platform uygulama geliştirme için idealdir çünkü geliştiricilerin C# ve XAML kullanarak Android, iOS, macOS ve Windows için tek bir kod tabanından yerel mobil ve masaüstü uygulamaları oluşturmalarına olanak tanır.

IronPDF, PDF dönüşümünde HTML, CSS ve JavaScript'i nasıl ele alır?

IronPDF, web sayfalarının biçimlendirilmeden dönüştürüldüğünden emin olmak için HTML, CSS ve JavaScript'i PDF formatında doğru bir şekilde işlemek üzere Google Chrome motorunu kullanır.

.NET MAUI uygulamasında farklı platformlarda PDF dosyalarını kaydetmek için süreç nedir?

IronPDF kullanan bir .NET MAUI uygulamasında, SaveService sınıfı PDF dosyalarını kaydetmek için kullanılır. Windows ve Android gibi işletim sistemlerinde dosya kaydetmeyi ele almak için platforma özgü uygulamalar içerir.

IronPDF for .NET uygulamalarında mevcut olan bazı ileri özellikler nelerdir?

IronPDF, etkileşimli PDF'ler oluşturma, formları doldurup gönderme, belgeleri birleştirme ve bölme, metin ve resim çıkarma ve başlıklar, altbilgiler ve filigranlar ekleme gibi ileri özellikler sunar.

Visual Studio'da bir .NET MAUI projesine IronPDF'i nasıl entegre ederim?

IronPDF'i bir .NET MAUI projesine entegre etmek için Visual Studio'da NuGet Paket Yöneticisi'ni kullanın. 'IronPDF' arayın ve PDF oluşturma ve yönetimini başlatmak için projenize yükleyin.

IronPDF, bir .NET MAUI uygulamasında bir web sayfası URL'sini PDF'ye dönüştürebilir mi?

Evet, IronPDF, web sayfası URL'sini PDF'ye dönüştürebilir ve web işleme yeteneklerini kullanarak HTML, CSS ve JavaScript içeriğini doğru bir şekilde yakalar ve PDF formatında işler.

.NET MAUI uygulamaları için arayüz tasarımında XAML'nin rolü nedir?

XAML, .NET MAUI'de uygulama arayüzünü tasarlamak için kullanılır. Geliştiricilerin birden fazla platformda sorunsuz çalışan duyarlı ve görsel olarak çekici düzenler oluşturmalarına olanak tanır.

.NET MAUI projelerinde IronPDF kullanmanın faydaları nelerdir?

IronPDF, kullanım kolaylığı, kapsamlı belgeler, performans ve çeşitli PDF görevlerini ele alabilme yeteneği ile .NET MAUI projelerinde PDF'ler ile çalışan geliştiriciler için güvenilir bir seçimdir.

IronPDF, .NET 10 ile tamamen uyumlu ve bu ne gibi avantajlar sağlıyor?

Evet, IronPDF, kutudan çıktığı gibi .NET 10 ile tamamen uyumludur ve 9, 8, 7, 6, Core, Standard ve Framework sürümleriyle de desteklenmektedir. IronPDF'i .NET 10 ile kullanmak, yığın tahsislerinin azaltılması, iyileştirilmiş JIT/çalışma zamanı davranışı ve yeni C# dil özellikleri gibi performans iyileştirmelerinden yararlanmanızı sağlar ve PDF oluşturma ve manipülasyon işlemlerini daha hızlı ve daha verimli hale getirir.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara