ThumbnailsContainer Property (original) (raw)

Summary

Parent container of the thumbnails part of the document viewer

Syntax

public Control ThumbnailsContainer { get; set; } 

public: property System::Windows::Forms::Control^ ThumbnailsContainer { System::Windows::Forms::Control^ get() void set(System::Windows::Forms::Control^ value) }

Property Value

The parent container of the thumbnails part of the document viewer.

Example

using Leadtools; using Leadtools.Controls; using Leadtools.Document; using Leadtools.Document.Viewer; using Leadtools.Codecs; using Leadtools.Caching; using Leadtools.Annotations.Engine; using Leadtools.Ocr; public void DocumentViewer_Example() { // New Form to be used as our application var form = new MyForm(); form.ShowDialog(); } class MyForm : Form { public MyForm() { this.Size = new Size(800, 800); this.Text = "LEADTOOLS Document Viewer Example"; } protected override void OnLoad(EventArgs e) { if (!DesignMode) { // Init OCR. This is optional and not required for the PDF document we are loading. // But if image documents are loaded and text functionality is used, then we need OCR _ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD); _ocrEngine.Startup(null, null, null, @"C:\LEADTOOLS22\Bin\Common\OcrLEADRuntime"); Init(); } base.OnLoad(e); } // Our document viewer instance private DocumentViewer _documentViewer; // Optional OCR engine to use in the example private IOcrEngine _ocrEngine; private void Init() { // Initialize the user interface InitUI(); // Init the cache. This is optional, but it can speed up viewing of large documents // if not needed, remove this section DocumentFactory.Cache = new FileCache(); // Init the document viewer, pass along the panels var createOptions = new DocumentViewerCreateOptions { // The middle panel for the view ViewContainer = this.Controls.Find("middlePanel", false)[0], // The left panel for the thumbnails ThumbnailsContainer = this.Controls.Find("leftPanel", false)[0], // The right panel is for bookmarks BookmarksContainer = this.Controls.Find("rightPanel", false)[0], // Not using annotations for now UseAnnotations = false }; // Create the document viewer _documentViewer = DocumentViewerFactory.CreateDocumentViewer(createOptions); // We prefer SVG viewing _documentViewer.View.PreferredItemType = DocumentViewerItemType.Svg; // Load a document var fileName = @"C:\LEADTOOLS22\Resources\Images\Leadtools.pdf"; var document = DocumentFactory.LoadFromFile( fileName, new LoadDocumentOptions { UseCache = DocumentFactory.Cache != null }); _documentViewer.Operation += (sender, e) => { if (e.Operation == DocumentViewerOperation.LoadingBookmarks) { // Disable the bookmarks when we are loading, enable when we are done var rightPanel = this.Controls.Find("rightPanel", true)[0]; if (rightPanel.InvokeRequired) { rightPanel.Invoke((MethodInvoker)delegate { rightPanel.Enabled = e.IsPostOperation; }); } else { rightPanel.Enabled = e.IsPostOperation; } } }; // If we have an OCR engine, use it document.Text.OcrEngine = _ocrEngine; // Set it in the viewer _documentViewer.SetDocument(document); // Run pan/zoom var interactiveComboBox = this.Controls.Find("interactiveComboBox", true)[0] as ComboBox; interactiveComboBox.SelectedItem = DocumentViewerCommands.InteractivePanZoom; } private void InitUI() { // Add a panel on the left for the document viewer thumbnails part var leftPanel = new Panel(); leftPanel.Name = "leftPanel"; leftPanel.Width = 200; leftPanel.Dock = DockStyle.Left; leftPanel.BackColor = Color.Gray; leftPanel.BorderStyle = BorderStyle.FixedSingle; this.Controls.Add(leftPanel); // Add a panel to the right, this will work for the bookmarks or annotations part var rightPanel = new Panel(); rightPanel.Name = "rightPanel"; rightPanel.Width = 200; rightPanel.Dock = DockStyle.Right; rightPanel.BackColor = Color.LightBlue; rightPanel.BorderStyle = BorderStyle.FixedSingle; this.Controls.Add(rightPanel); // Add a panel to fill the rest, for the document viewer var middlePanel = new Panel(); middlePanel.Name = "middlePanel"; middlePanel.BackColor = Color.DarkGray; middlePanel.BorderStyle = BorderStyle.None; middlePanel.Dock = DockStyle.Fill; this.Controls.Add(middlePanel); // Add a top panel to host our application controls var topPanel = new Panel(); topPanel.Name = "topPanel"; topPanel.Height = 100; topPanel.Dock = DockStyle.Top; topPanel.BorderStyle = BorderStyle.FixedSingle; this.Controls.Add(topPanel); middlePanel.BringToFront(); // Add buttons for the UI // Combo box for interactive modes var interactiveComboBox = new ComboBox(); interactiveComboBox.Name = "interactiveComboBox"; interactiveComboBox.DropDownStyle = ComboBoxStyle.DropDownList; // The command names for the items so we can just run them interactiveComboBox.Items.Add(DocumentViewerCommands.InteractivePanZoom); interactiveComboBox.Items.Add(DocumentViewerCommands.InteractiveSelectText); interactiveComboBox.SelectedIndexChanged += (sender, e) => { var commandName = interactiveComboBox.SelectedItem as string; _documentViewer.Commands.Run(commandName); }; topPanel.Controls.Add(interactiveComboBox); // Generic label for information used by the examples var infoLabel = new Label(); infoLabel.Name = "infoLabel"; infoLabel.Text = "Info..."; infoLabel.AutoSize = false; infoLabel.Width = 400; infoLabel.Left = interactiveComboBox.Right + 20; topPanel.Controls.Add(infoLabel); var exampleButton = new Button(); exampleButton.Top = interactiveComboBox.Bottom + 2; exampleButton.Name = "exampleButton"; exampleButton.Text = "&Example"; exampleButton.Click += (sender, e) => Example(exampleButton); topPanel.Controls.Add(exampleButton); } private void Example(Button exampleButton) { // Add the example code here Console.WriteLine(this + " Ready"); } }