1 Mart 2012 / Perşembe

Benzer belgeler
Resimlerin üstüne yazı yazacağız. resimyukle.aspx sayfası oluşturuyoruz.

Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü seçiyoruz

User Control : Standart bir kullanıcı arabirimi oluşturarak; bir uygulama içinde birden fazla. Siteye User Control Eklemek : 22 Mart 2012 / Perşembe

NOT: VERİTABANINDAKİ TABLOLARI OLUŞTURMAYI DA UNUTMAYACAĞIZ.

Sağ Tıkla. 5 Ocak 2012 / Perşembe. Yeni bir site açıyoruz. File New Web Site Browse yeni klasör ocak5persembe OK

Masa üstünde vt34.mdb dosyası var, onu projemize eklemek için, App_Data ya sağ tıkla Add Existing Item vt34.mdb adlı dosyayı seç Add

12 Ocak 2012 / Perşembe

ASP.NET CLASS KULLANARAK VERİTABANI İŞLEMLERİ

1 Aralık 2011 / Perşembe

İNTERNET TABANLI PROGRAMLAMA- 11.ders FORM UYGULAMASI (DROPDOWN BİLGİ YÜKLEME, VALIDATION KONTROLLERI, PAREMETRELİ KAYIT YAPMA)

GENETİK ALGORİTMA GEZGİN SATICI ÖDEVİ

Yeni site açıp, masa üstündeki vt.mdb dosyasını sitemize ekliyoruz ve a bağlanıp 1 Mart tarihli sayfayı açıyoruz

Kitap Ekle linki tıklandığında, admin.aspx sayfamızın görüntüsü aşağıdaki şekilde olacaktır.

VERİ TABANI İŞLEMLERİ (NESNE TABANLI PROGRAMLAMA TEKNİĞİ İLE)

yeni_uye_kayit.ascx UserControl sayfamızda, kaydedilmek istenen üye eğer daha önce veritabanımızda kayıtlı ise bunu buldurup kullanıcıyı uyaralım;

A- VERİTABANI BAĞLANTISINI HAZIR NESNE KULLANARAK YAPMA

Response : Sunucunun istemciye veri yollamasını

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

Karabük Üniversitesi, Mühendislik Fakültesi... WEB TEKNOLOJİLERİ

SINIF İÇİ UYGULAMA KODLARI

İNTERNET TABANLI PROGRAMLAMA- 10.ders GRIDVIEW İÇERİSİNDE YENİ KAYIT EKLEME, FOTOGRAF LİSTELEME, SIRALAMA YAPMA VE DROPDOWN EKLEME

Çözüm :RadioButtonList1 kontrolunuekliyoruz.enableautopostback iaktifleştiriyoruz..

C#.Net & Linq (Language Integrated Query)

ASP.NET ile Bir Web Sitesi Oluşturma

C# ve SQL Server ile Resim Yükleme ve Login İşlemi

İNTERNET TABANLI PROGRAMLAMA- 9.ders BİLGİLERİN GRIDVIEW İÇERİSİNDE EKLENMESİ, DÜZENLENMESİ VE SİLİNMESİ

1) Visual Studio da WebSiteemlakci adında yeni bir site oluşturuyoruz.

Command Nesnelerini Kullanarak Tablolarda Değişiklik Yapmak:

24 Kasım 2011 / Perşembe

MASTER PAGE SAYFASI KULLANIMI

Columns : * Next Text Query veri tabanındaki urunler tablosu görülüyor. Finish, çalıştırınca direk veri tabanındaki bilgileri alıyor.

İNTERNET TABANLI PROGRAMLAMA

KRİPTOANALİZ DERSİ FİNAL ÖDEVİ. PSO ile TRANSPOSITION CIPHER ÇÖZÜMÜ

İNTERNET TABANLI PROGRAMLAMA- 8.ders VERİTABANI İLE İLGİLİ BİLGİLERİ GÖRÜNTÜLEME, KAYDETME, GÜNCELLEME VE SİLME

Görsel Programlama (Visual Programming) 2.Hafta

MEKANİZMA TEKNİĞİ (7. Hafta)

VERİTABANINA BİLGİ KAYDEME, DÜZENLEME, LİSTELEME İŞLEMLERİ

ÖDEVLERİ SİSTEME YÜKLEME USULLERİ

Görsel Programlama (Visual Programming) 2.Hafta

İNTERNET TABANLI PROGRAMLAMA- 3.ders

BLG4134 Görsel Programlama III. Öğr. Grv. Aybike ŞİMŞEK

Görsel Programlama 1

BİLGİLERİ GÖRÜNTÜLEME, KAYDETME, GÜNCELLEME VE SİLME İŞLEMLERİNİN BİRLİKTE ANLATIMI

C# ÖRNEKLERİ.

Durum Yönetimi. Olan sayfalar ekleyelim. BasitSayac.aspx

MySqlConnection connection; MySqlCommand command; MySqlDataReader reader; MySqlDataAdapter adapter; DataTable table;

GÖRÜNTÜ İŞLEME - (2.Hafta)

C Sharp /Veri tabanı işlemleri

GridView ve DetailsView kullanarak kayıt düzenlemek

İl İlçe uygulaması. : Seçilen ile ait ilçeleri listeleyen program. //İl değişkeni için kodu aşağıdaki sayfadan kopyalayınız.

Bu uygulamayı yapabilmek için SQL Server'da Query Analyzer kullanabilmekle beraber, ADO.NET bilgisine sahip olmanız gerekir.

//word document object Document document = null; public Form1() { InitializeComponent(); }

VERİTABANI NEDİR? ADO.NET

VISUAL STUDIO.NET ve Veritabanı

using System; using System.Diagnostics; using System.Drawing; using System.Windows.Forms; using System.Runtime.InteropServices;

WEB TASARIM. CSS, IFRAME, TEMPLATE, SLICE, INCLUDE(php komutu) Tarık ÖZEL

Oyuncu Sınıfı. /// <summary> /// Oyuncumuzun elindeki kart /// </summary> private ArrayList kart = new ArrayList(6);

Bilgisayar Programcılığı. Görsel Programlama-I. Öğr. Gör. Cansu AYVAZ GÜVEN

Bölüm 24. Java Ağ Uygulamaları 24.1 Java Appletleri. Bir Applet in Yaşam Döngüsü:

Nesneye Dayalı Programlama Laboratuvarı

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

İNTERNET TABANLI PROGRAMLAMA- 7.ders

XILINX ISE WEBPACK 14.7 UYGULAMA TUTORIAL

Android Ders Notları

ÖDEVLERİ SİSTEME YÜKLEME USULLERİ

XILINX ISE WEBPACK 14.7 UYGULAMA TUTORIAL

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

Bu gün dersimizde değişik web kontrollerinin kullanımını gösteren birkaç web sitesi hazırlayacağız. Önce Visual Studio 2005 i açalım.

SAYFALAR ARASI LİNK VERME VE BİLGİ TAŞIMA YÖNTEMLERİ

ORT3167 İnternet Programcılığı 1 Ders1-2. Öğr. Grv. Aybike ŞİMŞEK

BİLGİLERİ GRIDVIEW DE GÖRÜNTÜLEME VE DÜZENLEME

Şekil 1 : Şablonumuzun Photoshopda açılmış hali

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM

ADO.NET VERİTABANINA BAĞLANTI. Bir web formu üzerinden veritabanına bağlantımızı anlatacağım. UYGULAMA 1

İmleci yazıya getirip tıklayınca aşağıda hangi tag ler içinde olduğunu gösterir.

Visual Studio 2010 veya 2013, Sharp Develop 3.2 programlarını kurabilirsiniz.

Visual Basic. Dosya İşlemleri

İNTERNET TABANLI PROGRAMLAMA- 13.ders A-GRIDVIEW, DETAILSVIEW, ACCESSDATASOURCE NESNELERİ İLE BİLGİ GÖRÜNTÜLEME

İNTERNET TABANLI PROGRAMLAMA

NESNE TABANLI PROGRAMLAMA-2 DERS UYGULAMALARI-1

Görsel Programlama (Visual Programming)

Cybersoft Bilişim Teknolojileri Sunucu Tarafı Programlaması Kursu Final soruları. Tarih: 27 Kasım 2010 Saat: 13:30 Süre: 3 saat

C# Console Uygulamaları ifelse Yapıları 2

RSA ANAHTAR DAĞITIMI VE RSA İLE DİJİTAL İMZA OLUŞTURMA

C# İLE SERİ PORT, GRAFİK, EXCEL İŞLEMLERİ

2.Eclipse açıldıktan sonra Workspace alanı seçilmesi gerekir. Workspace alanı projelerinizin fiziksel olarak bulunduğu kısımdır.

Örnek : TextBox1,RangeValidator,Button,Label girelim aralığında değer girilmesini istiyoruz. Label1.Text=TextBox1.Text ;

ECLIPSE PROGRAMININ ÇALIŞTIRILMASI

Lab7 DOĞU AKDENİZ ÜNİVERSİTESİ BİLGİSAYAR VE TEKNOLOJİ YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI. BTEP212 Java. Uygulama1: package javaapplication58;

Veri Yapıları ve Algoritmalar dönem

The RestructuredText Book Documentation

// seçilen dosya ile programımız arasına bir boru hattı açıyoruz StreamReader sr = new StreamReader(dosya_adi, Encoding.GetEncoding(1254));

Exchange Server 2010 Sertifika Oluşturma

Burak Kıymaz JAVA FX

Ders 8: Metotlar. barisgokce.com

Resmin dosya adı tutulacaktır. Ve program yolu ile path(yolu ile) sayafaya eklenecektir.

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak: Published by Juan Soulié

Samsun Çocuk Hizmetleri İ l Koordinasyon Sekretarya Birimi

«BM364» Veritabanı Uygulamaları

CetaSoft Ofis E-Ticaret Modülü ile Sunulan Web Servisleri

Transkript:

1 Mart 2012 / Perşembe Resimleri Upload edip, resize edeceğiz. http://www.arifceylan.com/image-upload-ve-resize-sinifi-ve-kullanimi/ sayfasında bu konu var. Boş bir site açıyoruz, Öncelikle sitemizde bir Class oluşturacağız. Website Add new item Class Name : imageresize.cs Language : Visual C# Add Class dosyaları App_Code içine yerleştirilir. 1

Otomatik olarak bazı kodlar program tarafından oluşturulur. Bu otomatik oluşturulan kodları siliyoruz ve yerine aşağıdaki kodları kopyala yapıştır.( http://www.internetsitecisi.com/classkodlari.html) using System; using System.Drawing; using System.Drawing.Imaging; using System.IO; using System.Drawing.Drawing2D; namespace TestWeb public class imageresize public static byte[] ResizeFromByteArray(int MaxSideSize, Byte[] bytearrayin, string filename) byte[] bytearray = null; // really make this an error gif MemoryStream ms = new MemoryStream(byteArrayIn); bytearray = imageresize.resizefromstream(maxsidesize, ms, filename); return bytearray; public static byte[] ResizeFromStream(int MaxSideSize, Stream Buffer, string filename) byte[] bytearray = null; // really make this an error gif try Bitmap bitmap = new Bitmap(Buffer); int intoldwidth = bitmap.width; int intoldheight = bitmap.height; int intnewwidth; int intnewheight; int intmaxside; if (intoldwidth >= intoldheight) 2

intmaxside = intoldwidth; else intmaxside = intoldheight; if (intmaxside > MaxSideSize) //set new width and height double dblcoef = MaxSideSize / (double)intmaxside; intnewwidth = Convert.ToInt32(dblCoef * intoldwidth); intnewheight = Convert.ToInt32(dblCoef * intoldheight); else intnewwidth = intoldwidth; intnewheight = intoldheight; Size ThumbNailSize = new Size(intNewWidth, intnewheight); System.Drawing.Image oimg = System.Drawing.Image.FromStream(Buffer); System.Drawing.Image othumbnail = new Bitmap(ThumbNailSize.Width, ThumbNailSize.Height); Graphics ographic = Graphics.FromImage(oThumbNail); ographic.compositingquality = CompositingQuality.HighQuality; ographic.smoothingmode = SmoothingMode.HighQuality; ographic.interpolationmode = InterpolationMode.HighQualityBicubic; Rectangle orectangle = new Rectangle (0, 0, ThumbNailSize.Width, ThumbNailSize.Height); ographic.drawimage(oimg, orectangle); MemoryStream ms = new MemoryStream(); othumbnail.save(ms, ImageFormat.Jpeg); bytearray = new byte[ms.length]; ms.position = 0; ms.read(bytearray, 0, Convert.ToInt32(ms.Length)); ographic.dispose(); oimg.dispose(); ms.close(); ms.dispose(); catch (Exception) int newsize = MaxSideSize - 20; Bitmap bitmap = new Bitmap(newSize, newsize); Graphics g = Graphics.FromImage(bitMap); 3

g.fillrectangle(new SolidBrush(Color.Gray), new Rectangle(0, 0, newsize, newsize)); Font font = new Font("Courier", 8); SolidBrush solidbrush = new SolidBrush(Color.Red); g.drawstring("failed File", font, solidbrush, 10, 5); g.drawstring(filename, font, solidbrush, 10, 50); MemoryStream ms = new MemoryStream(); bitmap.save(ms, ImageFormat.Jpeg); bytearray = new byte[ms.length]; ms.position = 0; ms.read(bytearray, 0, Convert.ToInt32(ms.Length)); ms.close(); ms.dispose(); bitmap.dispose(); solidbrush.dispose(); g.dispose(); font.dispose(); return bytearray; /// <summary> /// Saves the resized image to specified file name and path as JPEG /// and also returns the bytearray for any other use you may need it for /// </summary> /// <param name="maxsidesize"></param> /// <param name="buffer"></param> /// <param name="filename">no Extension</param> /// <param name="filepath">examples: "images/dir1/dir2" or "images" or "images/dir1"</param> /// <returns></returns> public static byte[] SaveFromStream(int MaxSideSize, Stream Buffer, string filename, string filepath) byte[] bytearray = null; // really make this an error gif try Bitmap bitmap = new Bitmap(Buffer); int intoldwidth = bitmap.width; int intoldheight = bitmap.height; int intnewwidth; int intnewheight; int intmaxside; if (intoldwidth >= intoldheight) intmaxside = intoldwidth; 4

else intmaxside = intoldheight; if (intmaxside > MaxSideSize) //set new width and height double dblcoef = MaxSideSize / (double)intmaxside; intnewwidth = Convert.ToInt32(dblCoef * intoldwidth); intnewheight = Convert.ToInt32(dblCoef * intoldheight); else intnewwidth = intoldwidth; intnewheight = intoldheight; Size ThumbNailSize = new Size(intNewWidth, intnewheight); System.Drawing.Image oimg = System.Drawing.Image.FromStream(Buffer); System.Drawing.Image othumbnail = new Bitmap(ThumbNailSize.Width, ThumbNailSize.Height); Graphics ographic = Graphics.FromImage(oThumbNail); ographic.compositingquality = CompositingQuality.HighQuality; ographic.smoothingmode = SmoothingMode.HighQuality; ographic.interpolationmode = InterpolationMode.HighQualityBicubic; Rectangle orectangle = new Rectangle (0, 0, ThumbNailSize.Width, ThumbNailSize.Height); ographic.drawimage(oimg, orectangle); //Save File string newfilename = string.format(system.web.httpcontext.current.server.mappath("~/0/1.jpg"), filepath, filename); othumbnail.save(newfilename, ImageFormat.Jpeg); MemoryStream ms = new MemoryStream(); othumbnail.save(ms, ImageFormat.Jpeg); bytearray = new byte[ms.length]; ms.position = 0; ms.read(bytearray, 0, Convert.ToInt32(ms.Length)); ographic.dispose(); oimg.dispose(); ms.close(); ms.dispose(); catch (Exception) 5

int newsize = MaxSideSize - 20; Bitmap bitmap = new Bitmap(newSize, newsize); Graphics g = Graphics.FromImage(bitMap); g.fillrectangle(new SolidBrush(Color.Gray), new Rectangle(0, 0, newsize, newsize)); Font font = new Font("Courier", 8); SolidBrush solidbrush = new SolidBrush(Color.Red); g.drawstring("failed To Save File or Failed File", font, solidbrush, 10, 5); g.drawstring(filename, font, solidbrush, 10, 50); MemoryStream ms = new MemoryStream(); bitmap.save(ms, ImageFormat.Jpeg); bytearray = new byte[ms.length]; ms.position = 0; ms.read(bytearray, 0, Convert.ToInt32(ms.Length)); ms.close(); ms.dispose(); bitmap.dispose(); solidbrush.dispose(); g.dispose(); font.dispose(); return bytearray; 6

Böylece Class ımızı oluşturduk. Bu Class ı kullanmak için gerekli namespace i ekliyeceğiz. Default.aspx sayfasını açıp boş bir yere tıklayarak Default.aspx.cs sayfasında name space olarak, kodlarda TestWeb verildiği için bizde aynısını yazıyoruz. 7

Default.aspx sayfasını açıp resim yüklemek için eklemeler yapıyoruz. Yeni klasörler oluşturuyoruz (resimkucuk,resimbuyuk), Resimlerin dosya ismini Türkçe karakter olabileceği v.b. sebeplerden dolayı orijinal haliyle direk olarak yazdırmayacağız. Onun yerine rastgele sayı üretecek bir fonksiyon oluşturup üretilen sayıyı stringe dönüştürüp kaydettireceğiz. Bunun kodları şöyle : Random isim = new Random(); string dosyaadi=convert.tostring(isim.next(100000, 999999)); Resmi düzenleme kodları da şöyle : byte[] imgnewsave; imgnewsave = imageresize.savefromstream(400, FileUpload1.PostedFile.InputStream, dosyaadi, "resimler"); Parantez içinde yazan 400 rakamı resmin genişliğini ifade ediyor. 8

Kodları yapıştırıyoruz, resim boyutu 400 ü 200 ve 800 yapıyoruz, dosya adını resimkucuk, resimbuyuk olarak değiştiriyoruz protected void Button1_Click(object sender, EventArgs e) Random isim = new Random(); string dosyaadi = Convert.ToString(isim.Next(100000, 999999)); byte[] imgnewsave; imgnewsave = imageresize.savefromstream(200, FileUpload1.PostedFile.InputStream, dosyaadi, "resimkucuk"); imgnewsave = imageresize.savefromstream(800, FileUpload1.PostedFile.InputStream, dosyaadi, "resimbuyuk"); İmage kontrolu ekleyip çalıştırıyoruz, resim seçip ekliyoruz, refresh edince klasörlere resim kaydedilmiş gözüküyor. 9

Button a çift tıklayıp kodları yazıyoruz. protected void Button1_Click(object sender, EventArgs e) Random isim = new Random(); string dosyaadi = Convert.ToString(isim.Next(100000, 999999)); byte[] imgnewsave; imgnewsave = imageresize.savefromstream(200, FileUpload1.PostedFile.InputStream, dosyaadi, "resimkucuk"); imgnewsave = imageresize.savefromstream(800, FileUpload1.PostedFile.InputStream, dosyaadi, "resimbuyuk"); Response.Write("Kayıt Yapıldı"); Image1.ImageUrl = "resimkucuk/" + dosyaadi + ".jpg"; Şimdi veri tabanına dosyayı kaydedeceğiz, önce Access açıp resimler adlı tablo oluşturuyoruz Veritabani.mdb dosyasını sitemize ekliyoruz Kodlarımızı yazıyoruz 10

İlk önce Namespace leri ekliyoruz, using TestWeb; using System.Data; using System.Data.OleDb; public partial class _Default : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) protected void Button1_Click(object sender, EventArgs e) Random isim = new Random(); string dosyaadi = Convert.ToString(isim.Next(100000, 999999)); byte[] imgnewsave; imgnewsave = imageresize.savefromstream(200, FileUpload1.PostedFile.InputStream, dosyaadi, "resimkucuk"); imgnewsave = imageresize.savefromstream(800, FileUpload1.PostedFile.InputStream, dosyaadi, "resimbuyuk"); OleDbConnection c = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DATA Source=" + Server.MapPath("~/App_Data/veritabani.mdb")); c.open(); OleDbCommand com = new OleDbCommand(); com.commandtext = "insert into resimler(resimbaslik,resimadres) values (@rb, @ra)"; com.parameters.addwithvalue("@rb", TextBox1.Text); com.parameters.addwithvalue("@ra", dosyaadi+".jpg"); com.connection = c; com.executenonquery(); c.close(); Response.Write("Kayıt Yapıldı"); Image1.ImageUrl = "resimkucuk/" + dosyaadi + ".jpg"; Kaydedip çalıştırıyoruz,resim ekliyoruz,veri tabanına bakıyoruz,eklenmiş. 11