خارطة الموقع برنامج مبيعات ونقاط البيع وجرد المستودعات ومحاسبة الرئيسية من نحن اتصل بنا English
Yazsys.com
منذ عام 2012 - 2018
Skip Navigation Links
نظام إدارة المبيعات
|
تعليم & شروحاتExpand تعليم & شروحات
 
طريقة اعادة ضبط مقاس الصورة الطول والعرض قبل رفعها للسيرفر | اعادة ضبط ابعاد الصور قبل رفعها
بواسطة احمد عادل موسى
2015-04-06

بسم الله الرحمن الرحيم

هذا الكود مهم جداً وهو لضبط ابعاد الصورة العرض والطول وتوحيد حجمها ومقاسها Scaling Imag قبل رفعها للخادم (السيرفر) لغايات انشاء صور المواضيع عند مشاركة روابط الموقع في فيسبوك وغيرها من المواقع وله الكثير من الاهداف والغايات خصوصا لمن يريد تصميم سكربت يحتوي على لوحة تحكم تتيح للمستخدم التحكم في تصميم الموقع من خلالها لأن هذا الكود يتيح للمستخدم التحكم في ابعاد وحجم الصورة.

 

Imports System.IO

Imports System.Drawing

 

Partial Class _Default

    Inherits System.Web.UI.Page

 

 

    Function CheckFileType(ByVal fileName As String) As Boolean

 

        Dim ext As String = Path.GetExtension(fileName)

 

        Select Case ext.ToLower()

 

            Case ".gif"

 

                Return True

 

            Case ".png"

 

                Return True

 

            Case ".jpg"

 

                Return True

 

            Case ".jpeg"

 

                Return True

 

            Case ".bmp"

 

                Return True

 

            Case Else

 

                Return False

 

        End Select

 

    End Function

 

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

 

        Const bmpW = 300 'New image canvas width

        Const bmpH = 226 'New Image canvas height

 

 

        Dim newWidth As Integer = bmpW

 

        Dim newHeight As Integer = bmpH

 

        'Use the uploaded filename without the '.' extension

 

        Dim upName As String = Mid(FileUpload1.FileName, 1, (InStr(FileUpload1.FileName, ".") - 1))

 

        Dim filePath As String = "~/Upload/" & upName & ".png"

 

        'Create a new Bitmap using the uploaded picture as a Stream

 

        'Set the new bitmap resolution to 72 pixels per inch

 

        Dim upBmp As Bitmap = Bitmap.FromStream(FileUpload1.PostedFile.InputStream)

 

        Dim newBmp As Bitmap = New Bitmap(newWidth, newHeight, Imaging.PixelFormat.Format24bppRgb)

 

        newBmp.SetResolution(72, 72)

 

        'Get the uploaded image width and height

 

        Dim upWidth As Integer = upBmp.Width

 

        Dim upHeight As Integer = upBmp.Height

 

        Dim newX As Integer = 0

 

        Dim newY As Integer = 0

 

        Dim reDuce As Decimal

 

        'Keep the aspect ratio of image the same if not 4:3 and work out the newX and newY positions

 

        'to ensure the image is always in the centre of the canvas vertically and horizontally

 

        If upWidth > upHeight Then 'Landscape picture

 

            reDuce = newWidth / upWidth 'calculate the width percentage reduction as decimal

 

            newHeight = Int(upHeight * reDuce) 'reduce the uploaded image height by the reduce amount

 

            newY = Int((bmpH - newHeight) / 2) 'Position the image centrally down the canvas

 

            newX = 0 'Picture will be full width

 

        ElseIf upWidth < upHeight Then 'Portrait picture

 

            reDuce = newHeight / upHeight 'calculate the height percentage reduction as decimal

 

            newWidth = Int(upWidth * reDuce) 'reduce the uploaded image height by the reduce amount

 

            newX = Int((bmpW - newWidth) / 2) 'Position the image centrally across the canvas

 

            newY = 0 'Picture will be full hieght

 

        ElseIf upWidth = upHeight Then 'square picture

 

            reDuce = newHeight / upHeight 'calculate the height percentage reduction as decimal

 

            newWidth = Int(upWidth * reDuce) 'reduce the uploaded image height by the reduce amount

 

            newX = Int((bmpW - newWidth) / 2) 'Position the image centrally across the canvas

 

            newY = Int((bmpH - newHeight) / 2) 'Position the image centrally down the canvas

 

        End If

 

        'Create a new image from the uploaded picture using the Graphics class

 

        'Clear the graphic and set the background colour to white

 

        'Use Antialias and High Quality Bicubic to maintain a good quality picture

 

        'Save the new bitmap image using 'Png' picture format and the calculated canvas positioning

 

        Dim newGraphic As Graphics = Graphics.FromImage(newBmp)

 

        Try

 

            newGraphic.Clear(Color.White)

 

            newGraphic.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias

 

            newGraphic.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic

 

            newGraphic.DrawImage(upBmp, newX, newY, newWidth, newHeight)

 

            newBmp.Save(MapPath(filePath), Imaging.ImageFormat.Png)

 

            'Show the uploaded resized picture in the image control

 

            Image1.ImageUrl = filePath

 

            Image1.Visible = True

 

        Catch ex As Exception

 

            lblError.Text = ex.ToString

 

        Finally

            MsgBox(filePath.ToString)

 

        End Try

 

 

    End Sub

End Class

 
 
 
 
 
 
 
إعلان ... لأصحاب المتجار فقط - برنامج تنفيذي وليس سورس كود
تحميل برنامج مبيعات وجرد المستودعات

 
 
الصفحة الرئيسية
اتصل بنا
نبذة عن هذا الموقع
خارطة الموقع
مشاريع برمجة متنوعة مفتوحة المصدر
مواضيع ودروس تعليمية
 
 
نظام YAZSYS لإدارة المبيعات