mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
feat: add Sign PDF tool (draw/type/upload signatures, place on a PDF) (#370)
Draw, type, or upload a signature and place resizable/rotatable copies across PDF pages; output flattened server-side with PyMuPDF. Visual electronic signature, not cryptographic. New interactive-sign display mode (pdf.js + Konva) and a custom docs-pool route.
This commit is contained in:
@@ -7,7 +7,7 @@ const { display: pullsDisplay } = await getImagePulls();
|
||||
|
||||
const stats = [
|
||||
{
|
||||
value: "240",
|
||||
value: "241",
|
||||
label: "Processing Tools",
|
||||
sublabel: "Across 5 file modalities",
|
||||
},
|
||||
|
||||
@@ -91,11 +91,11 @@ export const ALTERNATIVES: Alternative[] = [
|
||||
pageTitle: "The Open-Source, Self-Hosted Alternative to Smallpdf",
|
||||
h1: "The open-source, self-hosted alternative to Smallpdf",
|
||||
metaDescription:
|
||||
"Smallpdf uploads your documents to its servers. SnapOtter runs the same PDF tools on yours. 28 PDF tools plus 212 more for image, video, audio, and files. Open source, AGPLv3.",
|
||||
"Smallpdf uploads your documents to its servers. SnapOtter runs the same PDF tools on yours. 29 PDF tools plus 212 more for image, video, audio, and files. Open source, AGPLv3.",
|
||||
intro:
|
||||
"Smallpdf is a cloud PDF suite, so every file you touch goes up to its servers. SnapOtter runs the same kinds of tools on hardware you own, and the file never leaves it.",
|
||||
breadth:
|
||||
"Smallpdf does PDFs. SnapOtter ships 28 PDF tools (merge, split, compress, convert, redact, OCR, and more) and another 212 across image, video, audio, and files, so one stack covers what you'd otherwise spread across several accounts.",
|
||||
"Smallpdf does PDFs. SnapOtter ships 29 PDF tools (merge, split, compress, convert, redact, OCR, and more) and another 212 across image, video, audio, and files, so one stack covers what you'd otherwise spread across several accounts.",
|
||||
competitorOpenSource: false,
|
||||
rows: cloudRows("PDFs", "Subscription, free tier with daily limits", "PDF only"),
|
||||
faqs: [
|
||||
@@ -124,7 +124,7 @@ export const ALTERNATIVES: Alternative[] = [
|
||||
intro:
|
||||
"iLovePDF is a hosted PDF service, which means your documents are uploaded to process them. SnapOtter gives you the same toolset to run yourself, with the file staying on your server.",
|
||||
breadth:
|
||||
"iLovePDF stays inside PDFs. SnapOtter pairs 28 PDF tools with image, video, audio, and file tools, so the same deployment handles a contract, a screen recording, and a podcast edit.",
|
||||
"iLovePDF stays inside PDFs. SnapOtter pairs 29 PDF tools with image, video, audio, and file tools, so the same deployment handles a contract, a screen recording, and a podcast edit.",
|
||||
competitorOpenSource: false,
|
||||
rows: cloudRows("PDFs", "Subscription, free tier with limits", "PDF only"),
|
||||
faqs: [
|
||||
@@ -174,7 +174,7 @@ export const ALTERNATIVES: Alternative[] = [
|
||||
intro:
|
||||
"CloudConvert is a hosted converter, so files are uploaded and conversions are metered. SnapOtter converts across every modality on hardware you own, with no metering and no upload.",
|
||||
breadth:
|
||||
"CloudConvert converts. SnapOtter converts too, across image, video, audio, PDF, and data formats, and then adds compression, editing, OCR, transcription, and pipelines, so conversion is one of 240 things it does.",
|
||||
"CloudConvert converts. SnapOtter converts too, across image, video, audio, PDF, and data formats, and then adds compression, editing, OCR, transcription, and pipelines, so conversion is one of 241 things it does.",
|
||||
competitorOpenSource: false,
|
||||
rows: cloudRows("file conversion", "Pay per conversion / minutes", "Conversion only"),
|
||||
faqs: [
|
||||
@@ -284,7 +284,7 @@ export const ALTERNATIVES: Alternative[] = [
|
||||
},
|
||||
{
|
||||
feature: "Tool count",
|
||||
snapotter: "240",
|
||||
snapotter: "241",
|
||||
competitor: "50+ PDF tools",
|
||||
snapotterWins: true,
|
||||
},
|
||||
@@ -358,7 +358,7 @@ export const ALTERNATIVES: Alternative[] = [
|
||||
},
|
||||
{
|
||||
feature: "Tool count",
|
||||
snapotter: "240",
|
||||
snapotter: "241",
|
||||
competitor: "Conversion-focused",
|
||||
snapotterWins: true,
|
||||
},
|
||||
|
||||
@@ -6795,6 +6795,38 @@ export const TOOL_SEO: Record<string, ToolSeo> = {
|
||||
},
|
||||
],
|
||||
},
|
||||
"sign-pdf": {
|
||||
searchTitle: "Sign a PDF Online Free",
|
||||
longDescription:
|
||||
"Add a signature to a PDF by drawing it, typing it, or uploading a signature image, then drag it onto the page and resize it to fit. This is a visual electronic signature for approvals and sign-off, not a cryptographic certificate-based digital signature. Runs locally on your SnapOtter instance, so contracts and agreements never leave your network.",
|
||||
useCases: [
|
||||
"Signing a contract or agreement before sending it back",
|
||||
"Filling in and signing an onboarding or HR form",
|
||||
"Placing initials on each page of a multi-page document",
|
||||
"Signing an invoice without printing and scanning it",
|
||||
],
|
||||
features: [
|
||||
"Draw, type, or upload a signature image",
|
||||
"Drag to position and resize the signature anywhere on a page",
|
||||
"Add signatures or initials across one page or many",
|
||||
"Reuse saved signatures stored locally in your browser",
|
||||
"Visual electronic signature applied as a non-destructive overlay",
|
||||
],
|
||||
faqs: [
|
||||
{
|
||||
q: "How do I sign a PDF?",
|
||||
a: "Draw your signature, type it, or upload an image of it, then drag it onto the page and resize it to fit. Everything is processed locally on your SnapOtter instance.",
|
||||
},
|
||||
{
|
||||
q: "Is this a cryptographic digital signature?",
|
||||
a: "No. SnapOtter adds a visual electronic signature that you draw, type, or upload and place on the page. It does not apply a cryptographic certificate-based digital signature or embed a PKI certificate, so use a dedicated PKI tool if you need a tamper-evident certified signature.",
|
||||
},
|
||||
{
|
||||
q: "Are my signed documents kept private?",
|
||||
a: "Yes. SnapOtter signs PDFs entirely on your self-hosted instance, so your documents and signatures are never uploaded to an external server or cloud service.",
|
||||
},
|
||||
],
|
||||
},
|
||||
"pdf-page-numbers": {
|
||||
searchTitle: "Add Page Numbers to PDF Free",
|
||||
longDescription:
|
||||
|
||||
@@ -50,7 +50,7 @@ const allJsonLd = [breadcrumbJsonLd, itemListJsonLd];
|
||||
</h1>
|
||||
<p class="mx-auto mt-5 max-w-2xl text-lg leading-relaxed text-muted md:text-xl">
|
||||
Most file tools upload your work to someone else's server. SnapOtter runs the same kinds of
|
||||
tools on yours: 240 of them across image, video, audio, PDF, and files, in one self-hosted
|
||||
tools on yours: 241 of them across image, video, audio, PDF, and files, in one self-hosted
|
||||
stack.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user