iOS'ta iOS üzerinde .NET MAUI ile OCR Nasıl Yapılır
.NET MAUI (Çok Platformlu Uygulama UI'si), Android, iOS, macOS ve Windows için .NET kullanarak platformlar arası uygulamalar oluşturmak amacıyla tasarlanmış Xamarin.Forms çerçevesinin bir evrimidir. MAUI, birden fazla platformda çalışabilen yerel kullanıcı arayüzleri oluşturma sürecini basitleştirmeyi amaçlar.
IronOcr.iOS paketi iOS'a OCR desteği getiriyor!
.NET MAUI'de iOS üzerinde IronOCR nasıl kullanılır
- iOS'ta OCR gerçekleştirmek için C# kütüphanesini indirin
- Bir .NET MAUI Uygulama projesi oluşturun
- JSON dosyasını bir etkinleştirme butonu ve çıktı metni göstermek için düzenleyin
- C# dosyasını OCR işlemi yapmak için düzenleyin
- Hızlı başlamak için örnek projeyi indirin
IronOCR iOS Paketi
IronOcr.iOS paketi, iOS cihazlarında .NET çapraz platform projeleri aracılığıyla OCR özelliklerini etkinleştirir. Vanilla IronOCR paketi gerekli değil.
Install-Package IronOcr.iOS
NuGet ile yükleyin
Install-Package IronOcr.iOS
.NET MAUI Projesi Oluşturun
Çoklu platform bölümünden, .NET MAUI Uygulaması'nı seçin ve devam edin.

IronOCR.iOS Kutuphanesini Dahil Edin
Kütüphane çeşitli şekillerde eklenebilir. Belki en kolay yolu NuGet kullanmaktır.
- Visual Studio içinde, "Dependencies > NuGet" üzerine sağ tıklayın ve "Manage NuGet Packages ..." seçeneğini seçin.
- 'Gözat' sekmesini seçin ve 'IronOcr.iOS' arayın.
- 'IronOcr.iOS' paketini seçin ve 'Paket Ekle'ye tıklayın.

Diğer platformlarla ilgili sorunları önlemek için, csproj dosyasını sadece iOS platformunu hedeflerken paketi dahil edecek şekilde değiştirin. Bunu yapmak için:
- Projeniz için *.csproj dosyasına sağ tıklayın ve "Proje Dosyasını Düzenle"yi seçin.
-
Şu şekilde yeni bir
ItemGroupögesi oluşturun:<ItemGroup Condition="$(TargetFramework.Contains('ios')) == true"> <PackageReference Include="IronOcr.iOS" Version="YOUR_PACKAGE_VERSION" /> </ItemGroup><ItemGroup Condition="$(TargetFramework.Contains('ios')) == true"> <PackageReference Include="IronOcr.iOS" Version="YOUR_PACKAGE_VERSION" /> </ItemGroup>XML - 'IronOcr.iOS' PackageReference'ı, az önce oluşturduğumuz
ItemGroupiçerisine taşıyın.
Yukarıdaki adımlar, 'IronOcr.iOS' paketinin örneğin Android platformlarında kullanılmasını önleyecektir (bu amaç için yerine IronOcr.Android kurun).
"MainPage.xaml"'yi düzenleyin
XAML dosyasını bir buton ve OCR sonucunu gösterecek bir etiket göstermek için düzenleyin. Örneğin:
<?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="MAUIIronOCRiOSSample.MainPage">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Button
Text="Import File"
Clicked="ReadFileOnImport"
Grid.Row="0"
HorizontalOptions="Center"
Margin="20, 20, 20, 10"/>
<ScrollView
Grid.Row="1"
BackgroundColor="LightGray"
Padding="10"
Margin="10, 10, 10, 30">
<Label x:Name="OutputText"/>
</ScrollView>
</Grid>
</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="MAUIIronOCRiOSSample.MainPage">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Button
Text="Import File"
Clicked="ReadFileOnImport"
Grid.Row="0"
HorizontalOptions="Center"
Margin="20, 20, 20, 10"/>
<ScrollView
Grid.Row="1"
BackgroundColor="LightGray"
Padding="10"
Margin="10, 10, 10, 30">
<Label x:Name="OutputText"/>
</ScrollView>
</Grid>
</ContentPage>
"MainPage.xaml.cs"'yi düzenleyin
IronTesseract nesnesini oluşturarak başlayın. Aşağıda gösterilen kodda olduğu gibi, IronTesseract'yi bir sınıfta bir kez başlattığınızdan emin olun. Doğrudan bir yöntem içinde başlatmak etkili değildir ve beklenmedik hatalara yol açabilir. Ardından, bir dosya seçmek için FilePicker.PickAsync yöntemini kullanın. FileResult içinden okuma için bir akış açın. Yeni bir OcrInput nesnesi oluşturun ve bu nesneyi kullanarak resmi yükleyin. Resimde OCR gerçekleştirmek ve metni döndürmek için tesseract örneğini kullanın. Son olarak, çıkan metni bir etiket içinde gösterin.
Mevcut uygulama, yalnızca görüntü dosyaları ile sınırlıdır. Paket henüz PDF belgeleri ile çalışmıyor. Bunu göz önünde bulundurarak, PDF belgeleri ile ilgili herhangi bir yapılandırma devre dışı kalmalıdır.
using System;
using IronOcr;
using Microsoft.Maui.Controls;
namespace MAUIIronOCRiOSSample;
public partial class MainPage : ContentPage
{
// Initialize IronTesseract once in a class
private IronTesseract ocrTesseract = new IronTesseract();
public MainPage()
{
InitializeComponent();
// Apply license key
IronOcr.License.LicenseKey = "IRONOCR-MYLICENSE-KEY-1EF01";
}
private async void ReadFileOnImport(object sender, EventArgs e)
{
try
{
var options = new PickOptions
{
PickerTitle = "Please select a file"
};
var result = await FilePicker.PickAsync(options);
if (result != null)
{
using var stream = await result.OpenReadAsync();
// Instantiate OcrInput
using var ocrInput = new OcrInput();
// Load image stream
ocrInput.LoadImage(stream);
// Perform OCR
var ocrResult = ocrTesseract.Read(ocrInput);
OutputText.Text = ocrResult.Text;
}
}
catch (Exception ex)
{
// Handle exceptions
System.Diagnostics.Debug.WriteLine(ex);
}
}
}
using System;
using IronOcr;
using Microsoft.Maui.Controls;
namespace MAUIIronOCRiOSSample;
public partial class MainPage : ContentPage
{
// Initialize IronTesseract once in a class
private IronTesseract ocrTesseract = new IronTesseract();
public MainPage()
{
InitializeComponent();
// Apply license key
IronOcr.License.LicenseKey = "IRONOCR-MYLICENSE-KEY-1EF01";
}
private async void ReadFileOnImport(object sender, EventArgs e)
{
try
{
var options = new PickOptions
{
PickerTitle = "Please select a file"
};
var result = await FilePicker.PickAsync(options);
if (result != null)
{
using var stream = await result.OpenReadAsync();
// Instantiate OcrInput
using var ocrInput = new OcrInput();
// Load image stream
ocrInput.LoadImage(stream);
// Perform OCR
var ocrResult = ocrTesseract.Read(ocrInput);
OutputText.Text = ocrResult.Text;
}
}
catch (Exception ex)
{
// Handle exceptions
System.Diagnostics.Debug.WriteLine(ex);
}
}
}
Imports System
Imports IronOcr
Imports Microsoft.Maui.Controls
Namespace MAUIIronOCRiOSSample
Partial Public Class MainPage
Inherits ContentPage
' Initialize IronTesseract once in a class
Private ocrTesseract As New IronTesseract()
Public Sub New()
InitializeComponent()
' Apply license key
IronOcr.License.LicenseKey = "IRONOCR-MYLICENSE-KEY-1EF01"
End Sub
Private Async Sub ReadFileOnImport(ByVal sender As Object, ByVal e As EventArgs)
Try
Dim options = New PickOptions With {.PickerTitle = "Please select a file"}
Dim result = Await FilePicker.PickAsync(options)
If result IsNot Nothing Then
Dim stream = Await result.OpenReadAsync()
' Instantiate OcrInput
Dim ocrInput As New OcrInput()
' Load image stream
ocrInput.LoadImage(stream)
' Perform OCR
Dim ocrResult = ocrTesseract.Read(ocrInput)
OutputText.Text = ocrResult.Text
End If
Catch ex As Exception
' Handle exceptions
System.Diagnostics.Debug.WriteLine(ex)
End Try
End Sub
End Class
End Namespace
Son olarak, derleme hedefini iOS Simülatör olarak değiştirin ve projeyi çalıştırın.
Projeyi Çalıştır
Bu, projeyi nasıl çalıştıracağınızı ve OCR işlemi nasıl yapacağınızı gösterecektir.
.NET MAUI Uygulama Projesini İndirin
Bu rehber için tamamlanmış kodu indirebilirsiniz. Açık bir Visual Studio'da bir .NET MAUI Uygulama projesi olarak açabileceğiniz sıkıştırılmış bir dosya ile birlikte gelir.
IronOcr.iOS'u Avalonia'da Kullanma
Avalonia'da IronOcr.iOS kurulumu, MAUI'ye benzer, ancak bir önemli farkla: en son .NET SDK sürümünün yanı sıra IronOcr.iOS'un başarıyla çalışması için .NET SDK 8.0.101 de yüklü olmalıdır. Sonrasında, yukarıda açıklandığı gibi aynı kurulumla Avalonia projesinde IronOcr.iOS kullanılabilir.
Android'de OCR gerçekleştirmek istiyorsanız, daha fazla bilgi edinmek için şu makaleye gidin: ".NET MAUI'de Android'de OCR Nasıl Gerçekleştirilir"
Sıkça Sorulan Sorular
iOS için bir .NET MAUI uygulamasına OCR işlevselliğini nasıl entegre ederim?
IronOCR.iOS paketini kullanarak iOS için bir .NET MAUI uygulamasına OCR işlevselliğini entegre edebilirsiniz. Visual Studio'da NuGet üzerinden yükleyin ve proje dosyanızı iOS platformu için paketi koşullu olarak dahil edecek şekilde değiştirin. Görüntüleri işlemek ve metin çıkarmak için IronTesseract'ı kullanın.
IronOCR.iOS paketi, PDF belge işleme için kullanılabilir mi?
Hayır, IronOCR.iOS paketi şu anda sadece görüntü dosyalarını işleyebilir ve PDF belgelerini desteklemez. Projenizde PDF ile ilgili yapılandırmaların devre dışı olduğundan emin olun.
.NET MAUI kullanarak bir iOS uygulaması için OCR kurulumunda hangi adımlar vardır?
Bir iOS uygulaması için .NET MAUI kullanarak OCR kurmak, NuGet üzerinden IronOcr.iOS paketini indirmeyi, proje dosyanızı iOS için paketi koşullu olarak dahil edecek şekilde değiştirmeyi ve MainPage.xaml ve MainPage.xaml.cs dosyalarınızı kullanıcı arayüzü oluşturmak ve OCR işlemlerini yönetmek için düzenlemeyi içerir.
IronOCR'yi Avalonia projelerinde kullanmak için hangi ek gereksinimler vardır?
IronOCR'yi Avalonia projelerinde kullanırken, en son .NET SDK sürümünü ve ayrıca .NET SDK 8.0.101'i yüklediğinizden emin olmalısınız. Bu kurulum MAUI'ye benzer, ancak bu ek SDK'yı gerektirir.
.NET MAUI projesinde IronOCR kullanarak bir resimde nasıl OCR yapabilirim?
.NET MAUI projesinde IronTesseract nesnesini kullanarak bir resimde OCR yapın. Görüntü dosyasını seçmek için FilePicker.PickAsync kullanın, bir OcrInput nesnesine yükleyin ve ardından resmi okumak ve metni çıkarmak için IronTesseract'ı kullanın.
iOS üzerine .NET MAUI kullanarak OCR uygulamak için örnek bir proje var mı?
Evet, Iron Software web sitesinden IronOCR.iOS kullanarak .NET MAUI örnek projesi indirebilirsiniz. Bu örnek proje, geliştirme sürecinizi hızlandırmak için Visual Studio'da açılabilen ziplenmiş bir dosya olarak sunulmaktadır.

