webForumDet fria alternativet

Slå ihop två bilder

.NET

5 svar · 301 visningar · startad av erka

Medlem sedan dec. 19996 522 inlägg
Frågan#1

Jag har lite problem och vet inte hur jag ska ens börja för att lösa det, sökt på google och msdn men inte funnit något som kan leda mig en bit in på vägen.

Jag har en bild som jag förminskar, skapar en thumbnail av, nu vill jag ta denna nyskapade thumbnail och klista den på en annan bild, med en förskjutning 10 pixlar från vänsterkanten och 4 pixlar från toppen.

Jag hämtar in min ram (filen som bilden ska klistras in på) så här.

Dim TumbNailBakground As System.Drawing.Image = System.Drawing.Image.FromFile(Server.MapPath("Images/Ram.jpg")) 
Dim ThumbNailOutPut as New Bitmap(TumbNailBakground, 135, 104)

Bilden som ska in över denna bild hämtar jag in på följande sätt

Dim ThumbNailSource As System.Drawing.Image = System.Drawing.Image.FromFile(ImgFullPath) 
Dim ThumbNailSourceOutput as New Bitmap(ThumbNailSource, 120, 90)

Så min fråga är, hur klistrar jag in ThumbNailSourceOutput i ThumbNailOutPut, 10 pixlar från vänsterkanten och 4 pixlar från toppen av ThumbNailOutPut?

Mycket tacksam för svar, förslag, kommentarer då jag har rivit mitt 3 mm långa hår i timmar nu

Medlem sedan dec. 2000399 inlägg
Medlem sedan dec. 19996 522 inlägg
#3

Tack men såg inte mycket där. Får tänka lite hårdare imorgon kanske

Medlem sedan dec. 19996 522 inlägg
#4

Ibland är man så korkad, löste det hela genom

Public Function SaveThumbNailToDisk(ImgName As String, ImgFolderPath As String, ImgFullPath As String)
	'### DENNA FUNKTION SKAPAR EN THUMBNAIL AV EN ORIGINAL RAM, SAMT LÄGGER PÅ EN FÖRMINSKAS THUMBNAIL
	'### Sätt JPEG komprimeringen
	Dim FilePath As String = Server.MapPath("Images/"& ImgFolderPath &"/Thumb_"& ImgName ) 
	Dim EncParams As EncoderParameters = New EncoderParameters(1) 
	Dim EncParameter As EncoderParameter = new EncoderParameter(System.drawing.imaging.Encoder.Quality,100) 
	EncParams.Param(0) = EncParameter 
	Dim objImageCodecInfo() As ImageCodecInfo = ImageCodecInfo.GetImageEncoders 

	'### hämta in bilden som ska förminskas och klistras in på ramen
	Dim ThumbNailSource As System.Drawing.Image = System.Drawing.Image.FromFile(ImgFullPath) 
		
	'###Hämta ramen, förminska ThumbNailSource, klistra ThumbNailSource på ramen
	Dim TumbNailBakground As System.Drawing.Image = System.Drawing.Image.FromFile(Server.MapPath("Images/Ram.jpg")) 
	Dim objGraphic as Graphics = Graphics.FromImage(TumbNailBakground)
	objGraphic.DrawImage(ThumbNailSource, 10, 5, 120, 90)
	Dim ThumbNailOutPut as New Bitmap(TumbNailBakground, 135, 104) 

	Try 
		ThumbNailOutPut.Save(FilePath,objImageCodecInfo(1), EncParams) 
	Catch e As Exception 
		Throw e 
	End Try 
 
	objGraphic.Dispose()
	ThumbNailSource.Dispose() 
	ThumbNailOutPut.Dispose() 
	TumbNailBakground.Dispose() 
End Function
Medlem sedan dec. 19996 522 inlägg
#5

Ok följdfråga som jag nog inte kan svara på själv. Finns det något möjlighet att kolla följande.

Om en area av en bild innehåller en färg som ligger mellan ett viss intervall.

Jag vill kolla om en bilds fyra hörn består av en ljusfärg eller en mörk. Tacksam

Medlem sedan dec. 19996 522 inlägg
#6

Märkte att min fråga ovan var lite luddig.

För att återknyta till min fråga ovan skickar jag med två bilder.

Jag har en storbild som förminskas, över denna klistrar jag på en genomskinnlig gif bild med en ram (denna ram har rundade kanter som bilden ska ligga innaför). Om den stora bildens kanter är svarta måste jag ha en ram som de runda kanternas skuggor går i mörka färger, är den vit ska ramen ha en vitfärgskala på de runda kanternas skuggor.

Kanske en skitsak men jag vill veta om det går att kolla färgerna i en bild på en vis x,y position.

ramproblem.jpg
278 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
134 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
139 ms — ändringar (db)