public static void Run() { // ExStart:GetBookmarkPageNumber // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_Bookmarks(); // Create PdfBookmarkEditor PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); // Open PDF file bookmarkEditor.BindPdf(dataDir + "GetBookmarks.pdf"); // Extract bookmarks Aspose.Pdf.Facades.Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); foreach (Aspose.Pdf.Facades.Bookmark bookmark in bookmarks) { string strLevelSeprator = string.Empty; for (int i = 1; i < bookmark.Level; i++) { strLevelSeprator += "----"; } Console.WriteLine("{0}Title: {1}", strLevelSeprator, bookmark.Title); Console.WriteLine("{0}Page Number: {1}", strLevelSeprator, bookmark.PageNumber); Console.WriteLine("{0}Page Action: {1}", strLevelSeprator, bookmark.Action); } // ExEnd:GetBookmarkPageNumber }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create bookmarks Bookmarks bookmarks = new Bookmarks(); Bookmark childBookmark1 = new Bookmark(); childBookmark1.PageNumber = 1; childBookmark1.Title = "First Child"; Bookmark childBookmark2 = new Bookmark(); childBookmark2.PageNumber = 2; childBookmark2.Title = "Second Child"; bookmarks.Add(childBookmark1); bookmarks.Add(childBookmark2); Bookmark bookmark = new Bookmark(); bookmark.Action = "GoTo"; bookmark.PageNumber = 1; bookmark.Title = "Parent"; bookmark.ChildItems = bookmarks; //create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //bind PDF document bookmarkEditor.BindPdf(dataDir+ "input.pdf"); //create bookmarks bookmarkEditor.CreateBookmarks(bookmark); //save updated document bookmarkEditor.Save(dataDir+ "output.pdf"); }
public static void Run() { // ExStart:AddChildBookmark // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Create bookmarks Aspose.Pdf.Facades.Bookmarks bookmarks = new Aspose.Pdf.Facades.Bookmarks(); Bookmark childBookmark1 = new Bookmark(); childBookmark1.PageNumber = 1; childBookmark1.Title = "First Child"; Bookmark childBookmark2 = new Bookmark(); childBookmark2.PageNumber = 2; childBookmark2.Title = "Second Child"; bookmarks.Add(childBookmark1); bookmarks.Add(childBookmark2); Bookmark bookmark = new Bookmark(); bookmark.Action = "GoTo"; bookmark.PageNumber = 1; bookmark.Title = "Parent"; bookmark.ChildItems = bookmarks; // Create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); // Bind PDF document bookmarkEditor.BindPdf(dataDir+ "AddChildBookmark.pdf"); // Create bookmarks bookmarkEditor.CreateBookmarks(bookmark); // Save updated document bookmarkEditor.Save(dataDir+ "AddChildBookmark_out.pdf"); // ExEnd:AddChildBookmark }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir+ "input.pdf"); //create bookmark of all pages bookmarkEditor.CreateBookmarks(System.Drawing.Color.Green, true, true); //save updated PDF file bookmarkEditor.Save(dataDir+ "output.pdf"); }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir+ "input.pdf"); //delete bookmark bookmarkEditor.DeleteBookmarks("Page2"); //save updated PDF file bookmarkEditor.Save(dataDir+ "output.pdf"); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir + "CreateBookmark-Page.pdf"); //create bookmark of a particular page bookmarkEditor.CreateBookmarkOfPage("Bookmark Name", 2); //save updated PDF file bookmarkEditor.Save(dataDir + "CreateBookmark-Page_out.pdf"); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir + "CreateBookmarksAll.pdf"); //create bookmark of all pages bookmarkEditor.CreateBookmarks(); //save updated PDF file bookmarkEditor.Save(dataDir + "Output.pdf"); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir + "DeleteAllBookmarks.pdf"); //delete bookmark bookmarkEditor.DeleteBookmarks(); //save updated PDF file bookmarkEditor.Save(dataDir + "DeleteAllBookmarks_out.pdf"); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir + "UpdateBookmark.pdf"); //update bookmark bookmarkEditor.ModifyBookmarks("New Bookmark", "New Title"); //save updated PDF file bookmarkEditor.Save(dataDir + "UpdateBookmark_out.pdf"); }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //Create PdfBookmarkEditor object PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //Open PDF file bookmarkEditor.BindPdf(dataDir+ "input.pdf"); //Export bookmarks bookmarkEditor.ExportBookmarksToXML(dataDir+ "bookmarks.xml"); //Save updated PDF bookmarkEditor.Save(dataDir+ "output.pdf"); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir + "CreateBookmarks-PagesProperties.pdf"); //create bookmark of all pages bookmarkEditor.CreateBookmarks(System.Drawing.Color.Green, true, true); //save updated PDF file bookmarkEditor.Save(dataDir + "CreateBookmarks-PagesProperties_out.pdf"); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir+ "CreateBookmark-Page.pdf"); //create bookmark of a particular page bookmarkEditor.CreateBookmarkOfPage("Bookmark Name", 2); //save updated PDF file bookmarkEditor.Save(dataDir+ "CreateBookmark-Page_out.pdf"); }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir + "input.pdf"); //update bookmark bookmarkEditor.ModifyBookmarks("New Bookmark", "New Title"); //save updated PDF file bookmarkEditor.Save(dataDir + "output.pdf"); }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //open PDF file bookmarkEditor.BindPdf(dataDir+ "input.pdf"); //import bookmarks bookmarkEditor.ImportBookmarksWithXML(dataDir+ "bookmarks.xml"); //save updated PDF file bookmarkEditor.Save(dataDir+ "output.pdf"); }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir + "input.pdf"); //create bookmark of all pages bookmarkEditor.CreateBookmarks(); //save updated PDF file bookmarkEditor.Save(dataDir + "Output.pdf"); }
public void CreateMissingOutlineLevels() { //ExStart //ExFor:OutlineOptions.CreateMissingOutlineLevels //ExFor:ParagraphFormat.IsHeading //ExFor:PdfSaveOptions.OutlineOptions //ExFor:PdfSaveOptions.SaveFormat //ExSummary:Shows how to create missing outline levels saving the document in PDF. Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Creating TOC entries builder.ParagraphFormat.StyleIdentifier = StyleIdentifier.Heading1; Assert.True(builder.ParagraphFormat.IsHeading); builder.Writeln("Heading 1"); builder.ParagraphFormat.StyleIdentifier = StyleIdentifier.Heading4; builder.Writeln("Heading 1.1.1.1"); builder.Writeln("Heading 1.1.1.2"); builder.ParagraphFormat.StyleIdentifier = StyleIdentifier.Heading9; builder.Writeln("Heading 1.1.1.1.1.1.1.1.1"); builder.Writeln("Heading 1.1.1.1.1.1.1.1.2"); // Create "PdfSaveOptions" with some mandatory parameters // "HeadingsOutlineLevels" specifies how many levels of headings to include in the document outline // "CreateMissingOutlineLevels" determining whether or not to create missing heading levels PdfSaveOptions pdfSaveOptions = new PdfSaveOptions(); pdfSaveOptions.OutlineOptions.HeadingsOutlineLevels = 9; pdfSaveOptions.OutlineOptions.CreateMissingOutlineLevels = true; pdfSaveOptions.SaveFormat = SaveFormat.Pdf; doc.Save(ArtifactsDir + "CreateMissingOutlineLevels.pdf", pdfSaveOptions); //ExEnd #if NETFRAMEWORK || NETSTANDARD2_0 // Bind PDF with Aspose.PDF PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(ArtifactsDir + "CreateMissingOutlineLevels.pdf"); // Get all bookmarks from the document Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); Assert.AreEqual(11, bookmarks.Count); #endif }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir+ "CreateBookmarks-PagesProperties.pdf"); //create bookmark of all pages bookmarkEditor.CreateBookmarks(System.Drawing.Color.Green, true, true); //save updated PDF file bookmarkEditor.Save(dataDir+ "CreateBookmarks-PagesProperties_out.pdf"); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir+ "CreateBookmarksAll.pdf"); //create bookmark of all pages bookmarkEditor.CreateBookmarks(); //save updated PDF file bookmarkEditor.Save(dataDir+ "Output.pdf"); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //Create PdfBookmarkEditor object PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //Open PDF file bookmarkEditor.BindPdf(dataDir + "ExportToXML.pdf"); //Export bookmarks bookmarkEditor.ExportBookmarksToXML(dataDir + "bookmarks.xml"); //Save updated PDF bookmarkEditor.Save(dataDir + "ExportToXML_out.pdf"); }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //Create PdfBookmarkEditor object PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //Open PDF file bookmarkEditor.BindPdf(dataDir + "input.pdf"); //Export bookmarks bookmarkEditor.ExportBookmarksToXML(dataDir + "bookmarks.xml"); //Save updated PDF bookmarkEditor.Save(dataDir + "output.pdf"); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //open PDF file bookmarkEditor.BindPdf(dataDir + "ImportFromXML.pdf"); //import bookmarks bookmarkEditor.ImportBookmarksWithXML(dataDir + "bookmarks.xml"); //save updated PDF file bookmarkEditor.Save(dataDir + "ImportFromXML_out.pdf"); }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //open PDF file bookmarkEditor.BindPdf(dataDir + "input.pdf"); //import bookmarks bookmarkEditor.ImportBookmarksWithXML(dataDir + "bookmarks.xml"); //save updated PDF file bookmarkEditor.Save(dataDir + "output.pdf"); }
public static void Run() { // ExStart:UpdateBookmark // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir+ "UpdateBookmark.pdf"); // Update bookmark bookmarkEditor.ModifyBookmarks("New Bookmark", "New Title"); // Save updated PDF file bookmarkEditor.Save(dataDir+ "UpdateBookmark_out.pdf"); // ExEnd:UpdateBookmark }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir+ "DeleteABookmark.pdf"); //delete bookmark bookmarkEditor.DeleteBookmarks("Page2"); //save updated PDF file bookmarkEditor.Save(dataDir+ "DeleteABookmark_out.pdf"); }
public static void Run() { // ExStart:DeleteAllBookmarks // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir+ "DeleteAllBookmarks.pdf"); // Delete bookmark bookmarkEditor.DeleteBookmarks(); // Save updated PDF file bookmarkEditor.Save(dataDir+ "DeleteAllBookmarks_out.pdf"); // ExEnd:DeleteAllBookmarks }
public static void Run() { // ExStart:DeleteABookmark // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir + "DeleteABookmark.pdf"); // Delete bookmark bookmarkEditor.DeleteBookmarks("Page2"); // Save updated PDF file bookmarkEditor.Save(dataDir + "DeleteABookmark_out_.pdf"); // ExEnd:DeleteABookmark }
public static void Run() { // ExStart:ExportToXML // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Create PdfBookmarkEditor object PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); // Open PDF file bookmarkEditor.BindPdf(dataDir+ "ExportToXML.pdf"); // Export bookmarks bookmarkEditor.ExportBookmarksToXML(dataDir+ "bookmarks.xml"); // Save updated PDF bookmarkEditor.Save(dataDir+ "ExportToXML_out.pdf"); // ExEnd:ExportToXML }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //open PDF file bookmarkEditor.BindPdf(dataDir+ "ImportFromXML.pdf"); //import bookmarks bookmarkEditor.ImportBookmarksWithXML(dataDir+ "bookmarks.xml"); //save updated PDF file bookmarkEditor.Save(dataDir+ "ImportFromXML_out.pdf"); }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create bookmark Bookmark boomark = new Bookmark(); boomark.PageNumber = 1; boomark.Title = "New Bookmark"; //create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //bind PDF document bookmarkEditor.BindPdf(dataDir+ "input.pdf"); //create bookmarks bookmarkEditor.CreateBookmarks(boomark); //save updated document bookmarkEditor.Save(dataDir+ "output.pdf"); }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create PdfBookmarkEditor PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //open PDF file bookmarkEditor.BindPdf(dataDir+ "input.pdf"); //extract bookmarks Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); foreach (Bookmark bookmark in bookmarks) { Console.WriteLine("Title: {0}", bookmark.Title); Console.WriteLine("Page Number: {0}", bookmark.PageNumber); } }
public void CreateMissingOutlineLevels() { //ExStart //ExFor:Saving.PdfSaveOptions.OutlineOptions.CreateMissingOutlineLevels //ExSummary:Shows how to create missing outline levels saving the document in pdf Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Creating TOC entries builder.ParagraphFormat.StyleIdentifier = StyleIdentifier.Heading1; builder.Writeln("Heading 1"); builder.ParagraphFormat.StyleIdentifier = StyleIdentifier.Heading4; builder.Writeln("Heading 1.1.1.1"); builder.Writeln("Heading 1.1.1.2"); builder.ParagraphFormat.StyleIdentifier = StyleIdentifier.Heading9; builder.Writeln("Heading 1.1.1.1.1.1.1.1.1"); builder.Writeln("Heading 1.1.1.1.1.1.1.1.2"); //Create "PdfSaveOptions" with some mandatory parameters //"HeadingsOutlineLevels" specifies how many levels of headings to include in the document outline //"CreateMissingOutlineLevels" determining whether or not to create missing heading levels PdfSaveOptions pdfSaveOptions = new PdfSaveOptions(); pdfSaveOptions.OutlineOptions.HeadingsOutlineLevels = 9; pdfSaveOptions.OutlineOptions.CreateMissingOutlineLevels = true; pdfSaveOptions.SaveFormat = SaveFormat.Pdf; doc.Save(MyDir + @"\Artifacts\CreateMissingOutlineLevels.pdf", pdfSaveOptions); //ExEnd //Bind pdf with Aspose PDF PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(MyDir + @"\Artifacts\CreateMissingOutlineLevels.pdf"); //Get all bookmarks from the document Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); Assert.AreEqual(11, bookmarks.Count); }
public void AddBookmarkWithWhiteSpaces(SaveFormat saveFormat) { Document doc = new Document(); InsertBookmarks(doc); if (saveFormat == SaveFormat.Pdf) { //Save document with pdf save options doc.Save(MyDir + @"\Artifacts\Bookmark_WhiteSpaces.pdf", AddBookmarkSaveOptions(SaveFormat.Pdf)); //Bind pdf with Aspose PDF PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(MyDir + @"\Artifacts\Bookmark_WhiteSpaces.pdf"); //Get all bookmarks from the document Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); Assert.AreEqual(3, bookmarks.Count); //Assert that all the bookmarks title are with witespaces Assert.AreEqual("My Bookmark", bookmarks[0].Title); Assert.AreEqual("Nested Bookmark", bookmarks[1].Title); //Assert that the bookmark title without witespaces Assert.AreEqual("Bookmark_WithoutWhiteSpaces", bookmarks[2].Title); } else { MemoryStream dstStream = new MemoryStream(); doc.Save(dstStream, AddBookmarkSaveOptions(saveFormat)); //Get bookmarks from the document BookmarkCollection bookmarks = doc.Range.Bookmarks; Assert.AreEqual(3, bookmarks.Count); //Assert that all the bookmarks title are with witespaces Assert.AreEqual("My Bookmark", bookmarks[0].Name); Assert.AreEqual("Nested Bookmark", bookmarks[1].Name); //Assert that the bookmark title without witespaces Assert.AreEqual("Bookmark_WithoutWhiteSpaces", bookmarks[2].Name); } }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //create PdfBookmarkEditor PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //open PDF file bookmarkEditor.BindPdf(dataDir + "ExtractBookmarks.pdf"); //extract bookmarks Aspose.Pdf.Facades.Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); foreach (Bookmark bookmark in bookmarks) { Console.WriteLine("Title: {0}", bookmark.Title); Console.WriteLine("Page Number: {0}", bookmark.PageNumber); } }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create PdfBookmarkEditor PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //open PDF file bookmarkEditor.BindPdf(dataDir + "input.pdf"); //extract bookmarks Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); foreach (Bookmark bookmark in bookmarks) { Console.WriteLine("Title: {0}", bookmark.Title); Console.WriteLine("Page Number: {0}", bookmark.PageNumber); } }
/// <summary> /// Adds a bookmark to the first page of each of the given PDFs in the Tuple's byte array, using the string in that Tuple for the /// title of the bookmark. /// </summary> /// <param name="pdf">PDF byte array</param> /// <param name="titleAndPdfs">Tuples of <Bookmark title, PDF byte array></param> /// <returns>PDF byte array</returns> private static byte[] addBookmarksToPdf(byte[] pdf, IEnumerable <Tuple <string, byte[]> > titleAndPdfs) { using (var tmpPdf = new MemoryStream(pdf)) { var bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(tmpPdf); var count = 1; foreach (var titleAndPdf in titleAndPdfs) { bookmarkEditor.CreateBookmarkOfPage(titleAndPdf.Item1, count); count += new PdfFileInfo(new MemoryStream(titleAndPdf.Item2)).NumberOfPages; } using (var addBookmarksStream = new MemoryStream()) { bookmarkEditor.Save(addBookmarksStream); return(addBookmarksStream.ToArray()); } } }
public void AllowToAddBookmarksWithWhiteSpaces() { //ExStart //ExFor:OutlineOptions.BookmarksOutlineLevels //ExFor:BookmarksOutlineLevelCollection.Add(String, Int32) //ExSummary:Shows how adding bookmarks outlines with whitespaces(pdf, xps) Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); //Add bookmarks with whitespaces. MS Word formats (like doc, docx) does not support bookmarks with whitespaces by default //and all whitespaces in the bookmarks were replaced with underscores. If you need to use bookmarks in PDF or XPS outlines, you can use them with whitespaces. builder.StartBookmark("My Bookmark"); builder.Writeln("Text inside a bookmark."); builder.StartBookmark("Nested Bookmark"); builder.Writeln("Text inside a NestedBookmark."); builder.EndBookmark("Nested Bookmark"); builder.Writeln("Text after Nested Bookmark."); builder.EndBookmark("My Bookmark"); //Specify bookmarks outline level. If you are using xps format, just use XpsSaveOptions. PdfSaveOptions pdfSaveOptions = new PdfSaveOptions(); pdfSaveOptions.OutlineOptions.BookmarksOutlineLevels.Add("My Bookmark", 1); pdfSaveOptions.OutlineOptions.BookmarksOutlineLevels.Add("Nested Bookmark", 2); doc.Save(MyDir + @"\Artifacts\Bookmarks.WhiteSpaces Out.pdf", pdfSaveOptions); //ExEnd //Bind pdf with Aspose.Pdf PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(MyDir + @"\Artifacts\Bookmarks.WhiteSpaces Out.pdf"); //Get all bookmarks from the document Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); Assert.AreEqual(2, bookmarks.Count); //Assert that all the bookmarks title are with whitespaces Assert.AreEqual("My Bookmark", bookmarks[0].Title); Assert.AreEqual("Nested Bookmark", bookmarks[1].Title); }
public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); //create bookmark Bookmark boomark = new Bookmark(); boomark.PageNumber = 1; boomark.Title = "New Bookmark"; //create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //bind PDF document bookmarkEditor.BindPdf(dataDir + "AddBookmark.pdf"); //create bookmarks bookmarkEditor.CreateBookmarks(boomark); //save updated document bookmarkEditor.Save(dataDir + "AddBookmark_out.pdf"); }
public static void Run() { // ExStart:AddBookmark // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Create bookmark Bookmark boomark = new Bookmark(); boomark.PageNumber = 1; boomark.Title = "New Bookmark"; // Create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); // Bind PDF document bookmarkEditor.BindPdf(dataDir+ "AddBookmark.pdf"); // Create bookmarks bookmarkEditor.CreateBookmarks(boomark); // Save updated document bookmarkEditor.Save(dataDir+ "AddBookmark_out.pdf"); // ExEnd:AddBookmark }
public static void Run() { // ExStart:ExtractBookmarks // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Create PdfBookmarkEditor PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); // Open PDF file bookmarkEditor.BindPdf(dataDir+ "ExtractBookmarks.pdf"); // Extract bookmarks Aspose.Pdf.Facades.Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); foreach (Bookmark bookmark in bookmarks) { Console.WriteLine("Title: {0}", bookmark.Title); Console.WriteLine("Page Number: {0}", bookmark.PageNumber); } // ExEnd:ExtractBookmarks }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create bookmark Bookmark boomark = new Bookmark(); boomark.PageNumber = 1; boomark.Title = "New Bookmark"; //create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //bind PDF document bookmarkEditor.BindPdf(dataDir + "input.pdf"); //create bookmarks bookmarkEditor.CreateBookmarks(boomark); //save updated document bookmarkEditor.Save(dataDir + "output.pdf"); }
public static void Run() { // ExStart:CreateBookmarkPageRange // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf( dataDir + "CreateBookmark-Page.pdf"); // Bookmark name list string[] bookmarkList = { "First" }; // Page list int[] pageList = { 1 }; // Create bookmark of a range of pages bookmarkEditor.CreateBookmarkOfPage(bookmarkList, pageList); // Save updated PDF file bookmarkEditor.Save( dataDir + "CreateBookmarkPageRange_out.pdf"); // ExEnd:CreateBookmarkPageRange }
public ActionResult <Response> CreateFileWithBK([FromBody] Request request) { try { if (!System.IO.File.Exists(serverDirectory + request.filename)) { throw new Exception("Source File does not Exist"); } string result = "File_With_BK.pdf"; PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(serverDirectory + request.filename); bookmarkEditor.CreateBookmarks(); if (System.IO.File.Exists(serverDirectory + result)) { System.IO.File.Delete(serverDirectory + result); } bookmarkEditor.Save(serverDirectory + result); return(new Response() { FileContent = string.Empty, FileName = result, Message = "File Created successfully", Success = true }); } catch (Exception ex) { return(new Response() { FileContent = string.Empty, FileName = "", Message = "Could not Create file. " + ex.Message, Success = false }); } }
public static void Run() { // ExStart:CreateBookmarkPageRange // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Open document PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(dataDir + "CreateBookmark-Page.pdf"); // Bookmark name list string[] bookmarkList = { "First" }; // Page list int[] pageList = { 1 }; // Create bookmark of a range of pages bookmarkEditor.CreateBookmarkOfPage(bookmarkList, pageList); // Save updated PDF file bookmarkEditor.Save(dataDir + "CreateBookmarkPageRange_out_.pdf"); // ExEnd:CreateBookmarkPageRange }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create PdfBookmarkEditor PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //open PDF file bookmarkEditor.BindPdf(dataDir+ "input.PDF"); //extract bookmarks Aspose.Pdf.Facades.Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); foreach (Aspose.Pdf.Facades.Bookmark bookmark in bookmarks) { // get the title information of bookmark item Console.WriteLine("Title: {0}", bookmark.Title); // get the destination page for bookmark Console.WriteLine("Page Number: {0}", bookmark.PageNumber); // get the information related to associated action with bookmark Console.WriteLine("Bookmark Action: " + bookmark.Action); } }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create PdfBookmarkEditor PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //open PDF file bookmarkEditor.BindPdf(dataDir + "input.PDF"); //extract bookmarks Aspose.Pdf.Facades.Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); foreach (Aspose.Pdf.Facades.Bookmark bookmark in bookmarks) { // get the title information of bookmark item Console.WriteLine("Title: {0}", bookmark.Title); // get the destination page for bookmark Console.WriteLine("Page Number: {0}", bookmark.PageNumber); // get the information related to associated action with bookmark Console.WriteLine("Bookmark Action: " + bookmark.Action); } }
public static void Run() { // ExStart:AddChildBookmark // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Create bookmarks Aspose.Pdf.Facades.Bookmarks bookmarks = new Aspose.Pdf.Facades.Bookmarks(); Bookmark childBookmark1 = new Bookmark(); childBookmark1.PageNumber = 1; childBookmark1.Title = "First Child"; Bookmark childBookmark2 = new Bookmark(); childBookmark2.PageNumber = 2; childBookmark2.Title = "Second Child"; bookmarks.Add(childBookmark1); bookmarks.Add(childBookmark2); Bookmark bookmark = new Bookmark(); bookmark.Action = "GoTo"; bookmark.PageNumber = 1; bookmark.Title = "Parent"; bookmark.ChildItems = bookmarks; // Create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); // Bind PDF document bookmarkEditor.BindPdf(dataDir + "AddChildBookmark.pdf"); // Create bookmarks bookmarkEditor.CreateBookmarks(bookmark); // Save updated document bookmarkEditor.Save(dataDir + "AddChildBookmark_out_.pdf"); // ExEnd:AddChildBookmark }
public static void Run() { // ExStart:GetFromPDF // The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks(); // Create PdfBookmarkEditor PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); // Open PDF file bookmarkEditor.BindPdf(dataDir + "GetFromPDF.PDF"); // Extract bookmarks Aspose.Pdf.Facades.Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); foreach (Aspose.Pdf.Facades.Bookmark bookmark in bookmarks) { // Get the title information of bookmark item Console.WriteLine("Title: {0}", bookmark.Title); // Get the destination page for bookmark Console.WriteLine("Page Number: {0}", bookmark.PageNumber); // Get the information related to associated action with bookmark Console.WriteLine("Bookmark Action: " + bookmark.Action); } // ExEnd:GetFromPDF }
public static void Main() { // The path to the documents directory. string dataDir = Path.GetFullPath("../../../Data/"); //create bookmarks Bookmarks bookmarks = new Bookmarks(); Bookmark childBookmark1 = new Bookmark(); childBookmark1.PageNumber = 1; childBookmark1.Title = "First Child"; Bookmark childBookmark2 = new Bookmark(); childBookmark2.PageNumber = 2; childBookmark2.Title = "Second Child"; bookmarks.Add(childBookmark1); bookmarks.Add(childBookmark2); Bookmark bookmark = new Bookmark(); bookmark.Action = "GoTo"; bookmark.PageNumber = 1; bookmark.Title = "Parent"; bookmark.ChildItems = bookmarks; //create PdfBookmarkEditor class PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); //bind PDF document bookmarkEditor.BindPdf(dataDir + "input.pdf"); //create bookmarks bookmarkEditor.CreateBookmarks(bookmark); //save updated document bookmarkEditor.Save(dataDir + "output.pdf"); }
/// <summary> /// Adds a bookmark to the first page of each of the given PDFs in the Tuple's byte array, using the string in that Tuple for the /// title of the bookmark. /// </summary> /// <param name="pdf">PDF byte array</param> /// <param name="titleAndPdfs">Tuples of <Bookmark title, PDF byte array></param> /// <returns>PDF byte array</returns> private static byte[] addBookmarksToPdf( byte[] pdf, IEnumerable<Tuple<string, byte[]>> titleAndPdfs ) { using( var tmpPdf = new MemoryStream( pdf ) ) { var bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf( tmpPdf ); var count = 1; foreach( var titleAndPdf in titleAndPdfs ) { bookmarkEditor.CreateBookmarkOfPage( titleAndPdf.Item1, count ); count += new PdfFileInfo( new MemoryStream( titleAndPdf.Item2 ) ).NumberOfPages; } using( var addBookmarksStream = new MemoryStream() ) { bookmarkEditor.Save( addBookmarksStream ); return addBookmarksStream.ToArray(); } } }
public ActionResult <Response> CreateFileWithNB([FromBody] Request request) { try { if (!System.IO.File.Exists(serverDirectory + request.filename)) { throw new Exception("Source File does not Exist"); } string result = "File_With_NB.pdf"; PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(serverDirectory + request.filename); // Creating child items of a chapter, in this example, the first child item also include a child item. Bookmark bm11 = new Bookmark(); // Set the action type of BookMark bm11.Action = "GoTo"; // Set the BookMark Destination page bm11.PageNumber = 3; // Set the BookMark title. bm11.Title = "Section - 1.1.1"; Bookmark bm12 = new Bookmark(); // Set the action type of BookMark bm12.Action = "GoTo"; // Set the BookMark Destination page bm12.PageNumber = 3; // Set the BookMark title. bm12.Title = "Section - 2.1.1"; Bookmark bm1 = new Bookmark(); bm1.Action = "GoTo"; bm1.PageNumber = 2; bm1.Title = "Section - 1.1"; Bookmark bm2 = new Bookmark(); bm2.Action = "GoTo"; bm2.PageNumber = 2; bm2.Title = "Section - 2.1"; Aspose.Pdf.Facades.Bookmarks bms1 = new Aspose.Pdf.Facades.Bookmarks(); bms1.Add(bm11); bm1.ChildItems = bms1; Aspose.Pdf.Facades.Bookmarks bms2 = new Aspose.Pdf.Facades.Bookmarks(); bms2.Add(bm12); bm2.ChildItems = bms2; Aspose.Pdf.Facades.Bookmarks bms0 = new Aspose.Pdf.Facades.Bookmarks(); bms0.Add(bm1); Aspose.Pdf.Facades.Bookmarks bms01 = new Aspose.Pdf.Facades.Bookmarks(); bms01.Add(bm2); // Creating a chapter (Parent Level Bookmark) Bookmark bm = new Bookmark(); bm.Action = "GoTo"; bm.PageNumber = 1; bm.Title = "Chapter - 1"; bm.ChildItems = bms0; bookmarkEditor.CreateBookmarks(bm); bm = new Bookmark(); bm.Action = "GoTo"; bm.PageNumber = 1; bm.Title = "Chapter - 2"; bm.ChildItems = bms01; bookmarkEditor.CreateBookmarks(bm); if (System.IO.File.Exists(serverDirectory + result)) { System.IO.File.Delete(serverDirectory + result); } bookmarkEditor.Save(serverDirectory + result); return(new Response() { FileContent = string.Empty, FileName = result, Message = "File Created successfully", Success = true }); } catch (Exception ex) { return(new Response() { FileContent = string.Empty, FileName = "", Message = "Could not Create file. " + ex.Message, Success = false }); } }
public void BookmarkLevels() { //ExStart //ExFor:BookmarksOutlineLevelCollection //ExFor:BookmarksOutlineLevelCollection.Add(String, Int32) //ExFor:BookmarksOutlineLevelCollection.Clear //ExFor:BookmarksOutlineLevelCollection.Contains(System.String) //ExFor:BookmarksOutlineLevelCollection.Count //ExFor:BookmarksOutlineLevelCollection.IndexOfKey(System.String) //ExFor:BookmarksOutlineLevelCollection.Item(System.Int32) //ExFor:BookmarksOutlineLevelCollection.Item(System.String) //ExFor:BookmarksOutlineLevelCollection.Remove(System.String) //ExFor:BookmarksOutlineLevelCollection.RemoveAt(System.Int32) //ExFor:OutlineOptions.BookmarksOutlineLevels //ExSummary:Shows how to set outline levels for bookmarks. Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Insert a bookmark with another bookmark nested inside it. builder.StartBookmark("Bookmark 1"); builder.Writeln("Text inside Bookmark 1."); builder.StartBookmark("Bookmark 2"); builder.Writeln("Text inside Bookmark 1 and 2."); builder.EndBookmark("Bookmark 2"); builder.Writeln("Text inside Bookmark 1."); builder.EndBookmark("Bookmark 1"); // Insert another bookmark. builder.StartBookmark("Bookmark 3"); builder.Writeln("Text inside Bookmark 3."); builder.EndBookmark("Bookmark 3"); // When saving to .pdf, bookmarks can be accessed via a drop-down menu and used as anchors by most readers. // Bookmarks can also have numeric values for outline levels, // enabling lower level outline entries to hide higher-level child entries when collapsed in the reader. PdfSaveOptions pdfSaveOptions = new PdfSaveOptions(); BookmarksOutlineLevelCollection outlineLevels = pdfSaveOptions.OutlineOptions.BookmarksOutlineLevels; outlineLevels.Add("Bookmark 1", 1); outlineLevels.Add("Bookmark 2", 2); outlineLevels.Add("Bookmark 3", 3); Assert.AreEqual(3, outlineLevels.Count); Assert.True(outlineLevels.Contains("Bookmark 1")); Assert.AreEqual(1, outlineLevels[0]); Assert.AreEqual(2, outlineLevels["Bookmark 2"]); Assert.AreEqual(2, outlineLevels.IndexOfKey("Bookmark 3")); // We can remove two elements so that only the outline level designation for "Bookmark 1" is left. outlineLevels.RemoveAt(2); outlineLevels.Remove("Bookmark 2"); // There are nine outline levels. Their numbering will be optimized during the save operation. // In this case, levels "5" and "9" will become "2" and "3". outlineLevels.Add("Bookmark 2", 5); outlineLevels.Add("Bookmark 3", 9); doc.Save(ArtifactsDir + "BookmarksOutlineLevelCollection.BookmarkLevels.pdf", pdfSaveOptions); // Emptying this collection will preserve the bookmarks and put them all on the same outline level. outlineLevels.Clear(); //ExEnd #if NET462 || NETCOREAPP2_1 || JAVA PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(ArtifactsDir + "BookmarksOutlineLevelCollection.BookmarkLevels.pdf"); Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); Assert.AreEqual(3, bookmarks.Count); Assert.AreEqual("Bookmark 1", bookmarks[0].Title); Assert.AreEqual("Bookmark 2", bookmarks[1].Title); Assert.AreEqual("Bookmark 3", bookmarks[2].Title); #endif }
public void BookmarkLevels() { //ExStart //ExFor:BookmarksOutlineLevelCollection //ExFor:BookmarksOutlineLevelCollection.Add(String, Int32) //ExFor:BookmarksOutlineLevelCollection.Clear //ExFor:BookmarksOutlineLevelCollection.Contains(System.String) //ExFor:BookmarksOutlineLevelCollection.Count //ExFor:BookmarksOutlineLevelCollection.IndexOfKey(System.String) //ExFor:BookmarksOutlineLevelCollection.Item(System.Int32) //ExFor:BookmarksOutlineLevelCollection.Item(System.String) //ExFor:BookmarksOutlineLevelCollection.Remove(System.String) //ExFor:BookmarksOutlineLevelCollection.RemoveAt(System.Int32) //ExFor:OutlineOptions.BookmarksOutlineLevels //ExSummary:Shows how to set outline levels for bookmarks. // Open a blank document, create a DocumentBuilder, and use the builder to add some text wrapped inside bookmarks Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Note that whitespaces in bookmark names will be converted into underscores when saved to Microsoft Word formats // such as .doc and .docx, but will be preserved in other formats like .pdf or .xps builder.StartBookmark("Bookmark 1"); builder.Writeln("Text inside Bookmark 1."); builder.StartBookmark("Bookmark 2"); builder.Writeln("Text inside Bookmark 1 and 2."); builder.EndBookmark("Bookmark 2"); builder.Writeln("Text inside Bookmark 1."); builder.EndBookmark("Bookmark 1"); builder.StartBookmark("Bookmark 3"); builder.Writeln("Text inside Bookmark 3."); builder.EndBookmark("Bookmark 3"); // We can specify outline levels for our bookmarks so that they show up in the table of contents and are indented by an amount // of space proportional to the indent level in a SaveOptions object // Some pdf/xps readers such as Google Chrome also allow the collapsing of all higher level bookmarks by adjacent lower level bookmarks // This feature applies to .pdf or .xps file formats, so only their respective SaveOptions subclasses will support it PdfSaveOptions pdfSaveOptions = new PdfSaveOptions(); BookmarksOutlineLevelCollection outlineLevels = pdfSaveOptions.OutlineOptions.BookmarksOutlineLevels; outlineLevels.Add("Bookmark 1", 1); outlineLevels.Add("Bookmark 2", 2); outlineLevels.Add("Bookmark 3", 3); Assert.AreEqual(3, outlineLevels.Count); Assert.True(outlineLevels.Contains("Bookmark 1")); Assert.AreEqual(1, outlineLevels[0]); Assert.AreEqual(2, outlineLevels["Bookmark 2"]); Assert.AreEqual(2, outlineLevels.IndexOfKey("Bookmark 3")); // We can remove two elements so that only the outline level designation for "Bookmark 1" is left outlineLevels.RemoveAt(2); outlineLevels.Remove("Bookmark 2"); // We have 9 bookmark levels to work with, and bookmark levels are also sorted in ascending order, // and get numbered in succession along that order // Practically this means that our three levels "1, 5, 9", will be seen as "1, 2, 3" in the output outlineLevels.Add("Bookmark 2", 5); outlineLevels.Add("Bookmark 3", 9); // Save the document as a .pdf and find links to the bookmarks and their outline levels doc.Save(ArtifactsDir + "BookmarksOutlineLevelCollection.BookmarkLevels.pdf", pdfSaveOptions); // We can empty this dictionary to remove the contents table outlineLevels.Clear(); //ExEnd #if NETFRAMEWORK || NETSTANDARD2_0 // Bind pdf with Aspose.Pdf PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor(); bookmarkEditor.BindPdf(ArtifactsDir + "BookmarksOutlineLevelCollection.BookmarkLevels.pdf"); // Get all bookmarks from the document Bookmarks bookmarks = bookmarkEditor.ExtractBookmarks(); Assert.AreEqual(3, bookmarks.Count); // Assert that all the bookmarks title are with whitespaces Assert.AreEqual("Bookmark 1", bookmarks[0].Title); Assert.AreEqual("Bookmark 2", bookmarks[1].Title); Assert.AreEqual("Bookmark 3", bookmarks[2].Title); #endif }