<meta http-equiv="content-language" content="fi" />
<h1>Suomalainen OCR C# ja .NET</h1>
<h6> Tämän asiakirjan muut versiot:</h6>
<ul>
<li> <a rel='alternate' hreflang='en' href="/csharp/ocr/languages/finnish/">Englanti (This Page in English)</a></li>
<li> <a href="/csharp/ocr/languages/">Lisää Languages</a></li>
</ul>
<p> IronOCR on C#-ohjelmistokomponentti, jonka avulla .NET-kooderit voivat lukea tekstiä kuvista ja PDF-dokumenteista
126 kielellä, mukaan lukien suomi.</p>
<p> Se on edistyksellinen Tesseract-haarukka, joka on rakennettu yksinomaan .NET-kehittäjille ja joka ylittää
säännöllisesti muita Tesseract-moottoreita sekä nopeuden että tarkkuuden suhteen.</p>
<h2> IronOcr. Kielet -suomi</h2>
<p> Tämä paketti sisältää 46 OCR-kieltä .NET-verkkotunnukselle:</p>
<ul>
<li> Suomalainen</li>
<li> Suomen paras</li>
<li> FinnishNopea</li>
</ul>
<h2>Ladata</h2>
<p> Suomen kielipaketti <span style='white-space:default'>[suomi]</span> <br/> * Download as <a class='languages-dll'
href='/csharp/ocr/packages/language-packs/Finnish.ocrdata.zip'>Postinumero <i class='fas fa-download'></i></a><br/> *
Install with <a target='_blank' class='languages-nuget'
href="https://www.nuget.org/packages/IronOcr.Languages.Finnish/">https://www.nuget.org/packages/IronOcr.Languages.Finnish/</a>
NuGet<i class='nuget-icon'></i></p>
<h2>Asennus</h2>
<p> Ensimmäinen asia, joka meidän on tehtävä, on asentaa <strong>suomalainen</strong> OCR-pakettimme .NET-projektiisi.</p>
<p> <code>PM> Install-Package IronOcr.Languages.Finnish</code></p>
<h2>Koodiesimerkki</h2>
<p> Tämä C#-koodiesimerkki lukee suomen kielen kuvan tai PDF-asiakirjan.</p>
```C#
// This C# example shows how to use IronOCR to read Finnish text from an image.
using IronOCR;
var Ocr = new IronTesseract();
// Set the OCR language to Finnish
Ocr.Language = OcrLanguage.Finnish;
// Load the image and perform OCR
using (var Input = new OcrInput(@"images\Finnish.png"))
{
var Result = Ocr.Read(Input);
var AllText = Result.Text;
}
```
<h2>Miksi valita IronOCR?</h2>
<p> IronOCR on helposti asennettava, täydellinen ja hyvin dokumentoitu .NET-ohjelmistokirjasto.</p>
<p> Valitse IronOCR saavuttaaksesi <strong>99,8% + OCR-tarkkuuden</strong> käyttämättä ulkoisia verkkopalveluja,
jatkuvia maksuja tai lähettämättä luottamuksellisia asiakirjoja Internetin kautta.</p>
<h4> Miksi C#-kehittäjät valitsevat IronOCR: n Vanilla Tesseractin sijaan:</h4>
<ul>
<li> Asenna yhtenä DLL tai NuGet</li>
<li> Sisältää Tesseract 5, 4 ja 3 -moottorit laatikosta.</li>
<li> Tarkkuus <strong>99,8%</strong> ylittää merkittävästi tavallisen Tesseractin.</li>
<li> Räjähtävä nopeus ja monisäikeisyys</li>
<li> MVC, WebApp, työpöytä, konsoli ja palvelinsovellus yhteensopiva</li>
<li> Ei Exes- tai C ++ -koodia</li>
<li> Täysi PDF OCR -tuki</li>
<li> Suorita OCR lähes mille tahansa kuvatiedostolle tai PDF: lle</li>
<li> Täysi .NET Core, Standard ja FrameWork -tuki</li>
<li> Ota käyttöön Windows, Mac, Linux, Azure, Docker, Lambda, AWS</li>
<li> Lue viivakoodit ja QR-koodit</li>
<li> Vie OCR XHTML: ksi</li>
<li> Vie tekstintunnistus haettaviin PDF-tiedostoihin</li>
<li> Monisäikeinen tuki</li>
<li> 126 kansainvälistä kieltä, joita kaikkia hallitaan NuGet- tai OcrData-tiedostojen kautta</li>
<li> Pura kuvat, koordinaatit, tilastot ja fontit. Ei vain tekstiä.</li>
<li> Voidaan käyttää Tesseract OCR -toiminnon jakamiseen kaupallisissa ja omistetuissa sovelluksissa.</li>
</ul>
<p> <em>Rauta-OCR loistaa työskenneltäessä tosielämän kuvien ja epätäydellisten asiakirjojen, kuten valokuvien, tai
pienikokoisten skannausten kanssa, joissa voi olla digitaalista kohinaa tai puutteita.</em></p>
<p> Muut .NET-alustan <a href="/csharp/ocr/use-case/free-ocr-csharp/">ilmaiset OCR-</a> kirjastot, kuten muut .net
tesseract -sovellusliittymät ja verkkopalvelut, eivät toimi niin hyvin näissä todellisen maailman käyttötapauksissa.</p>
<h2>OCR Tesseract 5:llä - Aloita koodaus C#:ssä</h2>
<p> Alla oleva koodinäyte osoittaa, kuinka helppoa on lukea tekstiä kuvasta käyttämällä C# tai VB.NET.</p>
<h3>One Liner</h3>
```C#
// A one-liner example of reading text from an image using IronOCR
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
```
<h3>Konfiguroitava Hello World</h3>
```C#
// Configurable Hello World example using IronOCR
// PM> `Install-Package IronOcr.Languages.Finnish`
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.AddImage("images/sample.jpeg");
// You can add any number of images
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>C# PDF OCR</h3>
<p> Samaa lähestymistapaa voidaan käyttää samalla tavoin poimia tekstiä mistä tahansa PDF-dokumentista.</p>
```C#
// Extract text from a PDF document using IronOCR
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.AddPdf("example.pdf", "password");
// We can also select specific PDF page numbers for OCR
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 page for each PDF page
}
```
<h3>OCR monisivuisille TIFF-tiedostoille</h3>
<p> OCR TIFF-tiedostomuodon lukeminen, mukaan lukien monisivuiset asiakirjat. TIFF voidaan myös muuntaa suoraan
PDF-tiedostoksi, jossa on haettavaa tekstiä.</p>
```C#
// Read a multi-page TIFF file using IronOCR
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.AddMultiFrameTiff("multi-frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>Viivakoodit ja QR</h3>
<p> IronOCR: n ainutlaatuinen piirre on se, että se voi lukea viivakoodeja ja QR-koodeja asiakirjoista, kun se etsii
tekstiä. <code>OcrResult.OcrBarcode</code> luokan <code>OcrResult.OcrBarcode</code> antavat kehittäjälle
yksityiskohtaisia tietoja kustakin skannatusta viivakoodista.</p>
```C#
// Detect barcodes and QR codes using IronOCR
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;
using (var Input = new OcrInput())
{
Input.AddImage("img/Barcode.png");
var Result = Ocr.Read(Input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// Type and location properties are also exposed
}
}
```
<h3>OCR tietyillä kuvialueilla</h3>
<p> Kaikki IronOCR: n skannaus- ja lukumenetelmät antavat mahdollisuuden määrittää tarkalleen, mistä sivun tai sivuista
haluamme lukea tekstiä. Tämä on erittäin hyödyllistä, kun tarkastelemme standardoituja lomakkeita, ja se voi säästää
paljon aikaa ja parantaa tehokkuutta.</p>
<p> Raja-alueiden käyttämiseksi meidän on lisättävä <code>System.Drawing</code> järjestelmäviitta, jotta voimme käyttää
<code>System.Drawing.Rectangle</code> objektia.</p>
```C#
// Specify a rectangular area in an image for OCR
using IronOCR;
using System.Drawing; // Required for Rectangle
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
// Define the area to OCR in pixels
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
Input.Add("document.png", ContentArea);
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>OCR heikkolaatuisille skannauksille</h3>
<p> IronOCR <code>OcrInput</code> -luokka voi korjata skannaukset, joita normaali Tesseract ei osaa lukea.</p>
```C#
// Improve OCR performance on low-quality scans with IronOCR
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // Fixes digital noise and low-quality scanning
Input.Deskew(); // Corrects image rotation and perspective
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>Vie OCR-tulokset haettavana PDF-tiedostona</h3>
<p> Kuva PDF-tiedostoon kopioitavilla tekstijonoilla. Hakukoneet ja tietokannat voivat indeksoida ne.</p>
```C#
// Export an image with OCR text to a searchable PDF
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.Title = "Quarterly Report";
Input.AddImage("image1.jpeg");
Input.AddImage("image2.png");
Input.AddImage("image3.gif");
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
```
<h3>TIFF haettavaksi PDF-muunnokseksi</h3>
<p> Muunna TIFF-asiakirja (tai mikä tahansa kuvatiedostoryhmä) suoraan haettavaksi PDF-tiedostoksi, jonka intranet,
verkkosivusto ja google-hakukoneet voivat indeksoida.</p>
```C#
// Convert a TIFF file directly to a searchable PDF
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.AddMultiFrameTiff("example.tiff");
var Result = Ocr.Read(Input).SaveAsSearchablePdf("searchable.pdf");
}
```
<h3>Vie OCR-tulokset HTML-muodossa</h3>
<p> OCR-kuvan XHTML-muunnos.</p>
```C#
// Convert OCR results to an HTML file (XHTML)
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.Title = "Html Title";
Input.AddImage("image1.jpeg");
var Result = Ocr.Read(Input);
Result.SaveAsHocrFile("results.html");
}
```
<h2>OCR-kuvanparannussuodattimet</h2>
<p> IronOCR tarjoaa ainutlaatuiset suodattimet <code>OcrInput</code> objekteille OCR-suorituskyvyn parantamiseksi.</p>
<h3>Kuvanparannuskoodiesimerkki</h3>
<p> Tekee OCR-tulokuvista paremman laadun parempien ja nopeampien OCR-tulosten tuottamiseksi.</p>
```C#
// Improve image quality for better OCR results
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // Reduces digital noise and improves image quality
Input.Deskew(); // Fixes rotation and perspective of the image
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>Luettelo OCR-kuvasuodattimista</h3>
<p> IronOCR: ään sisäänrakennetut tulosuodattimet OCR-suorituskyvyn parantamiseksi ovat:</p>
<ul>
<li> <strong>OcrInput.Rotate (kaksinkertainen aste)</strong> - <strong>Kierrä</strong> kuvia useita astetta
myötäpäivään. Käytä vastapäivään negatiivisia lukuja.</li>
<li> <strong>OcrInput.Binarize ()</strong> - Tämä kuvasuodatin muuttaa jokaisen pikselin mustaksi tai valkoiseksi
ilman keskipistettä. Voi parantaa OCR-suorituskykyä, kun tekstin ja taustan kontrasti on hyvin pieni.</li>
<li> <strong>OcrInput.ToGrayScale ()</strong> - Tämä kuvasuodatin muuttaa jokaisen pikselin harmaasävyiseksi. Ei
todennäköisesti paranna OCR-tarkkuutta, mutta voi parantaa nopeutta</li>
<li> <strong>OcrInput.Contrast ()</strong> - Lisää kontrastia automaattisesti. Tämä suodatin parantaa usein
tekstintunnistuksen nopeutta ja tarkkuutta pienikontrastisissa skannauksissa.</li>
<li> <strong>OcrInput.DeNoise ()</strong> - Poistaa digitaalisen kohinan. Tätä suodatinta tulisi käyttää vain
siellä, missä melua odotetaan.</li>
<li> <strong>OcrInput.Invert ()</strong> - Kääntää kaikki värit. Esimerkiksi valkoisesta tulee musta: mustasta tulee
valkoinen.</li>
<li> <strong>OcrInput.Dilate ()</strong> - Edistynyt morfologia. <em>Laajennus</em> lisää pikseleitä kuvan kohteiden
rajoihin. Eroden vastakohta</li>
<li> <strong>OcrInput.Erode ()</strong> - Edistynyt morfologia. <em>Eroosio</em> poistaa pikselit objektirajoilta</li>
<li> <strong>OcrInput.Deskew ()</strong> - <strong>Kierrä</strong> kuvaa niin, että se on oikea tie ylöspäin ja
kohtisuorassa. Tämä on erittäin hyödyllistä OCR: lle, koska Tesseract-toleranssi vinossa skannauksessa voi olla
jopa 5 astetta.</li>
<li> <strong>OcrInput.DeepCleanBackgroundNoise ()</strong> - voimakas taustamelun poisto. Käytä tätä suodatinta
vain, jos tiedetään äärimmäisen asiakirjan taustamelu, koska tämä suodatin saattaa myös vähentää puhtaiden
asiakirjojen OCR-tarkkuutta ja on erittäin prosessorikallis.</li>
<li> <strong>OcrInput.EnhanceResolution</strong> - parantaa heikkolaatuisten kuvien tarkkuutta. Suodatinta ei
tarvita usein, koska <em>OcrInput.MinimumDPI</em> ja <em>OcrInput.TargetDPI</em> saavat automaattisesti kiinni
ja ratkaisevat matalan resoluution tulot.</li>
</ul>
<p> <strong>PuhdasTaustaMelu.</strong> Tämä on aikaavievä asetus; se sallii kuitenkin kirjaston puhdistaa digitaalisen
kohinan, paperin rypistykset ja muut puutteet digitaalisessa kuvassa, mikä muuten tekisi siitä kyvyttömän lukemaan
muissa OCR-kirjastoissa.</p>
<p> <strong>EnhanceContrast</strong> on asetus, joka saa IronOCR: n lisäämään tekstin kontrastia automaattisesti kuvan
taustaa vasten, lisäämällä OCR: n tarkkuutta ja yleisesti lisäämällä OCR: n suorituskykyä ja nopeutta.</p>
<p> <strong>EnhanceResolution</strong> on asetus, joka tunnistaa automaattisesti pieniresoluutioiset kuvat (jotka ovat
alle 275 dpi), <strong>skaalaa</strong> kuvan automaattisesti ja terävöittää sitten kaiken tekstin, jotta
OCR-kirjasto voi lukea sen täydellisesti. Vaikka tämä toimenpide on sinänsä aikaa vievää, se yleensä vähentää kuvan
OCR-toiminnon kokonaisaikaa.</p>
<p> <strong>Language</strong> IronOCR tukee 22 kansainvälistä kielipakettia, ja kieliasetuksella voidaan valita yksi
tai useampi OCR-toimintoon käytettävä kieli.</p>
<p> <strong>Strategia</strong> IronOCR tukee kahta strategiaa. Voimme joko valita asiakirjan nopean ja vähemmän tarkan
skannauksen tai käyttää edistynyttä strategiaa, joka käyttää joitain tekoälymalleja OCR-tekstin tarkkuuden
parantamiseksi automaattisesti tarkastelemalla sanojen tilastollista suhdetta lauseeseen .</p>
<p> <strong>ColorSpace</strong> on asetus, jolla voimme valita tekstintunnistuksen harmaasävyinä tai väreinä. Harmaasävy
on yleensä paras vaihtoehto. Joskus, kun tekstit tai taustat ovat samankaltaisia, mutta hyvin erivärisiä,
väriväritila antaa parempia tuloksia.</p>
<p> <strong>DetectWhiteTextOnDarkBackgrounds.</strong> Yleensä kaikki OCR-kirjastot odottavat näkevänsä mustaa tekstiä
valkoisella taustalla. Tämän asetuksen avulla IronOCR tunnistaa negatiiviset tai tummat sivut valkoisella tekstillä
ja lukee ne.</p>
<p> <strong>InputImageType.</strong> Tämän asetuksen avulla kehittäjä voi ohjata OCR-kirjastoa tarkastelemaan onko se
kokonaista asiakirjaa vai katkelmaa, kuten kuvakaappausta.</p>
<p> <strong>RotateAndStraighten</strong> on edistynyt asetus, joka antaa IronOCR: lle ainutlaatuisen kyvyn lukea
asiakirjoja, jotka eivät ole vain käännettyjä, mutta ehkä perspektiiviä, kuten valokuvia tekstidokumenteista.</p>
<p> <strong>ReadBarcodes</strong> on hyödyllinen ominaisuus, jonka avulla IronOCR voi lukea viivakoodit ja QR-koodit
sivuilta automaattisesti lukiessaan tekstiä lisäämättä suurta lisäaikaa.</p>
<p> <strong>Värisyvyys.</strong> Tämä asetus määrittää, kuinka monta bittiä pikseliä kohden OCR-kirjasto käyttää värin
syvyyden määrittämiseen. Suurempi värisyvyys voi lisätä OCR-laatua, mutta pidentää myös OCR-toiminnon suorittamiseen
tarvittavaa aikaa.</p>
<h2>126 kielipakettia</h2>
<p> IronOCR tukee <strong>126 kansainvälistä kieltä</strong> kielipakettien kautta, jotka jaetaan DLL-tiedostoina,
jotka voidaan <a href="/csharp/ocr/languages/">ladata tältä verkkosivustolta</a> tai myös <a
href="https://www.nuget.org/packages?q=IronOcr.Languages">NuGet Package Managerista</a>.</p>
<p> Kieliä ovat saksa, ranska, englanti, kiina, japani ja monet muut. Erikoiskielipaketteja on olemassa MRZ-passeille,
MICR-tarkastuksille, taloudellisille tiedoille, rekisterikilville ja monille muille. Voit myös käyttää mitä tahansa
tesseract ".traineddata" -tiedostoa - mukaan lukien itse luomasi tiedostot.</p>
<h3>Kieliesimerkki</h3>
<p> Muiden OCR-kielten käyttäminen.</p>
```C#
// Using IronOCR with Arabic language support
// PM> Install IronOcr.Languages.Arabic
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;
using (var Input = new OcrInput())
{
Input.AddImage("img/arabic.gif");
// Add image filters if necessary
// IronTesseract can read what conventional Tesseract cannot, even if the input is of very low quality
var Result = Ocr.Read(Input);
// Console can't easily display Arabic text on Windows, so save it to file instead.
Result.SaveAsTextFile("arabic.txt");
}
```
<h3>Esimerkki monikielisestä</h3>
<p> On myös mahdollista käyttää tekstintunnistusta useilla kielillä samanaikaisesti. Tämä voi todella auttaa saamaan
englanninkielisiä metatietoja ja URL-osoitteita Unicode-asiakirjoihin.</p>
```C#
// Using IronOCR for multi-language recognition
// PM> Install IronOcr.Languages.ChineseSimplified
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Finnish);
// We can add any number of languages
using (var Input = new OcrInput())
{
Input.Add("multi-language.pdf");
var Result = Ocr.Read(Input);
Result.SaveAsTextFile("results.txt");
}
```
<h2>Yksityiskohtaiset OCR-tulokset-objektit</h2>
<p> IronOCR palauttaa OCR-tulosobjektin jokaiselle OCR-toiminnolle. Yleensä kehittäjät käyttävät vain tämän objektin
tekstiominaisuutta saadakseen tekstin skannatuksi kuvasta. OCR-tulosten DOM on kuitenkin paljon edistyneempi kuin
tämä.</p>
```C#
// Detailed OCR results using IronOCR
using IronOCR;
using System.Drawing; // Required assembly reference
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; // Important
using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Explore the extensive, detailed API for:
// - Pages, Blocks, Paragraphs, Lines, Words, Characters
// - Image exports, font coordinates, statistics
}
```
<h2>Esitys</h2>
<p> IronOCR toimii laatikosta ilman, että tarvitsee virittää tai muokata voimakkaasti tulokuvia.</p>
<p> Nopeus on loistava: IronOcr.2020 + on jopa 10 kertaa nopeampi ja tekee yli 250% vähemmän virheitä kuin aiemmat
koontiversiot.</p>
<h2>Lisätietoja</h2>
<p> Jos haluat lisätietoja OCR: stä C#, VB, F# tai millä tahansa muulla .NET-kielellä, <a
href="/csharp/ocr/tutorials/how-to-read-text-from-an-image-in-csharp-net/">lue yhteisön oppaat</a>, jotka
antavat todellisia esimerkkejä siitä, miten IronOCR: ää voidaan käyttää, ja ne saattavat näyttää vivahteita siitä,
miten saada parhaansa irti tämä kirjasto.</p>
<p> Täydellinen <a href="/csharp/ocr/object-reference/api/">objektiviite .NET-kehittäjille</a> on myös saatavana.</p>
IronOCR on C#-ohjelmistokomponentti, jonka avulla .NET-kooderit voivat lukea tekstiä kuvista ja PDF-dokumenteista
126 kielellä, mukaan lukien suomi.
Se on edistyksellinen Tesseract-haarukka, joka on rakennettu yksinomaan .NET-kehittäjille ja joka ylittää
säännöllisesti muita Tesseract-moottoreita sekä nopeuden että tarkkuuden suhteen.
IronOcr. Kielet -suomi
Tämä paketti sisältää 46 OCR-kieltä .NET-verkkotunnukselle:
Ensimmäinen asia, joka meidän on tehtävä, on asentaa suomalainen OCR-pakettimme .NET-projektiisi.
PM> Install-Package IronOcr.Languages.Finnish
Koodiesimerkki
Tämä C#-koodiesimerkki lukee suomen kielen kuvan tai PDF-asiakirjan.
// This C# example shows how to use IronOCR to read Finnish text from an image.using IronOCR;varOcr = new IronTesseract();// Set the OCR language to FinnishOcr.Language = OcrLanguage.Finnish;// Load the image and perform OCRusing (varInput = new OcrInput(@"images\Finnish.png")){ varResult = Ocr.Read(Input); varAllText = Result.Text;}
// This C# example shows how to use IronOCR to read Finnish text from an image.
using IronOCR;
var Ocr = new IronTesseract();
// Set the OCR language to Finnish
Ocr.Language = OcrLanguage.Finnish;
// Load the image and perform OCR
using (var Input = new OcrInput(@"images\Finnish.png"))
{
var Result = Ocr.Read(Input);
var AllText = Result.Text;
}
C#
Miksi valita IronOCR?
IronOCR on helposti asennettava, täydellinen ja hyvin dokumentoitu .NET-ohjelmistokirjasto.
Valitse IronOCR saavuttaaksesi 99,8% + OCR-tarkkuuden käyttämättä ulkoisia verkkopalveluja,
jatkuvia maksuja tai lähettämättä luottamuksellisia asiakirjoja Internetin kautta.
Miksi C#-kehittäjät valitsevat IronOCR: n Vanilla Tesseractin sijaan:
Asenna yhtenä DLL tai NuGet
Sisältää Tesseract 5, 4 ja 3 -moottorit laatikosta.
Tarkkuus 99,8% ylittää merkittävästi tavallisen Tesseractin.
Räjähtävä nopeus ja monisäikeisyys
MVC, WebApp, työpöytä, konsoli ja palvelinsovellus yhteensopiva
Ei Exes- tai C ++ -koodia
Täysi PDF OCR -tuki
Suorita OCR lähes mille tahansa kuvatiedostolle tai PDF: lle
Täysi .NET Core, Standard ja FrameWork -tuki
Ota käyttöön Windows, Mac, Linux, Azure, Docker, Lambda, AWS
Lue viivakoodit ja QR-koodit
Vie OCR XHTML: ksi
Vie tekstintunnistus haettaviin PDF-tiedostoihin
Monisäikeinen tuki
126 kansainvälistä kieltä, joita kaikkia hallitaan NuGet- tai OcrData-tiedostojen kautta
Pura kuvat, koordinaatit, tilastot ja fontit. Ei vain tekstiä.
Voidaan käyttää Tesseract OCR -toiminnon jakamiseen kaupallisissa ja omistetuissa sovelluksissa.
Rauta-OCR loistaa työskenneltäessä tosielämän kuvien ja epätäydellisten asiakirjojen, kuten valokuvien, tai
pienikokoisten skannausten kanssa, joissa voi olla digitaalista kohinaa tai puutteita.
Muut .NET-alustan ilmaiset OCR- kirjastot, kuten muut .net
tesseract -sovellusliittymät ja verkkopalvelut, eivät toimi niin hyvin näissä todellisen maailman käyttötapauksissa.
OCR Tesseract 5:llä - Aloita koodaus C#:ssä
Alla oleva koodinäyte osoittaa, kuinka helppoa on lukea tekstiä kuvasta käyttämällä C# tai VB.NET.
One Liner
// A one-liner example of reading text from an image using IronOCRstringText = new IronTesseract().Read(@"img\Screenshot.png").Text;
// A one-liner example of reading text from an image using IronOCR
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
' A one-liner example of reading text from an image using IronOCRDimTextAsString = (New IronTesseract()).Read("img\Screenshot.png").Text
' A one-liner example of reading text from an image using IronOCR
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
Konfiguroitava Hello World
// Configurable Hello World example using IronOCR// PM> `Install-Package IronOcr.Languages.Finnish`using IronOCR;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Finnish;using (varInput = new OcrInput()){Input.AddImage("images/sample.jpeg"); // You can add any number of images varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
// Configurable Hello World example using IronOCR
// PM> `Install-Package IronOcr.Languages.Finnish`
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.AddImage("images/sample.jpeg");
// You can add any number of images
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
C#
C# PDF OCR
Samaa lähestymistapaa voidaan käyttää samalla tavoin poimia tekstiä mistä tahansa PDF-dokumentista.
// Extract text from a PDF document using IronOCRvarOcr = new IronTesseract();Ocr.Language = OcrLanguage.Finnish;using (varInput = new OcrInput()){Input.AddPdf("example.pdf", "password"); // We can also select specific PDF page numbers for OCR varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);Console.WriteLine($"{Result.Pages.Count()} Pages"); // 1 page for each PDF page}
// Extract text from a PDF document using IronOCR
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.AddPdf("example.pdf", "password");
// We can also select specific PDF page numbers for OCR
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 page for each PDF page
}
' Extract text from a PDF document using IronOCRDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.FinnishUsingInput = New OcrInput()Input.AddPdf("example.pdf", "password") ' We can also select specific PDF page numbers for OCR DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)Console.WriteLine($"{Result.Pages.Count()} Pages") ' 1 page for each PDF pageEndUsing
' Extract text from a PDF document using IronOCR
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Finnish
Using Input = New OcrInput()
Input.AddPdf("example.pdf", "password")
' We can also select specific PDF page numbers for OCR
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' 1 page for each PDF page
End Using
OCR monisivuisille TIFF-tiedostoille
OCR TIFF-tiedostomuodon lukeminen, mukaan lukien monisivuiset asiakirjat. TIFF voidaan myös muuntaa suoraan
PDF-tiedostoksi, jossa on haettavaa tekstiä.
// Read a multi-page TIFF file using IronOCRusing IronOCR;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Finnish;using (varInput = new OcrInput()){Input.AddMultiFrameTiff("multi-frame.tiff"); varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
// Read a multi-page TIFF file using IronOCR
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.AddMultiFrameTiff("multi-frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
C#
Viivakoodit ja QR
IronOCR: n ainutlaatuinen piirre on se, että se voi lukea viivakoodeja ja QR-koodeja asiakirjoista, kun se etsii
tekstiä. OcrResult.OcrBarcode luokan OcrResult.OcrBarcode antavat kehittäjälle
yksityiskohtaisia tietoja kustakin skannatusta viivakoodista.
// Detect barcodes and QR codes using IronOCRusing IronOCR;varOcr = new IronTesseract();Ocr.Configuration.ReadBarCodes = true;using (varInput = new OcrInput()){Input.AddImage("img/Barcode.png"); varResult = Ocr.Read(Input); foreach (varBarcodeinResult.Barcodes) {Console.WriteLine(Barcode.Value); // Type and location properties are also exposed }}
// Detect barcodes and QR codes using IronOCR
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;
using (var Input = new OcrInput())
{
Input.AddImage("img/Barcode.png");
var Result = Ocr.Read(Input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// Type and location properties are also exposed
}
}
C#
OCR tietyillä kuvialueilla
Kaikki IronOCR: n skannaus- ja lukumenetelmät antavat mahdollisuuden määrittää tarkalleen, mistä sivun tai sivuista
haluamme lukea tekstiä. Tämä on erittäin hyödyllistä, kun tarkastelemme standardoituja lomakkeita, ja se voi säästää
paljon aikaa ja parantaa tehokkuutta.
Raja-alueiden käyttämiseksi meidän on lisättävä System.Drawing järjestelmäviitta, jotta voimme käyttää
System.Drawing.Rectangle objektia.
// Specify a rectangular area in an image for OCRusing IronOCR;using System.Drawing; // Required for RectanglevarOcr = new IronTesseract();Ocr.Language = OcrLanguage.Finnish;using (varInput = new OcrInput()){ // Define the area to OCR in pixels varContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };Input.Add("document.png", ContentArea); varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
// Specify a rectangular area in an image for OCR
using IronOCR;
using System.Drawing; // Required for Rectangle
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
// Define the area to OCR in pixels
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
Input.Add("document.png", ContentArea);
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
C#
OCR heikkolaatuisille skannauksille
IronOCR OcrInput -luokka voi korjata skannaukset, joita normaali Tesseract ei osaa lukea.
// Improve OCR performance on low-quality scans with IronOCRusing IronOCR;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Finnish;using (varInput = new OcrInput(@"img\Potter.LowQuality.tiff")){Input.DeNoise(); // Fixes digital noise and low-quality scanningInput.Deskew(); // Corrects image rotation and perspective varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
// Improve OCR performance on low-quality scans with IronOCR
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // Fixes digital noise and low-quality scanning
Input.Deskew(); // Corrects image rotation and perspective
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
C#
Vie OCR-tulokset haettavana PDF-tiedostona
Kuva PDF-tiedostoon kopioitavilla tekstijonoilla. Hakukoneet ja tietokannat voivat indeksoida ne.
// Export an image with OCR text to a searchable PDFusing IronOCR;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Finnish;using (varInput = new OcrInput()){Input.Title = "Quarterly Report";Input.AddImage("image1.jpeg");Input.AddImage("image2.png");Input.AddImage("image3.gif"); varResult = Ocr.Read(Input);Result.SaveAsSearchablePdf("searchable.pdf");}
// Export an image with OCR text to a searchable PDF
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.Title = "Quarterly Report";
Input.AddImage("image1.jpeg");
Input.AddImage("image2.png");
Input.AddImage("image3.gif");
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
C#
TIFF haettavaksi PDF-muunnokseksi
Muunna TIFF-asiakirja (tai mikä tahansa kuvatiedostoryhmä) suoraan haettavaksi PDF-tiedostoksi, jonka intranet,
verkkosivusto ja google-hakukoneet voivat indeksoida.
// Convert a TIFF file directly to a searchable PDFusing IronOCR;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Finnish;using (varInput = new OcrInput()){Input.AddMultiFrameTiff("example.tiff"); varResult = Ocr.Read(Input).SaveAsSearchablePdf("searchable.pdf");}
// Convert a TIFF file directly to a searchable PDF
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.AddMultiFrameTiff("example.tiff");
var Result = Ocr.Read(Input).SaveAsSearchablePdf("searchable.pdf");
}
C#
Vie OCR-tulokset HTML-muodossa
OCR-kuvan XHTML-muunnos.
// Convert OCR results to an HTML file (XHTML)using IronOCR;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Finnish;using (varInput = new OcrInput()){Input.Title = "Html Title";Input.AddImage("image1.jpeg"); varResult = Ocr.Read(Input);Result.SaveAsHocrFile("results.html");}
// Convert OCR results to an HTML file (XHTML)
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput())
{
Input.Title = "Html Title";
Input.AddImage("image1.jpeg");
var Result = Ocr.Read(Input);
Result.SaveAsHocrFile("results.html");
}
C#
OCR-kuvanparannussuodattimet
IronOCR tarjoaa ainutlaatuiset suodattimet OcrInput objekteille OCR-suorituskyvyn parantamiseksi.
Kuvanparannuskoodiesimerkki
Tekee OCR-tulokuvista paremman laadun parempien ja nopeampien OCR-tulosten tuottamiseksi.
// Improve image quality for better OCR resultsusing IronOCR;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Finnish;using (varInput = new OcrInput(@"LowQuality.jpeg")){Input.DeNoise(); // Reduces digital noise and improves image qualityInput.Deskew(); // Fixes rotation and perspective of the image varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
// Improve image quality for better OCR results
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // Reduces digital noise and improves image quality
Input.Deskew(); // Fixes rotation and perspective of the image
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
OcrInput.Rotate (kaksinkertainen aste) - Kierrä kuvia useita astetta
myötäpäivään. Käytä vastapäivään negatiivisia lukuja.
OcrInput.Binarize () - Tämä kuvasuodatin muuttaa jokaisen pikselin mustaksi tai valkoiseksi
ilman keskipistettä. Voi parantaa OCR-suorituskykyä, kun tekstin ja taustan kontrasti on hyvin pieni.
OcrInput.ToGrayScale () - Tämä kuvasuodatin muuttaa jokaisen pikselin harmaasävyiseksi. Ei
todennäköisesti paranna OCR-tarkkuutta, mutta voi parantaa nopeutta
OcrInput.Contrast () - Lisää kontrastia automaattisesti. Tämä suodatin parantaa usein
tekstintunnistuksen nopeutta ja tarkkuutta pienikontrastisissa skannauksissa.
OcrInput.DeNoise () - Poistaa digitaalisen kohinan. Tätä suodatinta tulisi käyttää vain
siellä, missä melua odotetaan.
OcrInput.Invert () - Kääntää kaikki värit. Esimerkiksi valkoisesta tulee musta: mustasta tulee
valkoinen.
OcrInput.Dilate () - Edistynyt morfologia. Laajennus lisää pikseleitä kuvan kohteiden
rajoihin. Eroden vastakohta
OcrInput.Erode () - Edistynyt morfologia. Eroosio poistaa pikselit objektirajoilta
OcrInput.Deskew () - Kierrä kuvaa niin, että se on oikea tie ylöspäin ja
kohtisuorassa. Tämä on erittäin hyödyllistä OCR: lle, koska Tesseract-toleranssi vinossa skannauksessa voi olla
jopa 5 astetta.
OcrInput.DeepCleanBackgroundNoise () - voimakas taustamelun poisto. Käytä tätä suodatinta
vain, jos tiedetään äärimmäisen asiakirjan taustamelu, koska tämä suodatin saattaa myös vähentää puhtaiden
asiakirjojen OCR-tarkkuutta ja on erittäin prosessorikallis.
OcrInput.EnhanceResolution - parantaa heikkolaatuisten kuvien tarkkuutta. Suodatinta ei
tarvita usein, koska OcrInput.MinimumDPI ja OcrInput.TargetDPI saavat automaattisesti kiinni
ja ratkaisevat matalan resoluution tulot.
PuhdasTaustaMelu. Tämä on aikaavievä asetus; se sallii kuitenkin kirjaston puhdistaa digitaalisen
kohinan, paperin rypistykset ja muut puutteet digitaalisessa kuvassa, mikä muuten tekisi siitä kyvyttömän lukemaan
muissa OCR-kirjastoissa.
EnhanceContrast on asetus, joka saa IronOCR: n lisäämään tekstin kontrastia automaattisesti kuvan
taustaa vasten, lisäämällä OCR: n tarkkuutta ja yleisesti lisäämällä OCR: n suorituskykyä ja nopeutta.
EnhanceResolution on asetus, joka tunnistaa automaattisesti pieniresoluutioiset kuvat (jotka ovat
alle 275 dpi), skaalaa kuvan automaattisesti ja terävöittää sitten kaiken tekstin, jotta
OCR-kirjasto voi lukea sen täydellisesti. Vaikka tämä toimenpide on sinänsä aikaa vievää, se yleensä vähentää kuvan
OCR-toiminnon kokonaisaikaa.
Language IronOCR tukee 22 kansainvälistä kielipakettia, ja kieliasetuksella voidaan valita yksi
tai useampi OCR-toimintoon käytettävä kieli.
Strategia IronOCR tukee kahta strategiaa. Voimme joko valita asiakirjan nopean ja vähemmän tarkan
skannauksen tai käyttää edistynyttä strategiaa, joka käyttää joitain tekoälymalleja OCR-tekstin tarkkuuden
parantamiseksi automaattisesti tarkastelemalla sanojen tilastollista suhdetta lauseeseen .
ColorSpace on asetus, jolla voimme valita tekstintunnistuksen harmaasävyinä tai väreinä. Harmaasävy
on yleensä paras vaihtoehto. Joskus, kun tekstit tai taustat ovat samankaltaisia, mutta hyvin erivärisiä,
väriväritila antaa parempia tuloksia.
DetectWhiteTextOnDarkBackgrounds. Yleensä kaikki OCR-kirjastot odottavat näkevänsä mustaa tekstiä
valkoisella taustalla. Tämän asetuksen avulla IronOCR tunnistaa negatiiviset tai tummat sivut valkoisella tekstillä
ja lukee ne.
InputImageType. Tämän asetuksen avulla kehittäjä voi ohjata OCR-kirjastoa tarkastelemaan onko se
kokonaista asiakirjaa vai katkelmaa, kuten kuvakaappausta.
RotateAndStraighten on edistynyt asetus, joka antaa IronOCR: lle ainutlaatuisen kyvyn lukea
asiakirjoja, jotka eivät ole vain käännettyjä, mutta ehkä perspektiiviä, kuten valokuvia tekstidokumenteista.
ReadBarcodes on hyödyllinen ominaisuus, jonka avulla IronOCR voi lukea viivakoodit ja QR-koodit
sivuilta automaattisesti lukiessaan tekstiä lisäämättä suurta lisäaikaa.
Värisyvyys. Tämä asetus määrittää, kuinka monta bittiä pikseliä kohden OCR-kirjasto käyttää värin
syvyyden määrittämiseen. Suurempi värisyvyys voi lisätä OCR-laatua, mutta pidentää myös OCR-toiminnon suorittamiseen
tarvittavaa aikaa.
Kieliä ovat saksa, ranska, englanti, kiina, japani ja monet muut. Erikoiskielipaketteja on olemassa MRZ-passeille,
MICR-tarkastuksille, taloudellisille tiedoille, rekisterikilville ja monille muille. Voit myös käyttää mitä tahansa
tesseract ".traineddata" -tiedostoa - mukaan lukien itse luomasi tiedostot.
Kieliesimerkki
Muiden OCR-kielten käyttäminen.
// Using IronOCR with Arabic language support// PM> Install IronOcr.Languages.Arabicusing IronOCR;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Arabic;using (varInput = new OcrInput()){Input.AddImage("img/arabic.gif"); // Add image filters if necessary // IronTesseract can read what conventional Tesseract cannot, even if the input is of very low quality varResult = Ocr.Read(Input); // Console can't easily display Arabic text on Windows, so save it to file instead.Result.SaveAsTextFile("arabic.txt");}
// Using IronOCR with Arabic language support
// PM> Install IronOcr.Languages.Arabic
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;
using (var Input = new OcrInput())
{
Input.AddImage("img/arabic.gif");
// Add image filters if necessary
// IronTesseract can read what conventional Tesseract cannot, even if the input is of very low quality
var Result = Ocr.Read(Input);
// Console can't easily display Arabic text on Windows, so save it to file instead.
Result.SaveAsTextFile("arabic.txt");
}
C#
Esimerkki monikielisestä
On myös mahdollista käyttää tekstintunnistusta useilla kielillä samanaikaisesti. Tämä voi todella auttaa saamaan
englanninkielisiä metatietoja ja URL-osoitteita Unicode-asiakirjoihin.
// Using IronOCR for multi-language recognition// PM> Install IronOcr.Languages.ChineseSimplifiedusing IronOCR;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.ChineseSimplified;Ocr.AddSecondaryLanguage(OcrLanguage.Finnish);// We can add any number of languagesusing (varInput = new OcrInput()){Input.Add("multi-language.pdf"); varResult = Ocr.Read(Input);Result.SaveAsTextFile("results.txt");}
// Using IronOCR for multi-language recognition
// PM> Install IronOcr.Languages.ChineseSimplified
using IronOCR;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Finnish);
// We can add any number of languages
using (var Input = new OcrInput())
{
Input.Add("multi-language.pdf");
var Result = Ocr.Read(Input);
Result.SaveAsTextFile("results.txt");
}
C#
Yksityiskohtaiset OCR-tulokset-objektit
IronOCR palauttaa OCR-tulosobjektin jokaiselle OCR-toiminnolle. Yleensä kehittäjät käyttävät vain tämän objektin
tekstiominaisuutta saadakseen tekstin skannatuksi kuvasta. OCR-tulosten DOM on kuitenkin paljon edistyneempi kuin
tämä.
// Detailed OCR results using IronOCR
using IronOCR;
using System.Drawing; // Required assembly reference
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Finnish;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; // Important
using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Explore the extensive, detailed API for:
// - Pages, Blocks, Paragraphs, Lines, Words, Characters
// - Image exports, font coordinates, statistics
}
C#
Esitys
IronOCR toimii laatikosta ilman, että tarvitsee virittää tai muokata voimakkaasti tulokuvia.
Nopeus on loistava: IronOcr.2020 + on jopa 10 kertaa nopeampi ja tekee yli 250% vähemmän virheitä kuin aiemmat
koontiversiot.
Lisätietoja
Jos haluat lisätietoja OCR: stä C#, VB, F# tai millä tahansa muulla .NET-kielellä, lue yhteisön oppaat, jotka
antavat todellisia esimerkkejä siitä, miten IronOCR: ää voidaan käyttää, ja ne saattavat näyttää vivahteita siitä,
miten saada parhaansa irti tämä kirjasto.
커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.