private static void PrintPage(HPdfPage page, string caption, HPdfFont font, HPdfTransitionStyle type, HPdfPage prev, HPdfPage next) { float r = (float)rand.Next(255) / 255; float g = (float)rand.Next(255) / 255; float b = (float)rand.Next(255) / 255; HPdfRect rect; HPdfDestination dst; HPdfAnnotation annot; page.SetWidth(800); page.SetHeight(600); page.SetRGBFill(r, g, b); page.Rectangle(0, 0, 800, 600); page.Fill(); page.SetRGBFill(1.0f - r, 1.0f - g, 1.0f - b); page.SetFontAndSize(font, 30); page.BeginText(); page.SetTextMatrix(0.8f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f); page.TextOut(50, 530, caption); page.SetTextMatrix(1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f); page.SetFontAndSize(font, 20); page.TextOut(55, 300, "Type \"Ctrl+L\" in order to return from full screen mode."); page.EndText(); page.SetSlideShow(type, 5.0f, 1.0f); page.SetFontAndSize(font, 20); if (next != null) { page.BeginText(); page.TextOut(680, 50, "Next=>"); page.EndText(); rect.left = 680; rect.right = 750; rect.top = 70; rect.bottom = 50; dst = next.CreateDestination(); dst.SetFit(); annot = page.CreateLinkAnnot(rect, dst); annot.SetBorderStyle(0, 0, 0); annot.SetHighlightMode(HPdfAnnotHighlightMode.HPDF_ANNOT_INVERT_BOX); } if (prev != null) { page.BeginText(); page.TextOut(50, 50, "<=Prev"); page.EndText(); rect.left = 50; rect.right = 110; rect.top = 70; rect.bottom = 50; dst = prev.CreateDestination(); dst.SetFit(); annot = page.CreateLinkAnnot(rect, dst); annot.SetBorderStyle(0, 0, 0); annot.SetHighlightMode(HPdfAnnotHighlightMode.HPDF_ANNOT_INVERT_BOX); } }