Oui, il est possible de capturer des div sous forme de PDF dans JS. Vous pouvez vérifier la solution fournie par https://grabz.it . Ils ont une API JavaScript agréable et propre qui vous permettra de capturer le contenu d'un seul élément HTML tel qu'un div ou un span.
Donc, vous aurez besoin de l' application + clé et du SDK gratuit . Son utilisation est la suivante:
Disons que vous avez un HTML:
<div id="features">
<h4>Acme Camera</h4>
<label>Price</label>$399<br />
<label>Rating</label>4.5 out of 5
</div>
<p>Cras ut velit sed purus porttitor aliquam. Nulla tristique magna ac libero tempor, ac vestibulum felisvulput ate. Nam ut velit eget
risus porttitor tristique at ac diam. Sed nisi risus, rutrum a metus suscipit, euismod tristique nulla. Etiam venenatis rutrum risus at
blandit. In hac habitasse platea dictumst. Suspendisse potenti. Phasellus eget vehicula felis.</p>
Pour capturer ce qui se trouve sous l'identifiant des fonctionnalités, vous devrez:
<script type="text/javascript" src="grabzit.min.js"></script>
<script type="text/javascript">
GrabzIt("KEY", "SECRET").ConvertURL("http://www.example.com/my-page.html",
{"target": "#features", "format": "pdf"}).Create();
</script>
Vous devez remplacer le http://www.example.com/my-page.html
par votre URL cible et #feature
par votre sélecteur CSS.
C'est tout. Désormais, lorsque la page est chargée, une capture d'écran d'image sera désormais créée au même emplacement que la balise de script, qui contiendra tout le contenu des fonctionnalités div et rien d'autre.
Il existe d'autres configurations et personnalisations que vous pouvez faire pour le mécanisme div-screenshot, veuillez les vérifier ici