عند عرض المنتجات في مقدمة الموقع، يتم استخدام الصور المصغرة بشكل عام. انقر للدخول ثم شاهد الصورة الكبيرة.
الصور المصغرة تجلب مشكلتين:
1. إذا تم نقل صورة كبيرة واحدة فقط إلى الخلفية، فلن يتم تثبيت عرض الصورة الكبيرة وارتفاعها إلا عند عرض الصورة المصغرة، ولن يؤدي ذلك إلى تشويه الصورة المصغرة فحسب، بل سيؤدي أيضًا إلى إبطاء سرعة الوصول إلى الصفحة.
2. إذا كانت الخلفية تحمل صورتين في كل مرة، صورة كبيرة وواحدة مصغرة. في هذه الحالة، لا توجد مشكلة في 1، ولكنها ستسبب الكثير من المتاعب لموظفي الواجهة الخلفية. نظرًا لأن موظفي الواجهة الخلفية لا يعرفون بالضرورة كيفية معالجة وإنشاء الصور المصغرة، حتى لو كانوا يعرفون ذلك ويستطيعون معالجته بسرعة، فسيتم إهدار بعض الوقت.
يمكن أن تساعدك التعليمات البرمجية التالية في استخدام مكون AspJpeg لإنشاء صور مصغرة فعليًا وفقًا لنسبة العرض والارتفاع.
تنزيل مكون AspJpeg: http://www.aspjpeg.com/download.html
استخدام مكون AspJpeg: http://www.mydw.cn/tech/1/766.html
رمز التسجيل: 48958-77556-02411
<%
خافت sOriginalPath
sOriginalPath = "images/1.gif"
'يتم الحصول على مسار الصورة الأصلية بشكل عام بعد التحميل، أو
يتم الحصول على Dim من قاعدة البيانات sReturnInfo, sSmallPath 'تقوم الوظيفة بإرجاع المعلومات ومسار الصورة المصغرة
sReturnInfo = BuildSmallPic(sOriginalPath, "images", 100, 100)
Response.اكتب "إرجاع المعلومات:" & sReturnInfo & "<br/>"
إذا كان InStr(sReturnInfo, "Error_") <= 0 إذن
sSmallPath = sReturnInfo 'معلومات الإرجاع هي
'اكتب sSmallPath إلى قاعدة البيانات
'
آخر
الرد.اكتب "خطأ تفصيلي:"
حدد معلومات إرجاع الحالة
الحالة "خطأ_01"
Response.Write "<font color='red'>فشل في إنشاء مكون AspJpeg، ولم يتم تثبيت المكون وتسجيله بشكل صحيح</font>" & "<br/>"
الحالة "خطأ_02"
Response.Write "<font color='red'>الصورة الأصلية غير موجودة، تحقق من القيمة التي تم تمريرها في معلمة s_OriginalPath</font>" & "<br/>"
الحالة "خطأ_03"
Response.Write "<font color='red'>فشل حفظ الصورة المصغرة. الأسباب المحتملة: العنوان الأساسي لحفظ الصورة المصغرة غير موجود، تحقق من القيمة التي تم تمريرها في المعلمة s_OriginalPath؛ لا يوجد إذن كتابة إلى الدليل؛ مساحة القرص غير كافية< /الخط>" و"<br/>"
الحالة "خطأ_آخر"
Response.اكتب "<font color='red'>خطأ غير معروف</font>" و"<br/>"
إنهاء التحديد
الاستجابة.النهاية
نهاية إذا
%>
اسم الملف الأصلي: <%=sOriginalPath%><br/>
اسم ملف الصورة المصغرة: <%=sSmallPath%><br/>
الصورة الأصلية: <img src='<%=sOriginalPath%>' border=0><br/><br/>
الصورة المصغرة: <img src='<%=sSmallPath%>' border=0>
<%
'======================================================================== = =============
'المؤلف: لافانج سونج QQ:25313644
'الوظيفة: إنشاء صور مصغرة بناءً على صور محددة
ملاحظة: "المسارات" المذكورة أدناه هي جميع المسارات النسبية المتعلقة بالملف الذي يستدعي هذه الوظيفة.
"المعلمة:
's_OriginalPath: مثال لمسار الصورة الأصلي: Images/image1.gif
' s_BuildBasePath: المسار الأساسي لتوليد الصور، بغض النظر عما إذا كان ينتهي بـ "/"، على سبيل المثال: الصور أو الصور/
'n_MaxWidth: إنشاء أقصى عرض للصورة
' إذا كانت الصورة المصغرة المعروضة في المقدمة هي 100*100، فهنا n_MaxWidth=100, n_MaxHeight=100.
'n_MaxHeight: إنشاء الحد الأقصى لارتفاع الصورة
"قيمة الإرجاع:
'إرجاع مسار الصورة المصغرة التي تم إنشاؤها
'معالجة الأخطاء:
إذا حدث خطأ أثناء تنفيذ الوظيفة، فسيتم إرجاع رمز الخطأ. يبدأ رمز الخطأ بـ "خطأ".
' Error_01: فشل إنشاء مكون AspJpeg، ولم يتم تثبيت المكون وتسجيله بشكل صحيح.
' Error_02: الصورة الأصلية غير موجودة، تحقق من القيمة التي تم تمريرها في المعلمة s_OriginalPath
' Error_03: فشل حفظ الصورة المصغرة الأسباب المحتملة: العنوان الأساسي لحفظ الصورة المصغرة غير موجود، تحقق من القيمة التي تم تمريرها في معلمة s_OriginalPath؛
' Error_Other: خطأ غير معروف
'مثال على الاتصال:
"Dim sSmallPath" مسار الصورة المصغرة
' sSmallPath = BuildSmallPic("images/image1.gif", "images", 100, 100)
'======================================================================== = =============
الدالة BuildSmallPic(s_OriginalPath, s_BuildBasePath, n_MaxWidth, n_MaxHeight)
خطأ.واضح
على خطأ استئناف التالي
'تحقق مما إذا كان قد تم تسجيل المكون
DimAspJpeg
تعيين AspJpeg = Server.Createobject("Persits.Jpeg")
إذا Err.Number <> 0 ثم
خطأ.واضح
BuildSmallPic = "Error_01"
وظيفة الخروج
End If
'تحقق من وجود الصورة الأصلية
Dims_MapOriginalPath
s_MapOriginalPath = Server.MapPath(s_OriginalPath)
AspJpeg.Open s_MapOriginalPath "افتح الصورة الأصلية."
إذا Err.Number <> 0 ثم
خطأ.واضح
BuildSmallPic = "Error_02"
وظيفة الخروج
End If
'احصل على عرض الصورة المصغرة وارتفاعها بشكل متناسب
Dim n_OriginalWidth, n_OriginalHeight 'عرض الصورة الأصلية وارتفاعها
Dim n_BuildWidth, n_BuildHeight 'عرض الصورة المصغرة، الارتفاع
خافت div1، div2
خافت ن1، ن2
n_OriginalWidth = AspJpeg.Width
n_OriginalHeight = AspJpeg.Height
div1 = n_OriginalWidth / n_OriginalHeight
div2 = n_OriginalHeight / n_OriginalWidth
ن1 = 0
ن2 = 0
إذا كان n_OriginalWidth > n_MaxWidth إذن
n1 = n_OriginalWidth / n_MaxWidth
آخر
n_BuildWidth = n_OriginalWidth
نهاية إذا
إذا كان n_OriginalHeight> n_MaxHeight ثم
n2 = n_OriginalHeight / n_MaxHeight
آخر
n_BuildHeight = n_OriginalHeight
نهاية إذا
إذا كان n1 <> 0 أو n2 <> 0 إذن
إذا n1> n2 ثم
n_BuildWidth = n_MaxWidth
n_BuildHeight = n_MaxWidth * div2
آخر
n_BuildWidth = n_MaxHeight * div1
n_BuildHeight = n_MaxHeight
نهاية إذا
End If
'حدد العرض والارتفاع المراد إنشاؤه
AspJpeg.Width = n_BuildWidth
AspJpeg.Height = n_BuildHeight
'--بدء حفظ الصور المصغرة--
Dim pos، s_OriginalFileName، s_OriginalFileExt 'الموضع، اسم الملف الأصلي، امتداد الملف الأصلي
pos = InStrRev(s_OriginalPath, "/") + 1
s_OriginalFileName = Mid(s_OriginalPath, pos)
pos = InStrRev(s_OriginalFileName, ".")
s_OriginalFileExt = Mid(s_OriginalFileName, pos)
Dim s_MapBuildBasePath, s_MapBuildPath, s_BuildFileName 'المسار المطلق للصور المصغرة، اسم ملف الصورة المصغرة
Dim s_EndFlag 'مثال لعلامة نهاية اسم ملف صورة صغير: إذا كان اسم ملف الصورة الكبير هو "image1.gif" وعلامة النهاية هي "_small"، فإن اسم ملف الصورة الصغير هو "image1_small.gif"
إذا كان Right(s_BuildBasePath, 1) <> "/" ثم s_BuildBasePath = s_BuildBasePath & "/"
s_MapBuildBasePath = Server.MapPath(s_BuildBasePath)
s_EndFlag = "_small" 'يمكن تخصيصه، طالما يمكن تمييز حجم الصورة
s_BuildFileName = استبدال (s_OriginalFileName، s_OriginalFileExt، "") & s_EndFlag & s_OriginalFileExt
s_MapBuildPath = s_MapBuildBasePath & "" & s_BuildFileName
AspJpeg.Save s_MapBuildPath 'حفظ
إذا Err.Number <> 0 ثم
خطأ.واضح
BuildSmallPic = "Error_03"
وظيفة الخروج
نهاية إذا
'--حفظ الصورة المصغرة على القرص
--'تسجيل الخروج من المثيل
تعيين AspJpeg = لا شيء
إذا Err.Number <> 0 ثم
BuildSmallPic = "خطأ_آخر"
خطأ.واضح
نهاية إذا
BuildSmallPic = s_BuildBasePath وs_BuildFileName
وظيفة النهاية
٪>