- Add a link to PDF with an external destination
- Add a link with an internal destination to PDF
- Add a note to PDF
- Add barcodes to PDF
- Add bookmarks to PDF
- Add footer to PDF
- Add simple html text to PDF
- Add hyperlink to PDF
- Add Long Term Validation (LTV) data to an existing signature
- Add multiline text to a PDF document
- Add a rubber stamp annotation with a custom icon
- Add single-line text to PDF
- Add Stamp to PDF
- Add tags to existing PDF
- Add text field to PDF
- Add a Diagonal Watermark to PDF in C# - TallComponents - PDF Library
- pdfkit5 - detailed changes to the API - Tall Components
- Append two or more existing PDF files
- Change the color inside a PDF
- Change the formatting of a numeric field
- Change page orientation PDF
- Clip PDF page content in C#
- .NET Core console app on MacOS
- Convert PDF to plain text
- Convert SVG to PDF
- Create a text annotation in PDF with rich text
- Create formfields in PDF documents
- Create a new digitally signed PDF document
- Create rectangles with rounded corners
- Create tagged PDF
- Create text with decorations
- How to create a tiling for shapes in PDF
- Crop content on a PDF page
- Determine the content bounding box
- Determine if a PDF only contains images
- Digitally sign a PDF form in C# or VB.NET
- Disable submit button after submitting
- How to downscale all images in a PDF
- Download and convert image to PDF
- How to downscale all images in a PDF
- Vector graphics in PDF
- Fill XFA form and export XDP data
- Fill and save dynamic XFA form
- Merge XDP data with dynamic XFA form
- Dynamic XFA
- How to embed files in a PDF document
- Embed TrueType font in PDF
- EMF to PDF as vector image
- Export FDF from PDF form
- Extract embedded files from PDF
- Extract glyph boxes from PDF
- Extract glyphs and sort by reading order
- Extract graphics from PDF
- Extract images from PDF
- Fill in a template PDF document
- Fill PDF form
- Fit image to PDF page
- Flatten Markup Annotation
- Flatten PDF form
- How to generate and export certificates
- How do I extract page destinations from bookmarks?
- Highlight fields in PDF
- How to add autosized text to PDF
- How to sign and verify updates to a PDF document
- Import FDF into PDF
- Licensing and .NET Standard
- Merge PDF files in C# .NET
- How to mirror PDF pages and other shapes
- Layout text with MultilineTextShape
- pdfkit5 and .NET Core
- pdfkit5 .NET Standard API
- Read and write meta data from PDF
- Read PDF tags
- How to reduce PDF file size
- Reduce PDF size
- Remove graphics from PDF
- Remove PDF security settings
- Replace field with image
- Resize PDF pages
- Rotate a PDF page
- How to scale content of PDF
- Search text in PDF
- PDF Viewer Preferences
- Create a custom signature handler to sign and verify PDF documents
- Split PDF pages in C# and VB.NET
- Tagged PDF
- TIFF to PDF C#
- Translate PDF page content
- Use multiple licenses
- Use TrueType font collections
- Write Document to HttpResponse
- Use pdfkit5 with a Xamarin.Forms app
- pdfkit5 and Xamarin
How to add autosized text to PDF
This code sample shows you how you can add a piece of auto-sized text to your PDF document.
This can be done by creating a MultiLineTextShape with a textfragment of size 0 (which means autosize) and setting the boundaries of the text shape.
const string text =
"With PDFKit.NET you can Manipulate existing " +
"PDF documents and forms using a highly intuitive object model. " +
"Add pages, stamp content and fill forms.";
// create a new document
Document document = new Document();
// append a new page (portrait Letter)
bool landscape = false;
Page page = new Page(PageSize.Letter, landscape);
document.Pages.Add(page);
// stamp a multiline text shape
// note that the font size is set to 0 - this will autosize the text
MultilineTextShape multilineText = new MultilineTextShape();
Fragment fragment = new Fragment(text, Font.TimesRoman, 0);
multilineText.Fragments.Add(fragment);
// set boundaries of the text
multilineText.Width = page.Width / 4;
multilineText.Height = 75;
// center
TranslateTransform translate = new TranslateTransform();
multilineText.Transform = translate;
translate.X = (page.Width - multilineText.Width) / 2;
translate.Y = (page.Height - multilineText.Height) / 2 + multilineText.Height;
// add a rectangle shape to visualize the boundary of the text
RectangleShape rectangle = new RectangleShape(
multilineText.X, multilineText.Y - multilineText.Height,
multilineText.Width, multilineText.Height,
null, new SolidBrush(System.Drawing.Color.Salmon));
// add both shapes
page.Overlay.Add(rectangle);
page.Overlay.Add(multilineText);
using (FileStream file = new FileStream(@"..\..\autosizetext.pdf", FileMode.Create, FileAccess.Write))
{
document.Write(file);
}
Const text As String = "With PDFKit.NET you can Manipulate existing " + "PDF documents and forms using a highly intuitive object model. " + "Add pages, stamp content and fill forms."
' create a new document
Dim document As New Document()
' append a new page (portrait Letter)
Dim landscape As Boolean = False
Dim page As New Page(PageSize.Letter, landscape)
document.Pages.Add(page)
' stamp a multiline text shape
' note that the font size is set to 0 - this will autosize the text
Dim multilineText As New MultilineTextShape()
Dim fragment As New Fragment(text, Font.TimesRoman, 0)
multilineText.Fragments.Add(fragment)
' set boundaries of the text
multilineText.Width = page.Width / 4
multilineText.Height = 75
' center
Dim translate As New TranslateTransform()
multilineText.Transform = translate
translate.X = (page.Width - multilineText.Width) / 2
translate.Y = (page.Height - multilineText.Height) / 2 + multilineText.Height
' add a rectangle shape to visualize the boundary of the text
Dim rectangle As New RectangleShape(multilineText.X, multilineText.Y - multilineText.Height, multilineText.Width, multilineText.Height, Nothing, New SolidBrush(System.Drawing.Color.Salmon))
' add both shapes
page.Overlay.Add(rectangle)
page.Overlay.Add(multilineText)
Using file As New FileStream("..\..\autosizetext.pdf", FileMode.Create, FileAccess.Write)
document.Write(file)
End Using