PDF

En PDF‑visare som inte överlämnar PDF‑filen

Webbläsarens inbyggda PDF‑visare fungerar genom att ge användaren filen. För ett kontrakt, en medicinsk journal eller ett förseglat anbud är det ofta just det du försöker undvika. Doconut renderar sidor på servern och skickar bilder, så visning och ägande slutar vara samma handling.

0
byte av käll‑PDF skickade till klienten
100%
server‑sidig rendering
1
visare för alla andra format också

Problemet

Tre sätt att visa en PDF, och vad varje alternativ kostar

Servera filen och låt webbläsaren rendera den: det enklaste, och det ger användaren de ursprungliga byten, metadata, inbäddade bilagor och möjligheten att vidarebefordra allt med ett klick.

Skicka en JavaScript‑PDF‑motor: behåller filen i webbläsaren också, lägger till en meningsfull nedladdning i ditt paket, och du får fortfarande skriva verktygsfältet, miniatyrspåret och sökrutan själv.

Rendera på servern och skicka bilder: användaren ser sidorna, filen lämnar aldrig din infrastruktur, och samma mekanism fungerar för Word, Excel, CAD och e‑post — vilket ofta är kravet som kommer två sprintar senare.

Funktioner

Vad visaren gör med en PDF

Paginerade sidbilder

Varje sida rasteriseras på servern och levereras på begäran. Stora dokument öppnas på första sidan istället för efter att hela filen har laddats ner.

Sökning i textlager

Med AdvancedSearch‑pluginet körs fulltextsökning mot PDF:ens textlager, så träffar hamnar på rätt sida med rätt markering.

Miniatyrer och navigering

Ett miniatyrspår, sidhoppar, zoom och anpassning till bredd medföljer widgeten. Ställ in showThumbs och FitType och fortsätt.

Annotationer

Med Annotation‑pluginet: markeringar, kommentarer, stämplar och signaturer, lagras och exporteras av din applikation istället för att bäddas in i källfilen.

Lösenordsskyddade filer

Krypterade PDF‑filer öppnas på servern med ett lösenord som din kod tillhandahåller. Lösenordet når aldrig webbläsaren.

Utskrift under din kontroll

Utskrift är en visarfunktion du kan exponera eller dölja, vilket är ett annat beslut än om användaren får ladda ner originalet.

Integration

Öppna en PDF

Klienten får bara token. Den får aldrig veta filnamnet, lagringsplatsen eller att dokumentet var en PDF snarare än något annat i katalogen.

Stödda filändelser

.pdf
csharp
// Server-side: returns an opaque token, never a path or a URL
app.MapPost("/api/open", async (Viewer viewer) =>
{
    string token = await viewer.OpenDocumentAsync("wwwroot/files/Contract.pdf");
    return Results.Ok(new { token });
});

// For an encrypted PDF, supply the password server-side —
// it is used to decrypt in your process and goes no further.

Detaljer

PDF‑specifika detaljer

  • Sökning i textlager kräver AdvancedSearch‑pluginet; OCR är inte allmänt tillgängligt och bör inte antas för skannade sidor.
  • Annotationer kräver Annotation‑pluginet och lagras av din applikation, inte skrivs tillbaka i käll‑PDF‑filen.
  • Konvertering av PDF till Word, Excel eller en bild kräver Converter‑pluginet och DocumentConverter.ConvertAsync().

Vanliga frågor

Kan användaren fortfarande ladda ner original‑PDF‑filen?

Endast om du bygger det själv. Visaren levererar sidbilder adresserade med en opak token, så att släppa källfilen förblir ett explicit beslut i din egen kod snarare än en bieffekt av att låta någon läsa den.

Fungerar det på skannade PDF‑filer utan textlager?

De renderas bra som bilder, men det finns inget att söka i. OCR levereras endast via AdvancedSearch‑pluginet och är inte allmänt tillgängligt — motorn byggs om, så planera inte kring det idag.

Hur stor PDF kan den hantera?

Sidor renderas och levereras på begäran snarare än alla på en gång, så dokumentlängd påverkar minnet mycket mindre än sidkomplexitet. Mycket tunga vektorsidor är den verkliga kostnadsdrivaren, inte sidantalet.

Prova det med dina egna dokument

En tillfällig licens tar några minuter att begära och körs helt på din egen maskin. De filer som är viktiga är de som redan stör din nuvarande visare.