ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی “ ورود به حساب” کلیک کنید.





اگر فرم ثبت نام برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمیشود، اینجا را کلیک کنید.





نمایش نتایج: از 1 به 1 از 1
  1. #1
    vahid4251
    مدیر بخش
    تاریخ عضویت
    2011 Dec
    محل سکونت
    tehran & esfhan & uromie
    نوشته ها
    180
    14
    197

    آموزش سورسی که حجم تصاویر را کاهش می دهد

    پارامتر اول متد savejpg رو یه picturebox بفرستید. پارامتر دوم یه آدرس که فایل jpg ذخیره بشه و پارامتر سوم کیفیت فایل. هر چه عدد پارامتر سوم رو کمتر کنید حجم عکست کمتر و طبیعتا عکست بی کیفیت تر میشه.


    کد PHP:
    ' ----==== API Declarations ====----

    Private Type GUID
       Data1 As Long
       Data2 As Integer
       Data3 As Integer
       Data4(0 To 7) As Byte
    End Type

    Private Type GdiplusStartupInput
       GdiplusVersion As Long
       DebugEventCallback As Long
       SuppressBackgroundThread As Long
       Suppres***ternalCodecs As Long
    End Type

    Private Type EncoderParameter
       GUID As GUID
       NumberOfValues As Long
       type As Long
       Value As Long
    End Type

    Private Type EncoderParameters
       Count As Long
       Parameter As EncoderParameter
    End Type

    Private Declare Function GdiplusStartup Lib "GDIPlus" ( _
       token As Long, _
       inputbuf As GdiplusStartupInput, _
       Optional ByVal outputbuf As Long = 0) As Long

    Private Declare Function GdiplusShutdown Lib "GDIPlus" ( _
       ByVal token As Long) As Long

    Private Declare Function GdipCreateBitmapFromHBITMAP Lib "GDIPlus" ( _
       ByVal hbm As Long, _
       ByVal hpal As Long, _
       Bitmap As Long) As Long

    Private Declare Function GdipDisposeImage Lib "GDIPlus" ( _
       ByVal Image As Long) As Long

    Private Declare Function GdipSaveImageToFile Lib "GDIPlus" ( _
       ByVal Image As Long, _
       ByVal filename As Long, _
       clsidEncoder As GUID, _
       encoderParams As Any) As Long

    Private Declare Function CLSIDFromString Lib "ole32" ( _
       ByVal str As Long, _
       id As GUID) As Long

    ----==== SaveJPG ====----

    Public 
    Sub SaveJPG_
       ByVal pict 
    As StdPicture_
       ByVal filename 
    As String_
       Optional ByVal quality 
    As Byte 80)
    Dim tSI As GdiplusStartupInput
    Dim lRes 
    As Long
    Dim lGDIP 
    As Long
    Dim lBitmap 
    As Long

       
    ' Initialize GDI+
       tSI.GdiplusVersion = 1
       lRes = GdiplusStartup(lGDIP, tSI)
       
       If lRes = 0 Then
       
          ' 
    Create the GDIbitmap
          
    ' from the image handle
          lRes = GdipCreateBitmapFromHBITMAP(pict.Handle, 0, lBitmap)
       
          If lRes = 0 Then
             Dim tJpgEncoder As GUID
             Dim tParams As EncoderParameters
             
             ' 
    Initialize the encoder GUID
             CLSIDFromString StrPtr
    ("{557CF401-1A04-11D3-9A73-0000F81EF32E}"), _
                             tJpgEncoder
          
             
    ' Initialize the encoder parameters
             tParams.Count = 1
             With tParams.Parameter ' 
    Quality
                
    ' Set the Quality GUID
                CLSIDFromString StrPtr("{1D5BE4B5-FA4A-452D-9CDD-5DB35105E7EB}"), .GUID
                .NumberOfValues = 1
                .type = 4
                .Value = VarPtr(quality)
             End With
             
             ' 
    Save the image
             lRes 
    GdipSaveImageToFile_
                      lBitmap
    _
                      StrPtr
    (filename), _
                      tJpgEncoder
    _
                      tParams
    )
                                 
             
    ' Destroy the bitmap
             GdipDisposeImage lBitmap
             
          End If
          
          ' 
    Shutdown GDI+
          
    GdiplusShutdown lGDIP

       End 
    If
       
       If 
    lRes Then
          Err
    .Raise 5, , "Cannot save the image. GDI+ Error:" lRes
       End 
    If
       
    End Sub 
    نکتـــه : با افزایش و کاهش عدد کیفیت عکس بیشتر و کمتر میشه و به نسبت افزایش و کاهش کیفیت افزایش و کاهش حجم هم خواهیم داشت.

    اما اگه یه عکس رو با quality پایین ذخیره کنید. بعد همون عکس بی کیفیت رو به تابع بدی و این بار بخوای با quality بالا ذخیره کنی کیفیت از دست دادش رو به دست نمیاره و نهایتا همون چیزی که در پیکچرباکس لود شده ذخیره میشه.

    یعنی یه عکس که کیفیتش رو از دست داده با ارسال به این تابع و استفاده از quality بالا کیفیت از دست دادش رو به دست نمیاره. اما حجمش بیشتر از قبل میشه.
    دارم برنامه طراحی قالب وبلاگ مینویم کم پیدام نظر بدین
    [برای نمایش لینک باید عضو شوید. ]
    اگر از مطالب خوشتون اومد چیکار میکنین؟معلوم تشکر یا اعتبار

    يادم باشد و يادت نرود که ما براي يکبار ايستادن هزار بار افتاده ايم.
  2. 1
نمایش نتایج: از 1 به 1 از 1

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ: 14
    آخرين نوشته: 2017-08-02, 03:57 PM
  2. پاسخ: 11
    آخرين نوشته: 2017-01-27, 03:26 PM
  3. پاسخ: 1
    آخرين نوشته: 2014-02-22, 07:58 PM
  4. پاسخ: 2
    آخرين نوشته: 2013-03-11, 11:58 AM
  5. ایجاد یک گالری تصاویر در php
    توسط MspSoft در انجمن PHP
    پاسخ: 0
    آخرين نوشته: 2012-02-15, 01:32 PM

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

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

Content Relevant URLs by vBSEO 3.6.0 RC 2