Det er normalt ikke muligt at vise PDF-filer direkte i en <asp:Image> kontrol, da kontrollen kun understøtter billeder i almindelige billedformater som JPG, PNG, GIF osv.
Hvis du vil vise PDF-filer på en webside, er der flere måder at gøre det på. En mulighed er at bruge et tredjeparts PDF-viewer-plugin, f.eks. Adobe Acrobat Reader eller Foxit Reader, som brugeren skal have installeret på sin computer.
En anden mulighed er at bruge en tredjeparts PDF-viewer-kontrol i dit asp.net projekt, som f.eks. PDF.js eller Syncfusion PDF Viewer. Disse kontroller giver dig mulighed for at vise PDF-filer direkte i en HTML-side ved hjælp af JavaScript.
Her er et eksempel på, hvordan du kan bruge PDF.js til at vise en PDF-fil i en HTML-side:
1 Tilføj følgende script tags i head-sektionen af dit HTML-dokument:
html
<head>
<script src="
https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.11.338/pdf.min.js"></script> <script src="
https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.11.338/pdf.worker.min.js"></script></head>
2 Tilføj følgende HTML-kode, hvor du vil vise PDF-filen:
html
<div>
<canvas id="pdfCanvas"></canvas>
</div>
3 Tilføj følgende JavaScript-kode for at indlæse PDF-filen og vise den i canvas-elementet:
javascript
<script>
// Hent URL'en for PDF-filen fra din database eller hvor du gemmer den.
var pdfUrl = '<%= Eval("Filnavn") %>';
// Indlæs PDF-filen ved hjælp af PDF.js biblioteket.
pdfjsLib.getDocument(pdfUrl).promise.then(function(pdfDoc) {
// Hent den første side af PDF-filen.
pdfDoc.getPage(1).then(function(page) {
// Beregn viewport størrelsen for at skalere PDF-siden til canvas-elementet.
var viewport = page.getViewport({scale: 1});
var canvas = document.getElementById("pdfCanvas");
var context = canvas.getContext("2d");
canvas.height = viewport.height;
canvas.width = viewport.width;
// Tegn PDF-siden i canvas-elementet.
page.render({
canvasContext: context,
viewport: viewport
});
});
});
</script>
Bemærk, at PDF.js biblioteket er afhængig af andre JavaScript-biblioteker, så du skal inkludere disse i din HTML-fil, hvis de ikke allerede er inkluderet. Derudover skal du muligvis justere kodeeksemplet for at passe til dit projekt og dine krav.
----
Alternativt har du brug for at vise PDF-filer i stedet for billeder i din ASP.NET-applikation. Jeg fandt en løsning på Stack Overflow, hvor du kan bruge en tredjeparts PDF Viewer-kontrol til at vise PDF-filer i stedet for billeder. Du kan også bruge en iframe til at vise PDF-filer. Du kan finde mere information om dette på følgende link. Håber det hjælper!
https://stackoverflow.com/questions/17114433/display-pdf-in-image-box-in-asp-net