ASPJPEG เป็นแชร์แวร์ที่ผลิตโดย Persits ระยะเวลาทดลองใช้งานคือ 30 วัน คุณสามารถดาวน์โหลดได้ที่นี่: http://www.persits.com/aspjpeg.exe หมายเลขเวอร์ชันล่าสุดคือ 1.3
ASPJPEG เป็นองค์ประกอบการประมวลผลภาพที่ทรงพลังมาก คุณสามารถใช้มันเพื่อสร้างภาพขนาดย่อของรูปภาพและเพิ่มลายน้ำให้กับรูปภาพได้อย่างง่ายดาย ต่อไปนี้เป็นคำแนะนำโดยย่อเกี่ยวกับวิธีการใช้งาน:
ก่อนอื่นคุณต้องรันไฟล์ exe ที่ดาวน์โหลดมาเพื่อติดตั้งส่วนประกอบ
1. สร้างภาพขนาดย่อสำหรับรูปภาพ
<% ///' สร้างอินสแตนซ์
ติ่ม Jpeg, เส้นทาง
ตั้ง Jpeg = Server.CreateObject(Persits.Jpeg)
///' ตำแหน่งของภาพ
Path = Server.MapPath (รูปภาพ) & ///// clock.jpg
///' เปิด
JPEG. เปิดเส้นทาง
///' กำหนดขนาดภาพขนาดย่อ (อัตราส่วนตั้งไว้ที่ 50% ที่นี่)
Jpeg.Width = Jpeg.OriginalWidth / 2
Jpeg.Height = Jpeg.OriginalHeight / 2
///' บันทึกภาพขนาดย่อไปยังโฟลเดอร์ที่ระบุ
Jpeg.Save Server.MapPath (รูปภาพ) & ///// clock_small.jpg
///' ออกจากระบบอินสแตนซ์
ตั้ง JPEG = ไม่มีเลย
-
<IMG SRC=images/clock.jpg><P>
<IMG SRC=images/clock_small.jpg>
2. เพิ่มฟังก์ชั่นลายน้ำให้กับรูปภาพ
-
DimJpeg
///' สร้างอินสแตนซ์
ตั้ง Jpeg = Server.CreateObject(Persits.Jpeg)
///' เปิดภาพเป้าหมาย
Jpeg.Open Server.MapPath (รูปภาพ/dodge_viper.jpg)
///' เพิ่มลายน้ำข้อความ
Jpeg.Canvas.Font.Color = &HFF0000///' สีแดง
Jpeg.Canvas.Font.Family = ราชวงศ์ซ่ง
Jpeg.Canvas.Font.Bold = จริง
Jpeg.Canvas.Print 10, 10, ลิขสิทธิ์ (c) Cnmaya.org
///' บันทึกไฟล์
Jpeg.Save Server.MapPath (รูปภาพ/dodge_viper_framed.jpg)
///' ยกเลิกการลงทะเบียนวัตถุ
ตั้ง JPEG = ไม่มีเลย
-
ฉันทำลายน้ำรูปภาพครั้งที่แล้ว แต่เอฟเฟกต์แย่มาก ฉันไม่สามารถทำให้รูปภาพมีพื้นหลังโปร่งใสได้ ถ้าฉันใช้ GIF พื้นหลังโปร่งใส มันจะเติมสีขาวโดยอัตโนมัติ เมื่อใช้ฟังก์ชันเพื่อลบสีบางสี สีของภาพจะไม่บริสุทธิ์เสมอ และผลลัพธ์ที่ได้จะไม่สม่ำเสมอ วันนี้ฉันมีไอเดียและรวมสองสิ่งนี้เข้าด้วยกัน โดยใช้ GIF ที่มีพื้นหลังโปร่งใสและแยกสีพื้นหลังลายน้ำออก และมันก็ได้ผล!
ogvbox.Canvas.Pen.Color = &H000000 ///'// สีของเส้นขอบ
ogvbox.Canvas.Pen.Width = 1 ///'// ความหนาของเส้นขอบ
ogvbox.Canvas.Brush.Solid = False ///'// ว่าจะเติมสีให้กับเส้นขอบรูปภาพหรือไม่
ogvbox.DrawImage ogvbox.Width-210, ogvbox.Height-74, Logobox ,0.3,&HFFFFFF ///'// เพิ่มพิกัดตำแหน่งของรูปภาพ (เพิ่มรูปภาพลายน้ำ) ฉันลบขนาดลายน้ำออกจากขนาดรูปภาพ และเพิ่มลายน้ำที่มุมขวาล่าง ลำดับของพารามิเตอร์คือ: พิกัดแนวนอน พิกัดแนวตั้ง ที่อยู่รูปภาพลายน้ำ ความโปร่งใสของปรอท สีการแยก (&H หมายถึงเลขฐานสิบหก)
ogvbox.Canvas.Bar 0, 0, ogvbox.Width, ogvbox.Height ///'// พิกัดตำแหน่งและขนาดของเส้นขอบรูปภาพ
ogvbox.Save Server.MapPath(ชื่อรูปภาพ) ///'// สร้างไฟล์
/'//------ ดูตัวอย่างและการสร้างลายน้ำของส่วนประกอบ Pollener.comAspJpeg ------ เริ่ม ------
/'สร้างภาพตัวอย่าง: เรียก CreateView (เส้นทางไปยังไฟล์ต้นฉบับ ชื่อไฟล์ตัวอย่าง และเส้นทาง)
ย่อย CreateView (ชื่อรูปภาพ, ชื่อไฟล์ชั่วคราว)
/'กำหนดตัวแปร
Dim PreviewImageFolderName
Dim ogvbox,objFont
กล่องโลโก้สลัว, LogoPath
LogoPath = Server.MapPath(images) & //shuiyin.gif /'//เพิ่มพาธและชื่อไฟล์ของรูปภาพ (ของฉันคือฟอรัม //images//shuiyin.gif)
เลือกกรณีและปัญหา upload_ViewType
กรณีที่ 0
/'---------------------สร้างภาพตัวอย่าง---------------
ตั้ง ogvbox = Server.CreateObject (CreatePreviewImage.cGvbox)
ogvbox.SetSavePreviewImagePath=Server.MapPath(tempFilename) /'แสดงตัวอย่างเส้นทางการจัดเก็บรูปภาพ
ogvbox.SetPreviewImageSize =SetPreviewImageSize /'ดูตัวอย่างความกว้าง
ogvbox.SetImageFile = trim(Server.MapPath(imagename)) /'เส้นทางทางกายภาพของไฟล์ต้นฉบับของ imagename
/'สร้างไฟล์ภาพตัวอย่าง
ถ้า ogvbox.DoImageProcess=false แล้ว
Response.write สร้างข้อผิดพลาดของภาพตัวอย่าง:&ogvbox.GetErrString
สิ้นสุดถ้า
กรณีที่ 1
/'--------------------AspJpegV1.2---------------
ตั้งค่า Logobox = Server.CreateObject (Persits.Jpeg)
//'//ขอแนะนำว่าอย่าใช้ลายน้ำรูปภาพและข้อความพร้อมกัน
Logobox.Open LogoPath /'//อ่านภาพที่เพิ่ม
//'//รีเซ็ตขนาดของรูปภาพ
Logobox.Width = 186 /'//ค่าความกว้าง (พิกเซล) ของรูปภาพที่ใช้เป็นลายน้ำ
Logobox.Height = 52 /'//ค่าความสูง (พิกเซล) ของรูปภาพที่ใช้เป็นลายน้ำ
//'//เพิ่มลายน้ำ
ตั้งค่า ogvbox = Server.CreateObject(Persits.Jpeg)
//'//อ่านไฟล์ต้นฉบับที่จะประมวลผล
ogvbox.Open Trim(Server.MapPath(ชื่อรูปภาพ))
ถ้า ogvbox.OriginalWidth<Cint(ImageWidth) หรือ ogvbox.Originalheight<Cint(ImageHeight) จากนั้น
F_ชื่อมุมมอง=
ตั้ง ogvbox = ไม่มีเลย
ออกจากย่อย
อื่น
IF ImageMode<> และ FileExt<>gif จากนั้น //'//หากคุณเปลี่ยนบรรทัดนี้เป็น IF ImageMode<> จากนั้น คุณสามารถเพิ่มลายน้ำให้กับภาพ GIF ที่อัปโหลดได้ แต่ GIF แบบเคลื่อนไหวเหล่านั้นจะยังคงอยู่หลังจากเพิ่มลายน้ำนี้เท่านั้น เป็นเฟรมแรก โปรดจัดการตามความต้องการของคุณ
//'//เกี่ยวกับการเปลี่ยนแบบอักษรและสีข้อความ
/'//ogvbox.Canvas.Font.Color = &H0000FF /'//สีของข้อความลายน้ำ ให้ป้อนค่าสีหลัง &H
/'//ogvbox.Canvas.Font.Size = 18 /'//ขนาดของข้อความลายน้ำ
/'//ogvbox.Canvas.Font.Family = Arial /'//ชื่อแบบอักษรของข้อความลายน้ำ
/'//ogvbox.Canvas.Font.ShadowColor = &H000000 /'//สีเงาของข้อความลายน้ำ
/'//ogvbox.Canvas.Font.ShadowXoffset = 1 /'//ค่าพิกเซลของเงาข้อความลายน้ำที่ชดเชยไปทางขวา หากคุณป้อนค่าลบ มันจะชดเชยไปทางซ้าย
/'//ogvbox.Canvas.Font.ShadowYoffset = 1 /'//ค่าพิกเซลที่ใช้ชดเชยเงาข้อความลายน้ำลงด้านล่าง หากคุณป้อนค่าลบ ค่าดังกล่าวจะถูกชดเชยไปทางขวา
/'//ogvbox.Canvas.Font.Quality = 3 /'//ความชัดเจนของข้อความลายน้ำมีตั้งแต่ 0 ถึง 4 การเปลี่ยนแปลงมีขนาดไม่ใหญ่มาก ขอแนะนำให้ใช้ 2 หรือ 3
/'//ogvbox.Canvas.Font.Bold = True /'//ไม่ว่าข้อความลายน้ำจะเป็นตัวหนา True=bold False=normal
/'ogvbox.Canvas.Print 10, 10, ImageMode /'//พิกัดเริ่มต้น (พิกเซล) ของข้อความลายน้ำ
ogvbox.Canvas.Pen.Color = &H000000 /'//เพิ่มลายน้ำให้กับสีเส้นขอบของรูปภาพ
ogvbox.Canvas.Pen.Width = 1 /'//เพิ่มความกว้างของเส้นขอบของรูปภาพหลังจากใส่ลายน้ำ
ogvbox.Canvas.Brush.Solid = False /'//ไม่ว่าเส้นขอบจะเต็มไปด้วยสีหรือไม่ก็ตาม คุณสามารถลองใช้ดูผลกระทบเมื่อค่าเป็น True^o^
ogvbox.DrawImage ogvbox.width-186, ogvbox.height-52, Logobox, 0.5 /'//พิกัดเริ่มต้นของภาพลายน้ำ ในที่นี้ ogvbox.width-186, ogvbox.height-52 หมายความว่ารูปภาพอยู่ใน มุมขวาล่างเพราะว่า ความกว้างของรูปผมคือ 186 และความสูงคือ 52 ดังนั้นถ้าเขียนแบบนี้ก็สามารถปรับได้ตามรูปของคุณเองครับ 0.5 หมายถึงความโปร่งใส ในที่นี้ฉันหมายถึงความโปร่งแสง 1 หมายถึงความทึบ คุณสามารถลองใช้ 0.7 หรือ 0.8 เพื่อดูเอฟเฟกต์ก็ได้
ogvbox.Canvas.Bar 0, 0, ogvbox.Width, ogvbox.Height /'//ช่วงลายน้ำที่มีอยู่ สิ่งที่ฉันหมายถึงที่นี่คือคุณสามารถเพิ่มลายน้ำได้ทุกที่ตั้งแต่มุมซ้ายบนไปจนถึงมุมขวาล่างของรูปภาพทั้งหมด
ogvbox.Save Server.MapPath(imagename) /'//สร้างไฟล์รูปภาพโดยเพิ่มลายน้ำตามพารามิเตอร์ข้างต้น
สิ้นสุดถ้า
ogvbox.Width = ความกว้างของรูปภาพ
ogvbox.height = ความสูงของรูปภาพ
/'ogvbox.height = ogvbox.Originalheight*ImageWidth//ogvbox.OriginalWidth
ogvbox.คมชัด 1, 120
ogvbox.Save Server.MapPath(tempFilename) /'//สร้างภาพตัวอย่างของภาพหลังจากเพิ่มลายน้ำ
สิ้นสุดถ้า
ตั้ง Logobox=ไม่มีอะไร
/'//------ ดูตัวอย่างและการสร้างลายน้ำของส่วนประกอบ Pollener.comAspJpeg ------ สิ้นสุด ------