Avatar billede ravencmp Novice
16. august 2006 - 22:22 Der er 16 kommentarer og
1 løsning

fonts i hjemmesider

Hej
jeg ved ikke helt i hvilket hjemmeside sprog dette skal skrives i...

jeg vil gerne have at nogn af mine tekster på min homepage vises med en bestemt font (freeware) og at hvis gæsten på sitet ikke allerede har denne font på sin maskine så får tilbuddet om at få den installeret lidt på samme måde som hvis ikke man har installeret flash eller lign og så får tilbuddet om at få denne installeret.

Jeg vil jo gerne have at alle ser mit site ens.
Avatar billede thesurfer Nybegynder
16. august 2006 - 23:56 #1
Det kan man ikke.

Du kan skrive:
"
Hvis fonten ikke ligner dette billede [indsæt billede], download http://www.domæne.dk/font.ttf

Du skal genindlæse denne side. Hvis det ikke virker, skal du muligvis genstarte computeren
"
Avatar billede mclemens Nybegynder
17. august 2006 - 01:10 #2
Er det ikke bedre med "skriften" istedet for "fonten" ?
Samt "og trykke F5 (genindlæse)" istedet for blot "genindlæse" ?
- Der er jo også computeranalfabeter der surfer på nettet.

... Tror jeg ville surfe videre når jeg ramte siden ...
Ikke noget negativt lagt i det - jeg har jo ikke har set
siden, men nok noget jeg ville gøre automatisk ... :/
Avatar billede mclemens Nybegynder
17. august 2006 - 01:11 #3
Hmm, og lige en lille høflig smiley til jeg begge
kommentaren kan jo misforståes og det duer ikke :o)
Avatar billede ravencmp Novice
17. august 2006 - 01:22 #4
jamen det er bare ikke dte jeg mener...

det jeg mener er at en form for script der tjekker om den angivne font er installeret på den angivne pc, og hvis ikke popper den op og foreslår at installere den fx via vbscript eller javescript eller lign.
Avatar billede mclemens Nybegynder
17. august 2006 - 01:28 #5
Tror thesurfer har svaret - eller han mangler måske at lægge
et svar, men ventede nok lige lidt med at læggge det for at
se om Olebole eller Roenving kom med et alternativ ...

Jeg hælder til at thesurfer har ret ...

Du kan ikke rode på folks pc - m.h.t. flash checker den om en
extension i browseren er tilgængelig - og flash skal så svare
tilbage, hvis flash ikke svare tilbage fra browseren er flash
ikke installeret (ved ikke hvordan flash checker men tror at
det er på den måde - har aldrig pillet i flash)...

- Ser lige om jeg kan javascripte noget ved gennemløb af
forskellige objects - men tror ikke fonte er tilgængelige
inde i browseren ... men prøver lige ...
Avatar billede mclemens Nybegynder
17. august 2006 - 01:41 #6
Næh, kunne ikke finde noget :/
Avatar billede mclemens Nybegynder
17. august 2006 - 02:07 #7
Avatar billede mclemens Nybegynder
17. august 2006 - 02:08 #8
- rodede alt jeg havde igennem, nitte med fandt de to link ved lidt surfing ...
Avatar billede mclemens Nybegynder
17. august 2006 - 02:12 #9
Kig på det sidste link regner med du kan bruge det?
Avatar billede mclemens Nybegynder
17. august 2006 - 02:39 #10
Fangede lidt af formålet med at måle på en tekst længde og bruge
fallback metoden via flere font defineringer... Synes dog det
virkede relativt indviklet sat op... men har heller ikke læst
igennem om der er nogle bestemte overvejelser der skal
laves ... kodede derfor lige lidt fra bunden med lidt
fra denne her http://www.eksperten.dk/spm/716410
- blot med fallback variation på font samt
check på span's forskellige længde :o)

... Nåh, så kan jeg sove godt :o)

- Hjalp det på problemet ?


body{font-family: "hugga shigga mugga shikka waw waw",sans-serif;}
#test2{font-family:"hugga shigga mugga shikka waw waw",sans-serif;}

^ - De to linjer skal hugga... lige rettes i
til den skrifttype du har ... prøv f.eks.:

body{font-family: arial,sans-serif;}
#test2{font-family:arial,sans-serif;}

... så melder den ikke fejl (hvis du har arial font i browseren)




<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>

<style type="text/css">

body{font-family: "hugga shigga mugga shikka waw waw",sans-serif;}
#test2{font-family:"hugga shigga mugga shikka waw waw",sans-serif;}
#test1{font-family:sans-serif;}
#test{height:0px;overflow:hidden;}

#skrifttype{display:none;}

</style>

<script type="text/javascript">
window.onload=function(){
  tn=document.getElementById("test").childNodes;
  document.getElementById("skrifttype").style.display=(tn[0].offsetWidth==tn[1].offsetWidth)?"block":"none";
alert(tn[0].offsetWidth);alert(tn[1].offsetWidth);
}
</script>

</head><body>

<div id="skrifttype">Du mangler skrifttypen "hugga shigga mugga shikka waw waw" den finder du <a href="http://link..." target="_blank">herinde</a>. Tryk efter installation F5 på tastaturet (opdater) eller luk browseren og åben den igen. Det virker lidt besværligt - men det er fordi at jeg elsker "hugga shigga mugga shikka waw waw" skriftypen ;)</div>

<div id="test"><span id="test1">Dette er en test - om _hvorvidt_ skifttypen er installeret.</span><span id="test2">Dette er en test - om _hvorvidt_ skifttypen er installeret.</span></div></body></html>
Avatar billede thesurfer Nybegynder
17. august 2006 - 09:53 #11
mclemens> Kanon kode i 17/08-2006 02:39:09.. :-)
Kunne man få en forklaring på koden..? :-)
Avatar billede mclemens Nybegynder
17. august 2006 - 12:40 #12
Overså kommentaren her til morgen, her er lige en forklaring ... den alert linje til sidst i window.onload glemte jeg at fjerne (outputter de to span's bredde)




body{font-family: "hugga shigga mugga shikka waw waw",sans-serif;}
- her har vi defineret vores font samt en fall-back font,
det har ikke noget som sådan med scriptet at gøre...


Vi har div'en med id skrifttype,
den er skjult fra start af
#skrifttype{display:none;}


Vi har så et element med 0px i højde og overflow:hidden;
-(overflow også da IE ikke overholder en height definering)
#test{height:0px;overflow:hidden;}

- Inde i denne div har vi så to andre div's den ene har skrifttyperne
#test2{font-family:"hugga shigga mugga shikka waw waw",sans-serif;}

og den anden har
#test1{font-family:sans-serif;}

- Det er her vigtigt at vi er sikre på at den ene de har tilfælles er en
som sikkert er på maskinen (og at den er ens i de to font defineringer).



Så kommer vi så til scriptet :D

window.onload=function(){ /* Funktionen køres når siden er klar / loadet */


  tn=document.getElementById("test").childNodes; /* Vi henter alle objecter i div'en med id="test" */


/* Nedenstående linje er brudt op af hensyn til forklaringen */

  document.getElementById("skrifttype").style.display= /* Skifttype div tildeles en display css definering */
  (tn[0].offsetWidth==tn[1].offsetWidth)?"block":"none"; /* Hvis nu første object i tn (test div'ens objecter) har samme bredde (offsetwidth) som det andet object så bliver div'en vist ellers ikke ... Forklaringen er så at den første skrifttype der er defineret her: #test2{font-family:"hugga shigga mugga shikka waw waw",sans-serif;} sikkert ikke har samme width når tekstlinjen "Dette er en test - om _hvorvidt_ skifttypen er installeret." skrives ind i objectet ... Derfor hvis første object er lig object nr. 2's width er den første skriftype i det ene object ikke tilgængelig og det skal derfor installeres (de to objecter er de 2 span's i test div'en).
   


alert(tn[0].offsetWidth);alert(tn[1].offsetWidth); // <- Den alert skal lige fjernes :)
}
Avatar billede mclemens Nybegynder
17. august 2006 - 12:49 #13
Går volapyk forklaringen an ?
- Muligvis burde jeg også validere på height, men hvis man selv prøver:

#test2{font-family:"hugga shigga mugga shikka waw waw";}
#test1{font-family:sans-serif;}

og så lader alerten stå der - hvis så alert returnerer et forskelligt tal behøves validering på height ikke ... (test2 skal være #test2{font-family:"hugga shigga mugga shikka waw waw",sans-serif;} når man ikke "tester" dette)
Avatar billede mclemens Nybegynder
17. august 2006 - 13:18 #14
[ Kanon kode i 17/08-2006 02:39:09.. :-) ]
Og tak for ros forresten :o)
Avatar billede thesurfer Nybegynder
17. august 2006 - 17:54 #15
mclemens> Det er intet mindre end genialt :-)
Det eneste der kan gå galt (så vidt jeg kan se), er at "hugga shigga mugga shikka waw waw" kan have samme bredde og højde som "sans-serif", som så gør at scriptet altid vil sige, at man skal downloade fonten..

Man skal nok være lidt uheldig, hvis man skulle have det "problem".. :-)
Avatar billede mclemens Nybegynder
17. august 2006 - 20:43 #16
Jeps, og hvis men har problemet når man selv tester i 12:49:23
kan man sammenligne "serif" i den ene med "hugga...","serif"
i den anden (istedet for sans-serif) :o)
Avatar billede mclemens Nybegynder
08. september 2006 - 17:57 #17
Og tak for point :o)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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