PDA

View Full Version : کم شدن کیفیت عکس پس از ذخیره



mahlake
سه شنبه 19 شهریور 1392, 22:00 عصر
با سلام خدمت دوستان عزیز...
من یک برنامه نوشته ام برای تولید فاکتور که به صورت عکس باید ذخیره شود اما بعد از ذخیره کیفیت عکس ایین میاید

لطفا سریع تر جواب بدهید خیلی واجب هستت... واقعا نیاز به کمک داریم...
http://www.8pic.ir/images/75697535184121574595.jpg

davidrobert
سه شنبه 19 شهریور 1392, 22:22 عصر
برادر از نظر من این هستش شما در کدتون ببنید که منظور من کد مربوط به باز کردن عکس در Picture Box برای ذخیره که Pixl عکس رو کم میکنه یا چیزی دیگه که در کدتون قرار دادی باشید که پیکل عکستون رو کم میکنه و دز کادر تصویر قرار میده عکس شما رو و این کار باعث میشه تا کیفیت عکس بیاد پایین من هم در کدم وقتی مقدار پیکسل عکس رو با کد تغییر دادم و ذخیره کردم عکس رو در دیتابیس کیفیت عکسم هم امد پایین بخاطر همین میگم کد باز کردن در Picture Box رو ببینه اندازی عکس رو موقع باز کردن تصویر عوض نمیکنی وقتی تصویر رو باز میکنی برای ذخیره کیفیتش میاد پایین.

mahlake
سه شنبه 19 شهریور 1392, 22:46 عصر
برادر از نظر من این هستش شما در کدتون ببنید که منظور من کد مربوط به باز کردن عکس در Picture Box برای ذخیره که Pixl عکس رو کم میکنه یا چیزی دیگه که در کدتون قرار دادی باشید که پیکل عکستون رو کم میکنه و دز کادر تصویر قرار میده عکس شما رو و این کار باعث میشه تا کیفیت عکس بیاد پایین من هم در کدم وقتی مقدار پیکسل عکس رو با کد تغییر دادم و ذخیره کردم عکس رو در دیتابیس کیفیت عکسم هم امد پایین بخاطر همین میگم کد باز کردن در Picture Box رو ببینه اندازی عکس رو موقع باز کردن تصویر عوض نمیکنی وقتی تصویر رو باز میکنی برای ذخیره کیفیتش میاد پایین.

این کد برنامه هست دوست عزیز.. :

راستی یک مشکل دیگه هم دارم... میخواهم اعدادم به فارسی بر روی تصویر چاپ شود یکنی بعد از این که محاسبات رو انجام داد آنها را فارسی بر روی تصویر قرار دهد و سه رقم سه رقم جدا کند... :( :">

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Imaging;
using System.IO;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
if (textBox2.Text == "" )
{
textBox2.Text = textBox1.Text;
}
textBox2.Text = Convert.ToString(Convert.ToInt32(textBox2.Text) - Convert.ToInt32(textBox3.Text));
Double a = Convert.ToDouble(textBox3.Text), b = Convert.ToDouble(textBox4.Text), c = Convert.ToDouble(textBox5.Text), d = Convert.ToDouble(textBox6.Text),f,g,h;
f = a * b;
g = (f / 100) * c;
h = (f / 100) * d;
textBox7.Text =Convert.ToString(Math.Round(f));
textBox8.Text = Convert.ToString(Math.Round(g));
textBox9.Text = Convert.ToString(Math.Round(h));
textBox10.Text = Convert.ToString(Convert.ToInt32(textBox7.Text) + Convert.ToInt32(textBox8.Text) + Convert.ToInt32(textBox9.Text));

}

private void Form1_Load(object sender, EventArgs e)
{

}

private void button2_Click(object sender, EventArgs e)
{
Image imgTemp = pictureBox1.Image;
Graphics graphic = Graphics.FromImage(imgTemp);

// شماره فاکتور
graphic.DrawString(textBox11.Text, new Font("Microsoft Sans Serif", 13, FontStyle.Regular), new SolidBrush(Color.Black), new Point(886, 25), new StringFormat(StringFormatFlags.DirectionRightToLef t));

// تاریخ
graphic.DrawString(textBox12.Text, new Font("Microsoft Sans Serif", 13, FontStyle.Regular), new SolidBrush(Color.Black), new Point(888, 56), new StringFormat(StringFormatFlags.DirectionRightToLef t));

//مقدار دوم
graphic.DrawString(textBox3.Text, new Font("Simplified Arabic", 12, FontStyle.Regular), new SolidBrush(Color.Black), new Point(793, 438), new StringFormat(StringFormatFlags.DirectionRightToLef t));

//مقدار اول
graphic.DrawString(textBox3.Text, new Font("Simplified Arabic", 10, FontStyle.Regular), new SolidBrush(Color.Black), new Point(786, 404), new StringFormat(StringFormatFlags.DirectionRightToLef t));

// مبلغ واحد
graphic.DrawString(textBox4.Text, new Font("Microsoft Sans Serif", 13, FontStyle.Regular), new SolidBrush(Color.Black), new Point(888, 56), new StringFormat(StringFormatFlags.DirectionRightToLef t));


pictureBox1.Image = imgTemp;
}

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{

}

private void button5_Click(object sender, EventArgs e)
{
saveFileDialog1.Filter = "JPEG File (*.jpg)|*.jpg";
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
switch (Path.GetExtension(saveFileDialog1.FileName))
{
case ".jpg":
pictureBox1.Image.Save(saveFileDialog1.FileName, ImageFormat.Jpeg); break;
}
}

}
}
}

davidrobert
سه شنبه 19 شهریور 1392, 22:58 عصر
این کد برای جدا کردن اعداد به صورت سه رقم اعشار http://uplod.ir/dvwqbpyc8y9k/sum_textes.zip.htm و برای اینکه عداد به صورت فارسی نشان بده 2 تا راه داری یک عداد سیستم رو فارسی قرار بدی یا اینکه حالت نماش مقدار رو در تکس با یا فرم یا غیره به صورت righttileft رو برابر به true کنی تا عداد به صورت فارسی نمایش داده بیشن جز این ها راهی دیگه به ذهنم نمیری جز اینکه عداد سیستم رو فارسی کنی.

mahlake
سه شنبه 19 شهریور 1392, 23:00 عصر
این هم تصویری از برنامه:
http://www.8pic.ir/images/85111052925926597708.jpg

mahlake
سه شنبه 19 شهریور 1392, 23:09 عصر
این کد برای جدا کردن اعداد به صورت سه رقم اعشار http://uplod.ir/dvwqbpyc8y9k/sum_textes.zip.htm و برای اینکه عداد به صورت فارسی نشان بده 2 تا راه داری یک عداد سیستم رو فارسی قرار بدی یا اینکه حالت نماش مقدار رو در تکس با یا فرم یا غیره به صورت righttileft رو برابر به true کنی تا عداد به صورت فارسی نمایش داده بیشن جز این ها راهی دیگه به ذهنم نمیری جز اینکه عداد سیستم رو فارسی کنی.

مرسی دادا بابت برنامه سه رقم اما هر دو اون کارها که گفتید رو کرده ام اما جواب نگرفته ام چون فارسی مینویسه اما انگلیسی بر روی تصویر انتقال میده...

davidrobert
چهارشنبه 20 شهریور 1392, 10:36 صبح
منم جز این کار رو انجام دادن چیز دیگه به ذهنم نمیری یا باید خواستید تکس با کس با برچسب و یا غیری رو خوصوصیاتش رو بزاری رو righttoleft یا اینکه تنظمیات ویندوز رو تغییر بده من هم در گزارش گیری همین مشکل رو داشتم و عداد رو انگلیسی نشون داد وقتی تنظیمات ویندوز رو روی international و عداد فارسی قرار دادم عداد سیستم فارسی شو و مقدار گزارش گیری رو فارسی نشون داد.عداد رو.
به جز این کار دیگی به ذهنم نمیریسی