Uses TSPdfEnumerations; {$IFDEF LINUX} separator := "/"; {$ELSE} separator := "\\"; {$ENDIF} alias := ""; path := ""; InitCmdParams(alias, path); output_file := "text_annotation_demo.pdf"; output_file := path + separator + output_file; pdf := new PdfFile(); // use Times-Roman font. font := pdf.GetFont("Times-Roman", "WinAnsiEncoding"); page := pdf.AddPage(); page.SetWidth(400); page.SetHeight(500); page.BeginText(); page.SetFontAndSize(font, 16); page.MoveTextPos(130, 450); page.ShowText("Annotation Demo"); page.EndText(); rect1 := array(50, 350, 150, 400); rect2 := array(210, 350, 350, 400); rect3 := array(50, 250, 150, 300); rect4 := array(210, 250, 350, 300); rect5 := array(50, 150, 150, 200); rect6 := array(210, 150, 350, 200); rect7 := array(50, 50, 150, 100); rect8 := array(210, 50, 350, 100); annotation := page.CreateTextAnnot(rect1, "Annotation with Comment Icon. \n This annotation set to be opened initially.", nil); annotation.TextAnnotSetIcon(TSPdfEnumerations.ANNOT_ICON_COMMENT); annotation.TextAnnotSetOpened(true); annotation := page.CreateTextAnnot(rect2, "Annotation with Key Icon", nil); annotation.TextAnnotSetIcon(TSPdfEnumerations.ANNOT_ICON_PARAGRAPH); annotation := page.CreateTextAnnot(rect3, "Annotation with Note Icon", nil); annotation.TextAnnotSetIcon(TSPdfEnumerations.ANNOT_ICON_NOTE); annotation := page.CreateTextAnnot(rect4, "Annotation with Help Icon", nil); annotation.TextAnnotSetIcon(TSPdfEnumerations.ANNOT_ICON_HELP); annotation := page.CreateTextAnnot(rect5, "Annotation with NewParagraph Icon", nil); annotation.TextAnnotSetIcon(TSPdfEnumerations.ANNOT_ICON_NEW_PARAGRAPH); annotation := page.CreateTextAnnot(rect6, "Annotation with Paragraph Icon", nil); annotation.TextAnnotSetIcon(TSPdfEnumerations.ANNOT_ICON_PARAGRAPH); annotation := page.CreateTextAnnot(rect7, "Annotation with Insert Icon", nil); annotation.TextAnnotSetIcon(TSPdfEnumerations.ANNOT_ICON_INSERT); encoding := pdf.GetEncoder("ISO8859-2"); page.CreateTextAnnot(rect8, "Annotation with ISO8859 text стужвьы", encoding); page.SetFontAndSize(font, 11); page.BeginText(); page.MoveTextPos(rect1[0] + 35, rect1[3] - 20); page.ShowText("Comment Icon."); page.EndText(); page.BeginText(); page.MoveTextPos(rect2[0] + 35, rect2[3] - 20); page.ShowText("Key Icon"); page.EndText(); page.BeginText(); page.MoveTextPos(rect3[0] + 35, rect3[3] - 20); page.ShowText("Note Icon."); page.EndText(); page.BeginText(); page.MoveTextPos(rect4[0] + 35, rect4[3] - 20); page.ShowText("Help Icon"); page.EndText(); page.BeginText(); page.MoveTextPos(rect5[0] + 35, rect5[3] - 20); page.ShowText("NewParagraph Icon"); page.EndText(); page.BeginText(); page.MoveTextPos(rect6[0] + 35, rect6[3] - 20); page.ShowText("Paragraph Icon"); page.EndText(); page.BeginText(); page.MoveTextPos(rect7[0] + 35, rect7[3] - 20); page.ShowText("Insert Icon"); page.EndText(); page.BeginText(); page.MoveTextPos(rect8[0] + 35, rect8[3] - 20); page.ShowText("Text Icon(ISO8859-2 text)"); page.EndText(); // save the document to a file err := pdf.SaveToFile(alias, output_file); echo "SaveToFile::\t", "err := ", format("%x", err), "\toutput_file := ", output_file, "\n"; return;