Ejemplo n.º 1
0
        /*public bool SplitDocuments(InboundDocsView ibDoc,
         *                         AssociatedDoc assDoc,
         *                         Func<IEnumerable<int>> pages,
         *                         Action<int> onPageExtracted)
         * {
         *  if (imageHolder.ImageModified)
         *  {
         *      if (MessageBox.Show(@"Save document image changes?", @"Save Image", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly) == DialogResult.Yes)
         *      {
         *          ImagesEventManager.Instance.Raise(new ImagesSavingEventArgs());
         *      }
         *  }
         *
         *  var assDocImage = imagesDal.GetByDocId(assDoc.Id, ImagesDtoType.Associated);
         *  if (assDocImage != null)
         *  {
         *      Logger.InfoFormat("Associated document for id={0} already exists. Nothing to do.", assDoc.Id);
         *      return true;
         *  }
         *
         *  var sourceDto = imagesDal.GetByDocId(ibDoc.Id, ImagesDtoType.Inbound);
         *  var sourceImage = sourceDto.GetMarkupTifImage();
         *  if (imageHolder.TotalPages == 1)
         *  {
         *      var destImage = sourceImage.Clone();
         *      return true;
         *  }
         *
         *  var pages = pages();
         *  if (pages == null)
         *  {
         *      return false;
         *  }
         *
         *  var pageList = pages.ToList();
         *  var assDocPages = sourceImage.ExtractPages(pageList, onPageExtracted);
         *  var remainder = sourceImage.ExtractPagesInverse(pageList);
         *  return true;
         * }*/

        public DocumentSplitResult Split(TifImage sourceImage, IEnumerable <int> pages, Action <int> onPageExtracted)
        {
            if (sourceImage.TotalPages == 1)
            {
                var destImage = sourceImage.Clone();
                return(new DocumentSplitResult(destImage));
            }

            if (pages == null)
            {
                return(null);
            }

            var pageList   = pages.ToList();
            var splitPages = sourceImage.ExtractPages(pageList, onPageExtracted);
            var remainder  = sourceImage.ExtractPagesInverse(pageList, onPageExtracted);

            return(new DocumentSplitResult(splitPages, remainder));
        }
Ejemplo n.º 2
0
        private void LoadPages(TifImage tifImage)
        {
            if (tifImage == null)
            {
                return;
            }

            RasterPaintProperties paintProp = imageList.PaintProperties;

            paintProp.PaintDisplayMode = RasterPaintDisplayModeFlags.ScaleToGray;

            image = tifImage.ImageData;
            imageList.Items.Clear();
            for (var i = 1; i <= image.PageCount; ++i)
            {
                RasterImageListItem imageItem = new RasterImageListItem(image, i, "Page " + i);
                imageList.Items.Add(imageItem);
            }

            LoadCheckBox(image.PageCount);
        }
Ejemplo n.º 3
0
 public PageSelection(TifImage image)
 {
     InitializeComponent();
     LoadPages(image);
 }
Ejemplo n.º 4
0
 internal DocumentSplitResult(TifImage splitPages, TifImage remainder = null)
 {
     Remainder  = remainder;
     SplitPages = splitPages;
 }