private void ReadDocumentStructure(PDFDocument document, PDFParseDocumentStructureOptions parseDocumentStructureOptions) { _readDocumentStructureLabel.Visible = true; _readDocumentStructureValueLabel.Visible = true; Application.DoEvents(); try { if (parseDocumentStructureOptions != PDFParseDocumentStructureOptions.None) { using (WaitCursor wait = new WaitCursor()) { document.ParseDocumentStructure(parseDocumentStructureOptions); _readDocumentStructureValueLabel.Text = DemosGlobalization.GetResxString(GetType(), "resx_Finished"); } } else { _readDocumentStructureValueLabel.Text = DemosGlobalization.GetResxString(GetType(), "resx_Skipped"); } } catch (Exception ex) { _readDocumentStructureValueLabel.Text = DemosGlobalization.GetResxString(GetType(), "resx_Error"); AddError(DemosGlobalization.GetResxString(GetType(), "resx_ReadingDocumentStructure"), ex); } Application.DoEvents(); }
public bool Run(PDFDocument document, PDFParseDocumentStructureOptions parseDocumentStructureOptions, PDFParsePagesOptions parsePagesOptions, bool parseChunks) { // - Read the document structure ReadDocumentStructure(document, parseDocumentStructureOptions); // - Parse the document objects ParseObjects(document, parsePagesOptions, parseChunks); if (_errorsListBox.Items.Count > 0) { _errorsLabel.Visible = true; _copyToClipboardButton.Visible = true; return(false); } return(true); }
public void Apply() { // Get read object options // Get resolution ResolutionItem resolutionItem = (ResolutionItem)_resolutionComboBox.SelectedItem; _resolution = resolutionItem.Value; _parseDocumentStructOptions = PDFParseDocumentStructureOptions.None; if (_readBookmarksCheckBox.Checked) { _parseDocumentStructOptions |= PDFParseDocumentStructureOptions.Bookmarks; } if (_readFontsCheckBox.Checked) { _parseDocumentStructOptions |= PDFParseDocumentStructureOptions.Fonts; } if (_readInternalLinksCheckBox.Checked) { _parseDocumentStructOptions |= PDFParseDocumentStructureOptions.InternalLinks; } _parsePagesOptions = PDFParsePagesOptions.None; if (_parseObjectsCheckBox.Checked) { _parsePagesOptions = PDFParsePagesOptions.AllIgnoreWhiteSpaces; } if (!_parseDigitalSignaturesCheckBox.Checked) { _parsePagesOptions &= ~PDFParsePagesOptions.Signatures; } _parseChunks = _parseChunksCheckBox.Checked; _lastResolution = _resolution; _lastParseDocumentStructOptions = _parseDocumentStructOptions; _lastParsePagesOptions = _parsePagesOptions; _lastParseChunks = _parseChunks; }
private void LoadPDFFile(string fileName) { try { using (RasterCodecs codecs = new RasterCodecs()) { codecs.Options.RasterizeDocument.Load.XResolution = 300; codecs.Options.RasterizeDocument.Load.YResolution = 300; codecs.Options.Pdf.Load.HideFormFields = true; if (_pdfDocument != null) { _pdfDocument.Dispose(); _pdfDocument = null; } _pdfDocument = new PDFDocument(fileName); PDFParseDocumentStructureOptions _parseDocumentStructOptions = PDFParseDocumentStructureOptions.InternalLinks | PDFParseDocumentStructureOptions.Bookmarks; _pdfDocument.ParseDocumentStructure(_parseDocumentStructOptions); PDFDocumentHelper.LoadPDFDocument(codecs, _pdfDocument, _imageList); // Reset current page index value. _currentPageIndex = 0; _imageList.Items[_currentPageIndex].IsSelected = true; } } catch (Exception ex) { Messager.ShowError(this, ex.Message); } finally { UpdateControls(); } }