void YaziYaz()
{
try
{
PrivateFontCollection ozelFont = new PrivateFontCollection();
ozelFont.AddFontFile((Environment.CurrentDirectory + @"\font\Regular.otf").ToString());
yeniResim = new Bitmap(dosyaYolu);
Brush firca = new LinearGradientBrush(new Point(1, 1), new Point(100, 100), Color.FromArgb(255, Color.Black), Color.FromArgb(255, Color.Black));
Graphics gr = Graphics.FromImage(yeniResim);
gr.RotateTransform(0);
gr.DrawString("YONTEM", new Font(ozelFont.Families[0], 21, FontStyle.Regular), firca, 645, 210);
gr.DrawString("NO: " + textBox1.Text, new Font(ozelFont.Families[0], 21, FontStyle.Regular), firca, 105, 248);
gr.RotateTransform(-0);
pictureBox1.Image = imgboyut(yeniResim,900,900);
}
catch (Exception hata)
{
MessageBox.Show(hata.Message.ToString(), "Sistem Kaynaklı Hata..!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
windows 10 çalışan bu uygulama windows 7 de "File not found" hatası veriyor
Application.StartupPath.ToString(); AppDomain.CurrentDomain.BaseDirectory.ToString();
bunların ikisinide kullandım sonuç yine aynı hatta messagebox a kullandığım kodu şu şekilde yazdım
" messagebox.show((Environment.CurrentDirectory + @"\font\Regular.otf").ToString())"
dosya yolunu doğru gösterdi fakat ne hikmetse hata vermeye devam ediyor yardımlarınız bekliyorum teşekkürler..
Toplam 2 cevap
Sorunu çözdüm windows 10 ".otf " uzantılarını açıyormuş fakat windows 7 açmıyor dosyayı " .ttf " ye çevirdim sorun çözüldü. teşekkürler..
Aşağıdaki kod uygulamanın olduğu klasör ne olursa olsun o klasörün altında Font klasörünün altındaki regular.otf dosyasını bulacaktır.
string appExePath = System.Reflection.Assembly.GetExecutingAssembly().Location;
string appPath = System.IO.Path.GetDirectoryName(appExePath);
string fontPath = appPath + @"\font\Regular.otf";
Bu kodu ekledikten sonra .exe dosyanın olduğu klasörde gerçekten Font diye bir klasör var mı, bu klasörde Regular.otf dosyası var mı kontrol et.