C ile Pdf veya image yaziya nasil dönüstürülür

C ile Pdf veya image yaziya nasil dönüstürülür

C# ile ister MVC istersenizde WebForm veya Windows form kullanarak herhangi bir Pdf veya image yaziya nasil dönüstürülür konusunu birlikte ele alacagiz. Bazi durumlarda pdfi yaziya dönüstürme olayi çok rahat yapilabilmektedir. Bunun nedeni pdf olustururken direk word benzeri bir text editörden içeriklerin alinarak PDF formatina dönüstürülmesidir. Fakat bazi durumlarda ise image dosyasi barindiran PDF belgesini yaziya dönüstürmek isteyebiliriz. Bu durumda arada OCR kullanmamiz gerekecektir.

Microsoft tarafindan gelistirilen Visual Studio ortaminda c# dili ile herhangi bir pdf yi yaziya dönüstürmenin basit bir yöntemini bu gün sizlere anlayacagim. Iron OCR ismindeki kütüphaneyi projemize nuget ile indirdikten sonra bir adet buton bir adet richtextbox ve bir adette openfile dialog nesnesi windows form içerisine sürükleyip birakin. Kod kismina 

 using IronOcr; 
Seklinde kütüphanemizi import ettikten sonra  bazi ufak ayarlari yapmamiz gerekecektir. 
richTextBox1.Text = " ";
            
OpenFileDialog of = new OpenFileDialog();
of.Filter = "PDF Dosyasi Seçiniz |*.pdf";
           
if (of.ShowDialog()==DialogResult.OK)
{
   fileName = of.FileName;
   IsYap();
}
Bu kodu sürükle birak ile formunuza koydugunuz button'un click eventi içerisine yerlestirin. Kodu yerlestirdikten sonra IsYap() metodu muhtemelen kirmizi olarak yakacaktir. Asagidaki gibi bir is yapma metodu tanimlamaniz durumunda bu hata ortadan kalkacaktir.


AdvancedOcr Ocr = new AdvancedOcr()
{
 CleanBackgroundNoise = true,
 EnhanceContrast = true,
 EnhanceResolution = true,
 Language = IronOcr.Languages.Turkish.OcrLanguagePack,
 Strategy = IronOcr.AdvancedOcr.OcrStrategy.Advanced,
 ColorSpace = AdvancedOcr.OcrColorSpace.Color,
 DetectWhiteTextOnDarkBackgrounds = true,
 InputImageType = AdvancedOcr.InputTypes.AutoDetect,
 RotateAndStraighten = true,
 ReadBarCodes = true,
 ColorDepth = 4
};
  var testImage = adres;
  var Results = Ocr.Read(testImage);
  richTextBox1.Text = Results.Text;
Yukaridaki kod parçacigi içerisinde kuvvetli ihtimalle "IronOcr.Languages.Turkish.OcrLanguagePack," kisminda bir hata alacaksiniz. Türkçe destekli dil paketini nuget içerisinden eklediginizde bu hata ortadan kalkacaktir.  Butona tikladiginiz zamanda bir openfile dialog açilacaktir. Siz PDF belgesini seçtiginiz gibi kapanarak OCR pixel pixel dökümani okuyarak yaziya dönüstürüp richtextboxt1 içerisine atacaktir

Burada dikkat etmeniz gereken bir noktada IRON OCR kütüphanesi normalde lisansli bir kütüphanedir. Fakat denemesi ücretsiz olarak geçiyor. Yani sizin olusturacaginiz tüm uygulamalarda kullanim için lisans isteyecektir fakat visual studio içerisinden direk baslattiginiz zamanda lisans sorunu olmayacaktir.

Kafaniza takilan her türlü soruyu yorumlar kismindan bana sorabilirsiniz. Simdilik Selametle

              Kaan YIGIT
Bilgisayar Programlama Teknikeri
    Senior Software Developer

Yorumlar

Yorum Yazın

E posta adresiniz kesinlikle yayımlanmayacaktır. * olan alanları doldurmanız zorunludur

Adınız soyadınız *
Eposta Adresi *
Website