Avatar billede aerobee Nybegynder
28. september 2005 - 19:41 Der er 4 kommentarer og
1 løsning

ASPImage - Print tekst i bunden af billede

Hejsa.

Jeg sidder og fumler med ASPImage.
Jeg kan sagtens få den til at printe noget tekst på mit billede angivet med X og Y kordinater.
Problemet er jo bare at når jeg så har fået sat X og Y korrekt til det pågældene billede og teksten nu står korrekt nederst i venstre hjørne, så uploader man et andet billede i en anden størrelse og så kan man ikke se teksten, hvilket jo er klart hvis Y er angivet til 400px og billedet kun er 200px.
Spørgsmålet er så, hvordan udskriver jeg en tekst på mit billede med ASPImage sådan at det ALTID står nederst til venstre på billedet ligemeget billedet størrelse?

Kunne forstille mig det er noget med at finde billedets størrelse, (hvilket jeg allerede har gjort) og så ud fra det sige at den skal printe en tekst 1px inde på billede og 5px oppe på billedet fra bunden.. Men hvordan?
Avatar billede cpufan Juniormester
28. september 2005 - 20:29 #1
y = image.maxY - 5
x = 1
Avatar billede aerobee Nybegynder
29. september 2005 - 09:06 #2
Hej cpufan...

Beklager det sene svar, men jeg har nu testet det, og jeg kan ikke få det til at virke. Mit script ser nu således ud:

<%
FileName=request.querystring("FileName")
size=Cint(request.querystring("size"))
PWidth=Cint(request.querystring("Width"))
PHeight=Cint(request.querystring("Height"))
Response.ContentType = "image/jpeg"
'*** get width/height of original image
Set Image = Server.CreateObject("AspImage.Image")
Myfolder ="pics"
Image.LoadImage Request.ServerVariables("APPL_PHYSICAL_PATH")& "\xxxx\images\profile\profil_billede\" & FileName
ImageHeight = Image.MaxY
ImageWidth = Image.MaxX
Image.CreateButton 5,true
Image.ImageFormat = 1
Image.JPEGQuality = 80

Image.AutoSize = false
Image.FontName = "MS Sans Serif"
Image.FontColor = vbRed
Image.Bold = True
Image.FontSize = 12
Image.X = 1
Image.Y = image.maxY - 5
Image.TextOut "www.xxxx.dk", Image.X, Image.Y, true
'Image.FileName = Request.ServerVariables("APPL_PHYSICAL_PATH")& "\xxxx\images\profile\profil_billede\" & FileName
'Image.SaveImage

if size>0 AND ImageWidth > size then
NewHeight = Cint(ImageHeight*size/ImageWidth)
NewWidth = size
Image.ResizeR NewWidth,NewHeight
end if
if PWidth >0 AND ImageWidth > PWidth then
NewHeight = Cint(ImageHeight*PWidth/ImageWidth)
NewWidth = PWidth
Image.ResizeR NewWidth,NewHeight
end if
if PHeight >0 AND ImageHeight > PHeight then
NewWidth = Cint(ImageWidth*PHeight/ImageHeight)
NewHeight = PHeight
Image.ResizeR NewWidth,NewHeight
end if


Response.BinaryWrite Image.Image
Set Image = Nothing
%>
Avatar billede aerobee Nybegynder
29. september 2005 - 09:30 #3
Jeg har fået det til at virke med det her:

'Image.AutoSize = false
Image.FontName = "MS Sans Serif"
Image.FontColor = vbRed
Image.Bold = True
Image.FontSize = 16
Image.X = 1
Image.Y = Image.MaxY = 5
Image.TextOut "www.xxxx.dk", Image.X, Image.Y, true
'Image.FileName = "d:\web\ondate.dk\www\ondate\images\profile\profil_billede\" & FileName
'Image.SaveImage

Problemet er bare at teksten bliver printet i øverst venstre hjørne, men det skal printes nederst i venstre hjørne.
Avatar billede aerobee Nybegynder
29. september 2005 - 09:34 #4
Kan det også lade sig gøre sådan at teksten der bliver printet på billedet bliver skrevet med en skriftstørrelse der passer til billedets størrelse?

Eksempel.
Hvis billedet nu er 800x600 så passer en skriftstørrelse på 18px, men hvis billedet kun er 400x200 ja så er skriftstørrelsen alt for stor.
Avatar billede aerobee Nybegynder
03. oktober 2005 - 20:09 #5
Fandt ingen løsning
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester