webForumDet fria alternativet

Print knapp som pekar mot en PDF ?

HTML & CSS

6 svar · 533 visningar · startad av Tobbs

Medlem sedan feb. 201132 inlägg
Frågan#1

Hejsan.
Jag försöker lösa en liten sak som jag inte får kontroll på.
Jo, jag vill ha en "skrivut knapp" men när man trycker ska skrivaren skriva ut en annan sida eller pdf. Inte det man ser på skärmen.
Går det att lösa ?

Medlem sedan juni 20019 519 inlägg
#2

med knapp så menar du ett formulär knapp eller en stylad a-element? det är ju bara att länka till din pdf fil om det är ett a-element, annars få du ha ett formulär som postar till samma pdf.

Om du vill att länken skall börja skriva ut PDF:en direkt så är svaret nej, det gå inte att skriva ut ett dokument automatiskt, PDF öppnas av Adobe Reader och har ingen koppling till webbsidan.

Medlem sedan juni 200032 967 inlägg
#3

Jag hade löst det med @media print i css:en. Du kan styra exakt vilket av sidans innehåll du vill skriva ut (eller till och med skriva ut innehåll som inte syns i webbläsaren.)

http://www.w3.org/TR/CSS2/media.html

Medlem sedan feb. 201132 inlägg
#4

Vart i denna kod ska jag lägga in så en annan sida printas ut och inte befintlig sida som finns på skärmen ?

<html>
<head>
<script type="text/javascript">
function printpage()
{
window.print();
}
</script>
</head>
<body>

<input type="button" value="Print this page" onclick="printpage()" />

</body>
</html>

Medlem sedan juni 200032 967 inlägg
#5

Med ledning av länken jag postade och helt utan att testa:

<html>
<head>
<style type="text/css">
@media print {
  #visiblecontent { display:none; }
  #printedcontent { display:block; }
}
</style>
<script type="text/javascript">
function printpage()
{
window.print();
}
</script>
</head>
<body>

<div id="visiblecontent">

<input type="button" value="Print this page" onclick="printpage()" />

</div>

<div id="printedcontent" style="display:none;">

Här är allt som skrivs ut när man väljer "print" - det andra döljs.

</div>

</body>
</html>
Medlem sedan juni 20019 519 inlägg
#6

Tobbs skrev:

Vart i denna kod ska jag lägga in så en annan sida printas ut och inte befintlig sida som finns på skärmen ?

<html>
<head>
<script type="text/javascript">
function printpage()
{
window.print();
}
</script>
</head>
<body>

<input type="button" value="Print this page" onclick="printpage()" />

</body>
</html>

window.print byter du ut till window.location = "url-till-print-version.html";

och på sidan du har du window.print() efter sidan har laddads klart.

Eller så kör du som @nders säger och sätter en print css för sidan.

Medlem sedan feb. 201132 inlägg
#7

Tusen tack grabbar jag har fått det att fungera...
=O)

283 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
147 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
149 ms — ändringar (db)