نمایش نتایج 1 تا 12 از 12

نام تاپیک: تبدیل سانتی متر به pixel

  1. #1
    کاربر دائمی آواتار mahboube
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شيراز
    سن
    36
    پست
    596

    تبدیل سانتی متر به pixel

    سلام دوستان چطوری میشه سانتی متر رو به پیکسل تبدیل کرد؟

    اینارم دارم ولی جواب نمیده:

    Graphics g = this.CreateGraphics();
    pixels= centimeters*g.DpiX/2.54;


    بعضی دوستان گفتن از این تابع استفده میشه ولی نمیدونم چطوری؟
    getdevicecap

    ممنون میشم اگر کدشو بزارید.

  2. #2
    کاربر دائمی آواتار ricky22
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    شیراز
    پست
    1,591

    نقل قول: تبدیل سانتی متر به pixel

    سلام.
    pixels = cm / 2.54 * dpi
    برای DPI هم از این کد استفاده کن.
    int wid = Screen.PrimaryScreen.WorkingArea.Width;
    int ht = Screen.PrimaryScreen.WorkingArea.Height;

  3. #3
    کاربر دائمی آواتار mahboube
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شيراز
    سن
    36
    پست
    596

    نقل قول: تبدیل سانتی متر به pixel

    نقل قول نوشته شده توسط ricky22 مشاهده تاپیک
    سلام.
    pixels = cm / 2.54 * dpi
    برای DPI هم از این کد استفاده کن.
    int wid = Screen.PrimaryScreen.WorkingArea.Width;
    int ht = Screen.PrimaryScreen.WorkingArea.Height;
    این فرمولم غلطه از width ,height چطوری dpi رو بدست بیارم؟؟؟

  4. #4
    کاربر دائمی آواتار ricky22
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    شیراز
    پست
    1,591

    نقل قول: تبدیل سانتی متر به pixel

    نقل قول نوشته شده توسط mahboube مشاهده تاپیک
    این فرمولم غلطه از width ,height چطوری dpi رو بدست بیارم؟؟؟
    چطور غلطه؟!
    int CentimeterToPixel(int Centimeter)
    {
    double pixel = -1;
    using (Graphics g = this.CreateGraphics())
    {
    pixel = Centimeter * g.DpiY / 2.54d;
    }
    return (int)pixel;
    }

  5. #5
    کاربر دائمی آواتار mahboube
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شيراز
    سن
    36
    پست
    596

    نقل قول: تبدیل سانتی متر به pixel

    من نیمدونم چرا وقتی resoloution سیستمو عوض میکنم این dpiy ثابت میمونه.همیشه 96
    البته جالبه .من یک pnel رو پرینت میگیرم.تو رزولوشن های مختلف اندازش(موقع نمایش)بزرگ و کوچیک میشه.ولی موقع پرینت دقیقا همون اندازه ای یه که خودم بهش داد.چرا؟؟

  6. #6
    کاربر دائمی آواتار ricky22
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    شیراز
    پست
    1,591

    نقل قول: تبدیل سانتی متر به pixel

    میشه سناریو را تشریح کنید شاید اصلا نیازی به این کارا نباشه.

  7. #7
    کاربر دائمی آواتار mahboube
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شيراز
    سن
    36
    پست
    596

    نقل قول: تبدیل سانتی متر به pixel

    ببینید من یک panel دارم که می خوام ازش پرینت بگیرم.
    و میخوام کاربر اندازشو بر حسب میلیمتر تنظیم کنه.خب توی برنامه باید این میلیمتر به پیکسل تبدیل شه و برای اندازه پنل استفاده شه.
    سوال:آیا کاردرستیه من از پنل استفاده کنم برای اینکار؟اگه نه چطوری مثلا یک مستطیل بااندازه مشخص به سانتی متر رو چاپ کنم؟
    2-الن بااین فرمول داره جواب میده یعنی موقع چاپ فرق نمی کنه رزولوشن چی باشه اندازه ها درسته.آیا روی هیچ سیستمی ممکنه فرق کنه؟یعنی درست چاپ نشه؟

  8. #8
    کاربر دائمی آواتار ricky22
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    شیراز
    پست
    1,591

    نقل قول: تبدیل سانتی متر به pixel

    نقل قول نوشته شده توسط mahboube مشاهده تاپیک
    ببینید من یک panel دارم که می خوام ازش پرینت بگیرم.
    و میخوام کاربر اندازشو بر حسب میلیمتر تنظیم کنه.خب توی برنامه باید این میلیمتر به پیکسل تبدیل شه و برای اندازه پنل استفاده شه.
    سوال:آیا کاردرستیه من از پنل استفاده کنم برای اینکار؟اگه نه چطوری مثلا یک مستطیل بااندازه مشخص به سانتی متر رو چاپ کنم؟
    2-الن بااین فرمول داره جواب میده یعنی موقع چاپ فرق نمی کنه رزولوشن چی باشه اندازه ها درسته.آیا روی هیچ سیستمی ممکنه فرق کنه؟یعنی درست چاپ نشه؟
    سلام.
    خب چرا از خیل عظیم ابزار های گزارش سازی استفاده نمی کنید؟ که انعطاف پذیری زیادی در پرینت گرفتن و تعیین سایز دارند.
    در مورد سوال دوم چون تا به حال این کار را نکردم نمی دونم. امتحان کنید.
    موفق باشید.

  9. #9
    کاربر دائمی آواتار mahboube
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شيراز
    سن
    36
    پست
    596

    نقل قول: تبدیل سانتی متر به pixel

    روی panel یک سری label ها هست که کاربر جاشون رو تنظیم میکنه.
    ابزار های گزارش سازی اینجا فکر نمیکنم بدرد من بخوره!!

  10. #10
    کاربر دائمی آواتار ricky22
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    شیراز
    پست
    1,591

    نقل قول: تبدیل سانتی متر به pixel

    هممممم.
    پس شما دارید پنل را به یک Graphic Object تبدیل می کنید و پرینت می گیرید.
    مثلا :

    DllImport("gdi32.dll")]
    private static extern bool BitBlt(
    IntPtr hdcDest, // handle to destination DC
    int nXDest, // x-coord of destination upper-left corner
    int nYDest, // y-coord of destination upper-left corner
    int nWidth, // width of destination rectangle
    int nHeight, // height of destination rectangle
    IntPtr hdcSrc, // handle to source DC
    int nXSrc, // x-coordinate of source upper-left corner
    int nYSrc, // y-coordinate of source upper-left corner
    System.Int32 dwRop // raster operation code
    );

    private const Int32 SRCCOPY = 0xCC0020;

    private Bitmap memImage;

    private void PrepareImage()
    {
    Graphics graphic = this.CreateGraphics();
    Size s = this.Size;
    memImage = new Bitmap(s.Width, s.Height, graphic);
    Graphics memGraphic = Graphics.FromImage(memImage);
    IntPtr dc1 = graphic.GetHdc();
    IntPtr dc2 = memGraphic.GetHdc();
    BitBlt(dc2, 0, 0, this.ClientRectangle.Width,
    this.ClientRectangle.Height,dc1, 0, 0, SRCCOPY);
    graphic.ReleaseHdc(dc1);
    memGraphic.ReleaseHdc(dc2);
    }

    private void button1_Click(object sender, System.EventArgs e)
    {
    PrepareImage();
    printDocument1.Print();
    }

    private void printDocument1_PrintPage(object sender,
    System.Drawing.Printing.PrintPageEventArgs e)
    {
    e.Graphics.DrawImage(memImage,0,0);
    }

    خب فکر می کنم با این کد راحت تر بشه سایز را تنظیم کرد؟

  11. #11
    کاربر دائمی آواتار mahboube
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شيراز
    سن
    36
    پست
    596

    نقل قول: تبدیل سانتی متر به pixel

    خب این چه فرقی کرد.مسئلع تبدیل پیکسل به سانتی متر و برعکسه!!

  12. #12

    نقل قول: تبدیل سانتی متر به pixel


قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •