Débuter avec pdf
Installation ou configuration
Pour afficher un pdf, vous pouvez [télécharger Adobe Reader gratuitement][1] . Vous pouvez créer des fichiers PDF par programme à l’aide de, par exemple en utilisant [iTextSharp][2], [jsPDF][3] ou [PDFSharp][4] (il existe d’autres bibliothèques disponibles)
[1] : https://get.adobe.com/reader/ [2] : http://sourceforge.net/projects/itextsharp/ [3] : https://github.com/MrRio/jsPDF [4] : http://pdfsharp.codeplex.com/
Serveur PDFTK pour la manipulation de PDF
Installez PDFTK Server à partir de https://www.pdflabs.com/tools/pdftk-server/
PDFtk Server est un outil en ligne de commande qui peut :
• Merge PDF Documents or Collate PDF Page Scans
• Split PDF Pages into a New Document
• Rotate PDF Documents or Pages
• Decrypt Input as Necessary (Password Required)
• Encrypt Output as Desired
• Fill PDF Forms with X/FDF Data and/or Flatten Forms
• Generate FDF Data Stencils from PDF Forms
• Apply a Background Watermark or a Foreground Stamp
• Report PDF Metrics, Bookmarks and Metadata
• Add/Update PDF Bookmarks or Metadata
• Attach Files to PDF Pages or the PDF Document
• Unpack PDF Attachments
• Burst a PDF Document into Single Pages
• Uncompress and Re-Compress Page Streams
• Repair Corrupted PDF (Where Possible)
PDFtk Server ne nécessite pas Adobe Acrobat ou Reader, et il fonctionne sous Windows, Mac OS X et Linux.
Assembler les pages numérisées
pdftk A=even.pdf B=odd.pdf shuffle A B output collated.pdf
ou si impair.pdf est dans l’ordre inverse :
pdftk A=even.pdf B=odd.pdf shuffle A Bend-1 output collated.pdf
Décrypter un PDF
pdftk secured.pdf input_pw foopass output unsecured.pdf
Crypter un PDF en utilisant une force de 128 bits (valeur par défaut), refuser toutes les autorisations (valeur par défaut)
pdftk 1.pdf output 1.128.pdf owner_pw foopass
Comme ci-dessus, sauf que le mot de passe baz doit également être utilisé pour ouvrir le PDF de sortie
pdftk 1.pdf output 1.128.pdf owner_pw foo user_pw baz
Comme ci-dessus, sauf que l’impression est autorisée (une fois le PDF ouvert)
pdftk 1.pdf output 1.128.pdf owner_pw foo user_pw baz allow printing
Joindre in1.pdf et in2.pdf dans un nouveau PDF, out1.pdf
pdftk in1.pdf in2.pdf cat output out1.pdf
ou (à l’aide des poignées) :
pdftk A=in1.pdf B=in2.pdf cat A B output out1.pdf
ou (en utilisant des caractères génériques) :
pdftk *.pdf cat output combined.pdf
Supprimer la page 13 de in1.pdf pour créer out1.pdf
pdftk in.pdf cat 1-12 14-end output out1.pdf
ou:
pdftk A=in1.pdf cat A1-12 A14-end output out1.pdf
Exemple de code de pdfsharp.net
[Code source][1] [Voir la sortie ici][2]
using System;
using System.Diagnostics;
using System.IO;
using PdfSharp;
using PdfSharp.Drawing;
using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;
namespace HelloWorld
{
/// <summary>
/// This sample is the obligatory Hello World program.
/// </summary>
class Program
{
static void Main(string[] args)
{
// Create a new PDF document
PdfDocument document = new PdfDocument();
document.Info.Title = "Created with PDFsharp";
// Create an empty page
PdfPage page = document.AddPage();
// Get an XGraphics object for drawing
XGraphics gfx = XGraphics.FromPdfPage(page);
// Create a font
XFont font = new XFont("Verdana", 20, XFontStyle.BoldItalic);
// Draw the text
gfx.DrawString("Hello, World!", font, XBrushes.Black,
new XRect(0, 0, page.Width, page.Height),
XStringFormats.Center);
// Save the document...
const string filename = "HelloWorld.pdf";
document.Save(filename);
// ...and start a viewer.
Process.Start(filename);
}
}
}
[1] : http://www.pdfsharp.net/wiki/HelloWorld-sample.ashx [2] : http://www.pdfsharp.net/wiki/GetFile.aspx?File=%2FHelloWorld%2FHelloWorld.pdf