/* ----------------------------------------------------------------- */ /// /// ExtractImages /// /// <summary> /// Extracts images from the specified PDF document. /// </summary> /// /* ----------------------------------------------------------------- */ private void ExtractImages(DocumentReader src, IProgress <ProgressMessage <string> > progress) { var count = src.Pages.Count(); var name = IO.Get(Source).BaseName; for (var i = 0; i < count; ++i) { _cts.Token.ThrowIfCancellationRequested(); var pagenum = i + 1; progress.Report(Create( (int)(i / (double)count * 100.0), string.Format(Properties.Resources.MessageProcess, name, pagenum, count) )); var images = src.GetEmbeddedImages(pagenum); _cts.Token.ThrowIfCancellationRequested(); lock (_lock) { foreach (var image in images) { _cts.Token.ThrowIfCancellationRequested(); _core.Add(image); } } } }