diff --git a/OpticalCharacterRecognition/AddTextToDocument/AddTextToDocument.csproj b/OpticalCharacterRecognition/AddTextToDocument/AddTextToDocument.csproj index 54c66f9..01350a2 100644 --- a/OpticalCharacterRecognition/AddTextToDocument/AddTextToDocument.csproj +++ b/OpticalCharacterRecognition/AddTextToDocument/AddTextToDocument.csproj @@ -4,7 +4,7 @@ Debug x64 - {a1a2f184-6250-4843-8d6b-3a72776dd27d} + {F69F3E92-2388-4702-813C-CE25CCB3FAEC} Exe AddTextToDocument AddTextToDocument diff --git a/OpticalCharacterRecognition/AddTextToDocument/AddTextToDocument.sln b/OpticalCharacterRecognition/AddTextToDocument/AddTextToDocument.sln index b883da1..d748090 100644 --- a/OpticalCharacterRecognition/AddTextToDocument/AddTextToDocument.sln +++ b/OpticalCharacterRecognition/AddTextToDocument/AddTextToDocument.sln @@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 16 VisualStudioVersion = 16.0.33328.57 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddTextToDocument", "AddTextToDocument.csproj", "{a1a2f184-6250-4843-8d6b-3a72776dd27d}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddTextToDocument", "AddTextToDocument.csproj", "{F69F3E92-2388-4702-813C-CE25CCB3FAEC}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -11,10 +11,10 @@ Global Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {a1a2f184-6250-4843-8d6b-3a72776dd27d}.Debug|x64.ActiveCfg = Debug|x64 - {a1a2f184-6250-4843-8d6b-3a72776dd27d}.Debug|x64.Build.0 = Debug|x64 - {a1a2f184-6250-4843-8d6b-3a72776dd27d}.Release|x64.ActiveCfg = Release|x64 - {a1a2f184-6250-4843-8d6b-3a72776dd27d}.Release|x64.Build.0 = Release|x64 + {F69F3E92-2388-4702-813C-CE25CCB3FAEC}.Debug|x64.ActiveCfg = Debug|x64 + {F69F3E92-2388-4702-813C-CE25CCB3FAEC}.Debug|x64.Build.0 = Debug|x64 + {F69F3E92-2388-4702-813C-CE25CCB3FAEC}.Release|x64.ActiveCfg = Release|x64 + {F69F3E92-2388-4702-813C-CE25CCB3FAEC}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Other/README.md b/Other/README.md index 4383125..193e80d 100644 --- a/Other/README.md +++ b/Other/README.md @@ -4,5 +4,3 @@ This sample illustrates how to utilize memory only for processing temporary file ## ***StreamIO*** Reads a PDF document from a stream and writes one to a stream. -## ***WebApplication*** -This sample illustrates using the PDF Library as part of a simple ASP.NET web application. diff --git a/Other/WebApplication/WebApplication/About.aspx.cs b/Other/WebApplication/WebApplication/About.aspx.cs deleted file mode 100644 index 40241d5..0000000 --- a/Other/WebApplication/WebApplication/About.aspx.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.UI; -using System.Web.UI.WebControls; - -namespace WebApplication -{ - public partial class About : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - - } - } -} diff --git a/Other/WebApplication/WebApplication/About.aspx.designer.cs b/Other/WebApplication/WebApplication/About.aspx.designer.cs deleted file mode 100644 index 39253fc..0000000 --- a/Other/WebApplication/WebApplication/About.aspx.designer.cs +++ /dev/null @@ -1,15 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WebApplication { - - - public partial class About { - } -} diff --git a/Other/WebApplication/WebApplication/Account/ChangePassword.aspx.cs b/Other/WebApplication/WebApplication/Account/ChangePassword.aspx.cs deleted file mode 100644 index 4ac9b57..0000000 --- a/Other/WebApplication/WebApplication/Account/ChangePassword.aspx.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.UI; -using System.Web.UI.WebControls; - -namespace WebApplication.Account -{ - public partial class ChangePassword : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - - } - } -} diff --git a/Other/WebApplication/WebApplication/Account/ChangePassword.aspx.designer.cs b/Other/WebApplication/WebApplication/Account/ChangePassword.aspx.designer.cs deleted file mode 100644 index 64f0912..0000000 --- a/Other/WebApplication/WebApplication/Account/ChangePassword.aspx.designer.cs +++ /dev/null @@ -1,24 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WebApplication.Account { - - - public partial class ChangePassword { - - /// - /// ChangeUserPassword control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.ChangePassword ChangeUserPassword; - } -} diff --git a/Other/WebApplication/WebApplication/Account/ChangePasswordSuccess.aspx.cs b/Other/WebApplication/WebApplication/Account/ChangePasswordSuccess.aspx.cs deleted file mode 100644 index 6945c0d..0000000 --- a/Other/WebApplication/WebApplication/Account/ChangePasswordSuccess.aspx.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.UI; -using System.Web.UI.WebControls; - -namespace WebApplication.Account -{ - public partial class ChangePasswordSuccess : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - - } - } -} diff --git a/Other/WebApplication/WebApplication/Account/ChangePasswordSuccess.aspx.designer.cs b/Other/WebApplication/WebApplication/Account/ChangePasswordSuccess.aspx.designer.cs deleted file mode 100644 index a4bc563..0000000 --- a/Other/WebApplication/WebApplication/Account/ChangePasswordSuccess.aspx.designer.cs +++ /dev/null @@ -1,15 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WebApplication.Account { - - - public partial class ChangePasswordSuccess { - } -} diff --git a/Other/WebApplication/WebApplication/Account/Login.aspx.cs b/Other/WebApplication/WebApplication/Account/Login.aspx.cs deleted file mode 100644 index 35e69c4..0000000 --- a/Other/WebApplication/WebApplication/Account/Login.aspx.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.UI; -using System.Web.UI.WebControls; - -namespace WebApplication.Account -{ - public partial class Login : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - RegisterHyperLink.NavigateUrl = "Register.aspx?ReturnUrl=" + HttpUtility.UrlEncode(Request.QueryString["ReturnUrl"]); - } - } -} diff --git a/Other/WebApplication/WebApplication/Account/Login.aspx.designer.cs b/Other/WebApplication/WebApplication/Account/Login.aspx.designer.cs deleted file mode 100644 index a2664fb..0000000 --- a/Other/WebApplication/WebApplication/Account/Login.aspx.designer.cs +++ /dev/null @@ -1,33 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WebApplication.Account { - - - public partial class Login { - - /// - /// RegisterHyperLink control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.HyperLink RegisterHyperLink; - - /// - /// LoginUser control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.Login LoginUser; - } -} diff --git a/Other/WebApplication/WebApplication/Account/Register.aspx.cs b/Other/WebApplication/WebApplication/Account/Register.aspx.cs deleted file mode 100644 index 9aeef45..0000000 --- a/Other/WebApplication/WebApplication/Account/Register.aspx.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.Security; -using System.Web.UI; -using System.Web.UI.WebControls; - -namespace WebApplication.Account -{ - public partial class Register : System.Web.UI.Page - { - - protected void Page_Load(object sender, EventArgs e) - { - RegisterUser.ContinueDestinationPageUrl = Request.QueryString["ReturnUrl"]; - } - - protected void RegisterUser_CreatedUser(object sender, EventArgs e) - { - FormsAuthentication.SetAuthCookie(RegisterUser.UserName, false /* createPersistentCookie */); - - string continueUrl = RegisterUser.ContinueDestinationPageUrl; - if (String.IsNullOrEmpty(continueUrl)) - { - continueUrl = "~/"; - } - Response.Redirect(continueUrl); - } - - } -} diff --git a/Other/WebApplication/WebApplication/Account/Register.aspx.designer.cs b/Other/WebApplication/WebApplication/Account/Register.aspx.designer.cs deleted file mode 100644 index e58c8b3..0000000 --- a/Other/WebApplication/WebApplication/Account/Register.aspx.designer.cs +++ /dev/null @@ -1,33 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WebApplication.Account { - - - public partial class Register { - - /// - /// RegisterUser control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.CreateUserWizard RegisterUser; - - /// - /// RegisterUserWizardStep control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.CreateUserWizardStep RegisterUserWizardStep; - } -} diff --git a/Other/WebApplication/WebApplication/Default.aspx.cs b/Other/WebApplication/WebApplication/Default.aspx.cs deleted file mode 100644 index 50fb2a6..0000000 --- a/Other/WebApplication/WebApplication/Default.aspx.cs +++ /dev/null @@ -1,391 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.UI; -using System.Web.UI.WebControls; - -using System.Configuration; -using System.IO; -using IOPath = System.IO.Path; - -using Datalogics.PDFL; - - -/* - * - * Copyright (c) 2007-2023, Datalogics, Inc. All rights reserved. - * - */ - -namespace WebApplication -{ - // - // This sample opens a XML Paper Specification (XPS) document and converts it to - // a Portable Document Format (PDF) document. - // - // Once open, it saves the PDF along side the XPS source document (within \) - // as .pdf. In the event duplicate PDFs are made (e.g., page refresh, - // multiple runs of the solution, etc.), subsequent PDFs are renamed to .#.pdf - // where # is a number growing from 1. - // - // The code that is of particular importance (i.e., educational) resides in this - // file (Default.asax.cs) as well as the file Globals.asax.cs. Supporting XML - // constructs reside in Web.config. Most of the code resides within Page_Load (below). - // It does so mostly for convenience. It would not be wise to blindly copy the code - // in this sample. There are some educational information regarding performance and - // design in the code / commentary but this sample has not been vetted for security - // nor subject to any serious design or performance review. You are again, cautioned - // NOT to blindly use the material (here) as the direct basis for your own work. The - // code and composition (here) are simply for educational purposes. - // - - // - // To use this sample solution one must perform the following prior to building / debugging... - // - // 1) Update the solution reference to Datalogics.PDFL.dll (see Solution Explorer->References); - // - // 2) Open Web.config, scroll to the section and... - // 2a) Update DLPath to reflect your local system; - // - // 3) Copy the various Datalogics components to the directory referenced by DLPath. - // - // 4) Open Web.config, scroll to the section and... - // 4a) Update XPSPath to reflect your local system; - // 4b) Consider updating the value of XPSFile (XPSPth and XPSFile are combined to construct a path to a test XPS file); - // - - public partial class _Default : System.Web.UI.Page - { - // - // srcXPSFilePath points to one of Microsoft's XPS reference samples (feel free to point it at (essentially) any XPS file) - // - // - - private readonly string srcXPSFilePath = String.Format("{0}{2}{1}", ConfigurationManager.AppSettings[@"XPSPath"], ConfigurationManager.AppSettings[@"XPSFile"], IOPath.DirectorySeparatorChar); - - protected void Page_Load(object sender, EventArgs e) - { - // - // THE FOLLOWING (CHECKS/LOADING) SHOULD BE PERFORMED UPSTREAM... - // - - // - // Make sure we can see the .joboptions file - // - - FileInfo finfoJobOptions = new FileInfo(String.Format("{0}{2}{1}", ConfigurationManager.AppSettings[@"DLPath"], @"Resources\joboptions\Standard.joboptions", IOPath.DirectorySeparatorChar)); - if (!finfoJobOptions.Exists) - { - DirectoryInfo dinfo = new DirectoryInfo(ConfigurationManager.AppSettings[@"DLPath"]); - if (!dinfo.Exists) - { // (someone forgot to) go to Web.config and set (or fix) DLPath so it refers to a valid location (please read the instructions for this sample) - throw new DirectoryNotFoundException(dinfo.FullName); - } - else - { // It's pointless to continue... - throw new FileNotFoundException(finfoJobOptions.FullName); - } - } - - // - // Make sure to have a source (xps) file at the specified location - // - - FileInfo finfoSrc = new FileInfo(srcXPSFilePath); - if (!finfoSrc.Exists) - { - DirectoryInfo dinfo = new DirectoryInfo(ConfigurationManager.AppSettings[@"XPSPath"]); - if (!dinfo.Exists) - { // (someone forgot to) go to Web.config and set (or fix) XPSPath so it refers to a valid location (please read the instructions for this sample) - throw new DirectoryNotFoundException(dinfo.FullName); - } - else - { // It's pointless to continue... - throw new FileNotFoundException(finfoSrc.FullName); - } - } - - // - // Make sure we can see the destination (directory) - // - - FileInfo finfoDst = new FileInfo(IOPath.ChangeExtension(finfoSrc.FullName, @"pdf")); - if (!finfoDst.Directory.Exists) - { // It's pointless to continue... - throw new DirectoryNotFoundException(finfoDst.Directory.FullName); - } - - // - // THE FOLLOWING MAY BE PERFORMED DOWNSTREAM (BUT SHOULD BE SPLIT OUT INTO MULTIPLE LOCATIONS IN ANY ADAPTATION)... - // - - Library lib = null; - try - { - // - // The astute reader (of this greater sample solution) will notice that there are TWO (nested) Library initializations... - // - // 1) perform at application start (in Global.asax.cs) - // 2) performed here, at page load - // - // This bifurcation is actually a GOOD thing since it spreads the load of Library initialization (and termination) - // across a broader window of time. Consequently, secondary/tertiary et al. page loads will be faster than if - // a single initialization (at page load) were employed. - // - - lib = new Library(); // NOTE: This is a SECONDARY library initialization (done for performance reasons) - - using (XPSConvertParams xpsParms = new XPSConvertParams(finfoJobOptions.FullName)) - { - if (xpsParms == null) - { // Something bad happened and no one managed to throw an exception. Let's do so now... - throw new NullReferenceException(@"Error: Cannot construct XPSConvertParams"); - } - - FileInfo finfoTmp = null; - try - { - // - // DESIGN ALERT: Pay VERY close attention to the relationship of doc (and it's implied file handle) - // to finfoTmp and the design influences upon the (two!) try/catch/finally blocks. - // One CANNOT reliably delete the tmp file until AFTER all associated file handles - // are closed. This only happens upon doc close (or doc dispose). Therefore, the ONLY - // reliable composition is as shown (here). - // - - Document doc = null; - try - { - // - // DESIGN ALERT: Pay VERY close attention to the relationship of doc (and it's implied file handle) - // to finfoTmp and the design influences upon the (two!) try/catch/finally blocks. - // One CANNOT reliably delete the tmp file until AFTER all associated file handles - // are closed. This only happens upon doc close (or doc dispose). Therefore, the ONLY - // reliable composition is as shown (here). - // - - doc = new Document(finfoSrc.FullName, xpsParms); - if (doc == null) - { // Something (really) bad happened and no one managed to throw an exception. Let's do so now... - throw new NullReferenceException(@"Error: Cannot construct Document"); - } - - string tmpPath = String.Format("{0}{1}", IOPath.GetTempPath(), IOPath.GetRandomFileName()); - tmpPath = IOPath.ChangeExtension(tmpPath, @"pdf"); // Don't allow arbitrary extension - int i = 0; - do - { - finfoTmp = new FileInfo(tmpPath); - if (finfoTmp.Exists) - { // Bump the path to .i.pdf (which will trigger a tmp file info re-build/check until no collision exists) - ++i; - string pathWithoutExtension = String.Format("{0}{2}{1}", finfoTmp.DirectoryName, IOPath.GetFileNameWithoutExtension(finfoTmp.FullName), IOPath.DirectorySeparatorChar); - tmpPath = IOPath.ChangeExtension(pathWithoutExtension, String.Format("{0}.pdf", i)); - } - } - while (finfoTmp.Exists); - - doc.Save(SaveFlags.Full, finfoTmp.FullName); - } - finally - { - if (doc != null) - { // Close MUST occur so that forces our hand a bit. Let's be deterministic... - doc.Close(); - doc.Dispose(); - } - } - } - catch - { - try - { // Attempt clean up temp file, if any... - if (finfoTmp != null) - { - finfoTmp.Refresh(); - if (finfoTmp.Exists) - { - finfoTmp.Delete(); - } - } - } - catch - { - // ignore - } - - // - // RECOMMENDATION: The (following) re-throw should be caught (at web app boundary) - // and trigger a) a re-direct or, if there is a security concern b) silence... - // - - throw; - } - - // - // IMPORTANT: doc (and thus pdf file at finfoTmp.FullName) MUST, MUST, MUST (!!!) be closed before proceeding - // - - if (finfoTmp != null) - { - if (finfoDst != null) - { - finfoDst.Refresh(); - string dstPath = finfoDst.FullName; - dstPath = IOPath.ChangeExtension(dstPath, @"pdf"); // Don't allow arbitrary extension - int i = 0; - do - { - finfoDst = new FileInfo(dstPath); - if (finfoDst.Exists) - { // Bump the path to .i.pdf (which will trigger a dst file info re-build/check until no collision exists) - ++i; - string pathWithoutExtension = String.Format("{0}{2}{1}", finfoDst.DirectoryName, IOPath.GetFileNameWithoutExtension(finfoDst.FullName), IOPath.DirectorySeparatorChar); - dstPath = IOPath.ChangeExtension(pathWithoutExtension, String.Format("{0}.pdf", i)); - } - } - while (finfoDst.Exists); - - finfoTmp.Refresh(); - if (finfoTmp.Exists) - { - DirectoryInfo dinfoTmpRoot = finfoTmp.Directory.Root; - DirectoryInfo dinfoDstRoot = finfoDst.Directory.Root; - if (String.Compare(dinfoDstRoot.FullName, dinfoTmpRoot.FullName, true) == 0) // NOTE: One should build a more robust comparison (than this, trivial, sample code) - { // *If tmp and dst lie on the same volume* just do a move (i.e., file system update)... - FileInfo finfoTmpDst = new FileInfo(finfoTmp.FullName); // Clone (because the move will re-point finfoTmpDst to finfoDst) - finfoTmpDst.MoveTo(finfoDst.FullName); - } - else - { // *Otherwise* copy (which we will do via some stream semantics; for educational purposes) - - // - // A sampler of streaming techniques... - // - - Stream tmpStream = null; - try - { - tmpStream = new FileStream(finfoTmp.FullName, FileMode.Open, FileAccess.Read); - tmpStream.Seek(0, SeekOrigin.Begin); - - if (finfoTmp.Length > 0xFFFFF /* 1M */) - { // Large transfer handling (buffered) - int tmpBufSize = 0x1FFFE; // 128K (up to 8M) - while (tmpBufSize < 0xFFFFFF /* 16M */ && finfoTmp.Length > tmpBufSize) - { // Scale tmp stream buffer up to 16M - tmpBufSize *= 2; - - if (tmpBufSize > finfoTmp.Length) - { - tmpBufSize = (int)finfoTmp.Length; - } - } - - using (BufferedStream tmpBufStream = new BufferedStream(tmpStream, tmpBufSize)) - { - Stream dstStream = null; - try - { - // - // MAINTAINER'S ALERT: Given host network constraints (circa 2012)... - // there's not much point in making bytesCapacity > 128K - // - - int bytesCapacity = 0x1FFFE; /* 128K */ - byte[] bytes = new byte[bytesCapacity]; - - dstStream = new FileStream(finfoDst.FullName, FileMode.OpenOrCreate, FileAccess.Write); - dstStream.Seek(0, SeekOrigin.Begin); - - int positionR = 0; // For debugging - int positionW = 0; // For debugging - - int bytesRead = 0; - while ((bytesRead = tmpBufStream.Read(bytes, 0, bytesCapacity)) > 0 && bytesRead <= bytesCapacity) - { - positionR += bytesRead; - dstStream.Write(bytes, 0, bytesRead); - positionW += bytesRead; - } - } - finally - { - if (dstStream != null) - { // Close MUST occur so that forces our hand a bit. Let's be deterministic... - dstStream.Close(); - dstStream.Dispose(); - } - } - } - } - else - { // Small transfer handling (unbuffered) ... should (obviously) be <= 1M - Stream dstStream = null; - try - { - // - // MAINTAINER'S ALERT: Given host network constraints (circa 2012)... - // there's not much point in making bytesCapacity > 128K - // - - int bytesCapacity = (int)((finfoTmp.Length > 0x1FFFE /* 128K */) ? 0x1FFFE /* 128K */ : finfoTmp.Length); // Cast is fine since type clipping is n/a - byte[] bytes = new byte[bytesCapacity]; - - dstStream = new FileStream(finfoDst.FullName, FileMode.OpenOrCreate, FileAccess.Write); - dstStream.Seek(0, SeekOrigin.Begin); - - int positionR = 0; // For debugging - int positionW = 0; // For debugging - - int bytesRead = 0; - while ((bytesRead = tmpStream.Read(bytes, 0, bytesCapacity)) > 0 && bytesRead <= bytesCapacity) - { - positionR += bytesRead; - dstStream.Write(bytes, 0, bytesRead); - positionW += bytesRead; - } - } - finally - { - if (dstStream != null) - { // Close MUST occur so that forces our hand a bit. Let's be deterministic... - dstStream.Close(); - dstStream.Dispose(); - } - } - } - } - finally - { - if (tmpStream != null) - { // Close MUST occur so that forces our hand a bit. Let's be deterministic... - tmpStream.Close(); - tmpStream.Dispose(); - } - } - } - } - } - - finfoTmp.Refresh(); - if (finfoTmp.Exists) - { // If moved, the tmp file won't exist... - // If copied/streamed, the tmp file will still exist (and must be deleted) - finfoTmp.Delete(); - } - } - } - } - finally - { - if (lib != null) - { // Terminate MUST occur so that forces our hand a bit. Let's be deterministic... - lib.Terminate(); - lib.Dispose(); - } - } - } - } -} diff --git a/Other/WebApplication/WebApplication/Default.aspx.designer.cs b/Other/WebApplication/WebApplication/Default.aspx.designer.cs deleted file mode 100644 index 4f708cf..0000000 --- a/Other/WebApplication/WebApplication/Default.aspx.designer.cs +++ /dev/null @@ -1,15 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WebApplication { - - - public partial class _Default { - } -} diff --git a/Other/WebApplication/WebApplication/Global.asax.cs b/Other/WebApplication/WebApplication/Global.asax.cs deleted file mode 100644 index 0367b29..0000000 --- a/Other/WebApplication/WebApplication/Global.asax.cs +++ /dev/null @@ -1,75 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.Security; -using System.Web.SessionState; - -using System.Configuration; -using System.IO; - -using Datalogics.PDFL; - -namespace WebApplication -{ - public class Global : System.Web.HttpApplication - { - private Library mLibrary = null; - - void Application_Start(object sender, EventArgs e) - { // Code that runs on application startup - - // - // Set/Export (at runtime) DLPath to the system environment variable PATH - // Use of PDFL will NOT work in a secure IIS environment without the following! - // - // See Also: Shadow Copy (as it relates to web hosted solutions like ASP.Net, WCF, etc.) - // http://msdn.microsoft.com/en-us/library/ms404279.aspx - // - - string dlpath = ConfigurationManager.AppSettings[@"DLPath"]; - DirectoryInfo dinfo = new DirectoryInfo(dlpath); - if (!dinfo.Exists) - { // (someone forgot to) go to Web.config and set (or fix) DLPath so it refers to a valid location (please read the instructions for this sample in Default.asax.cs) - throw new DirectoryNotFoundException(dlpath); - } - - string path = String.Concat(Environment.GetEnvironmentVariable(@"PATH"), @";", dlpath); - Environment.SetEnvironmentVariable(@"PATH", path, EnvironmentVariableTarget.Process); - - // - // Initialize Library - // - // Library initialization is actually (best employed as) a two phase process. If one inits at web application start/end - // some expensive, low level, *one time/per process* only setup occurs. That makes the secondary, high level initialization - // at Page_Load time faster. This, in turn, will improve per GET/POST performance. - // - - mLibrary = new Library(); - } - - void Application_End(object sender, EventArgs e) - { // Code that runs on application shutdown - if (mLibrary != null) - { - mLibrary.Dispose(); - mLibrary = null; - } - } - - void Application_Error(object sender, EventArgs e) - { // Code that runs when an unhandled error occurs - } - - void Session_Start(object sender, EventArgs e) - { // Code that runs when a new session is started - } - - void Session_End(object sender, EventArgs e) - { // Code that runs when a session ends. - // Note: The Session_End event is raised only when the sessionstate mode - // is set to InProc in the Web.config file. If session mode is set to StateServer - // or SQLServer, the event is not raised. - } - } -} diff --git a/Other/WebApplication/WebApplication/Properties/AssemblyInfo.cs b/Other/WebApplication/WebApplication/Properties/AssemblyInfo.cs deleted file mode 100644 index c913662..0000000 --- a/Other/WebApplication/WebApplication/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("WebApplication")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("Datalogics, Inc.")] -[assembly: AssemblyProduct("WebApplication")] -[assembly: AssemblyCopyright("Copyright © 2012-2023 Datalogics, Inc.")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("b0dbb2ae-e756-47ed-a91e-4d576a5a16fe")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Revision and Build Numbers -// by using the '*' as shown below: -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Other/WebApplication/WebApplication/Site.Master.cs b/Other/WebApplication/WebApplication/Site.Master.cs deleted file mode 100644 index 4b78eb8..0000000 --- a/Other/WebApplication/WebApplication/Site.Master.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.UI; -using System.Web.UI.WebControls; - -namespace WebApplication -{ - public partial class SiteMaster : System.Web.UI.MasterPage - { - protected void Page_Load(object sender, EventArgs e) - { - - } - } -} diff --git a/Other/WebApplication/WebApplication/Site.Master.designer.cs b/Other/WebApplication/WebApplication/Site.Master.designer.cs deleted file mode 100644 index 2300e79..0000000 --- a/Other/WebApplication/WebApplication/Site.Master.designer.cs +++ /dev/null @@ -1,51 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WebApplication { - - - public partial class SiteMaster { - - /// - /// HeadContent control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.ContentPlaceHolder HeadContent; - - /// - /// HeadLoginView control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.LoginView HeadLoginView; - - /// - /// NavigationMenu control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.Menu NavigationMenu; - - /// - /// MainContent control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.ContentPlaceHolder MainContent; - } -} diff --git a/Samples.sln b/Samples.sln index 7c32b7e..98d5000 100644 --- a/Samples.sln +++ b/Samples.sln @@ -20,6 +20,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Clips", "ContentCreation\Cl EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CreateBookmarks", "ContentCreation\CreateBookmarks\CreateBookmarks.csproj", "{157F72BC-DCD4-496B-A5EE-FC50AADAFA3F}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GradientShade", "ContentCreation\GradientShade\GradientShade.csproj", "{64dbb1f8-8ccf-40ec-8eb1-dde0b3586595}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MakeDocWithCalGrayColorSpace", "ContentCreation\MakeDocWithCalGrayColorSpace\MakeDocWithCalGrayColorSpace.csproj", "{6D9CDBE3-17B7-4337-BD9D-DAA378791244}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MakeDocWithCalRGBColorSpace", "ContentCreation\MakeDocWithCalRGBColorSpace\MakeDocWithCalRGBColorSpace.csproj", "{7017DD83-4988-4F4E-92A8-20F747D571BD}" @@ -46,6 +48,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Action", "ContentModificati EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddCollection", "ContentModification\AddCollection\AddCollection.csproj", "{BEC20051-FF71-42FA-B46A-0909ECE10765}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddQRCode", "ContentModification\AddQRCode\AddQRCode.csproj", "{C5493EAE-45F6-4502-9D26-5BFEC574729F}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChangeLayerConfiguration", "ContentModification\ChangeLayerConfiguration\ChangeLayerConfiguration.csproj", "{C5493EAE-45F6-4502-9D26-5BFEC574729F}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChangeLinkColors", "ContentModification\ChangeLinkColors\ChangeLinkColors.csproj", "{8781C73F-6EAD-4D0B-AAAE-37D5A6E4BC86}" @@ -68,14 +72,28 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnderlinesAndHighlights", " EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WaterMark", "ContentModification\Watermark\WaterMark.csproj", "{FA83DE47-3771-47EE-8EA8-EB202F5241A0}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DisplayPDF", "Display\DisplayPDF\DisplayPDF.csproj", "{02A72B29-33C8-4BE7-A577-9688439A710D}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DotNETViewer", "Display\DotNETViewer\DotNETViewer.csproj", "{66238892-38C6-40CF-B50C-3B9F8D449B80}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DotNETViewerComponent", "Display\DotNETViewerComponent\DotNETViewerComponent.csproj", "{4820C609-0261-4D9D-93AA-A231FA70151D}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PDFObjectExplorer", "Display\PDFObjectExplorer\PDFObjectExplorer.csproj", "{B4F2E320-7125-4D31-8AB8-302CC4D82E79}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ColorConvertDocument", "DocumentConversion\ColorConvertDocument\ColorConvertDocument.csproj", "{D0E85D80-0332-40F2-A9DB-43C02F4544BC}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConvertToOffice", "DocumentConversion\ConvertToOffice\ConvertToOffice.csproj", "{AECC2C27-D343-4E42-9097-121AFAA4B386}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CreateDocFromXPS", "DocumentConversion\CreateDocFromXPS\CreateDocFromXPS.csproj", "{6A1D00B1-DA53-4BB5-B7F7-1EB1339C379B}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Factur-XConverter", "DocumentConversion\Factur-XConverter\Factur-XConverter.csproj", "{D5F40E4D-BDEF-4472-909A-C6441B594750}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PDFAConverter", "DocumentConversion\PDFAConverter\PDFAConverter.csproj", "{6E7363CC-D687-43A0-A6F6-7E408B06446B}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PDFXConverter", "DocumentConversion\PDFXConverter\PDFXConverter.csproj", "{AC0B6462-750A-4DF6-BB63-29878969670D}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ZUGFeRDConverter", "DocumentConversion\ZUGFeRDConverter\ZUGFeRDConverter.csproj", "{7e090b4f-0db4-4c40-a48a-40c0111019d5}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PDFOptimize", "DocumentOptimization\PDFOptimize\PDFOptimize.csproj", "{05B2CC4F-FCF5-46B2-89FC-0B5ECCD061DF}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DocToImages", "Images\DocToImages\DocToImages.csproj", "{CD1E16DB-3DAF-4C4E-A903-3D14ED61027D}" @@ -88,8 +106,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EPSSeparations", "Images\EP EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GetSeparatedImages", "Images\GetSeparatedImages\GetSeparatedImages.csproj", "{16ABC796-99B8-AEC6-947E-3355E8E6B090}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OutputPreview", "Images\OutputPreview\OutputPreview.csproj", "{7B383C18-C183-4549-A5BF-CC488A08DF52}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageEmbedICCProfile", "Images\ImageEmbedICCProfile\ImageEmbedICCProfile.csproj", "{74C32226-7701-46C4-A3EE-79FBF97F5A25}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageExport", "Images\ImageExport\ImageExport.csproj", "{381E8A0C-9523-40F6-B0A1-26D7378737D1}" @@ -104,6 +120,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageResampling", "Images\I EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageSoftMask", "Images\ImageSoftMask\ImageSoftMask.csproj", "{B521056A-B3B0-43C1-8374-1FD66DE7F1BA}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OutputPreview", "Images\OutputPreview\OutputPreview.csproj", "{7B383C18-C183-4549-A5BF-CC488A08DF52}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RasterizePage", "Images\RasterizePage\RasterizePage.csproj", "{A96AB9D0-86A5-4ADF-A222-BC91924BC5FA}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ListBookmarks", "InformationExtraction\ListBookmarks\ListBookmarks.csproj", "{BEF227A8-326C-4CDE-B2FA-41DEA3BC378C}" @@ -116,6 +134,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ListPaths", "InformationExt EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Metadata", "InformationExtraction\Metadata\Metadata.csproj", "{61313430-5B85-4600-A2AE-5B61C138D70D}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddTextToDocument", "OpticalCharacterRecognition\AddTextToDocument\AddTextToDocument.csproj", "{F69F3E92-2388-4702-813C-CE25CCB3FAEC} +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddTextToImage", "OpticalCharacterRecognition\AddTextToImage\AddTextToImage.csproj", "{a1a2f184-6250-4843-8d6b-3a72776dd27d}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OCRDocument", "OpticalCharacterRecognition\OCRDocument\OCRDocument.csproj", "{C9DD37F3-545F-4346-8EF2-FAE2DD20FDCF}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MemoryFileSystem", "Other\MemoryFileSystem\MemoryFileSystem.csproj", "{81EFB00E-32B7-48F1-9BFC-D17253D52148}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StreamIO", "Other\StreamIO\StreamIO.csproj", "{38DF6203-BFFF-4C5C-AAA8-ECCE6F08EEE3}" @@ -124,6 +148,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PrintPDF", "Printing\PrintP EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PrintPDFGUI", "Printing\PrintPDFGUI\PrintPDFGUI.csproj", "{12C14641-90FA-4982-B03F-4E25C3D03256}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddRegexRedaction", "Security\AddRegexRedaction\AddRegexRedaction.csproj", "{547F12BC-E6F0-4395-B1CC-EA5AE2900990}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Redactions", "Security\Redactions\Redactions.csproj", "{3790CE63-DB43-4F16-8226-BDFEFA25BCDD}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddGlyphs", "Text\AddGlyphs\AddGlyphs.csproj", "{9920FBEE-6060-4931-8B85-7B7BC90BDEF9}" @@ -132,32 +158,29 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddUnicodeText", "Text\AddU EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddVerticalText", "Text\AddVerticalText\AddVerticalText.csproj", "{09F9D4AC-3BED-45C5-9325-F33A7F898F06}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ListWords", "Text\ListWords\ListWords.csproj", "{7801882E-1CF5-49C4-A4FE-34ED5F4901E5}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextExtract", "Text\TextExtract\TextExtract.csproj", "{11C4A647-3DDA-41A5-855C-E14EDF1BFFDE}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RegexTextSearch", "Text\RegexTextSearch\RegexTextSearch.csproj", "{FA30AB74-525F-42BC-BF43-B07AD7C94BC1}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractAcroFormFieldData", "Text\ExtractAcroFormFieldData\ExtractAcroFormFieldData.csproj", "{AFDE3185-80DA-4EF9-8DE5-7E6E80F396A7}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddRegexRedaction", "Security\AddRegexRedaction\AddRegexRedaction.csproj", "{547F12BC-E6F0-4395-B1CC-EA5AE2900990}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractCJKTextByPatternMatch", "Text\ExtractCJKTextByPatternMatch\ExtractCJKTextByPatternMatch.csproj", "{990A5B2F-B22D-49AA-840F-712CAFBEDC71}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RegexExtractText", "Text\RegexExtractText\RegexExtractText.csproj", "{6712DB77-75AB-4E71-BF38-05BD698A1A2C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractTextByPatternMatch", "Text\ExtractTextByPatternMatch\ExtractTextByPatternMatch.csproj", "{7F947745-7A22-4CCB-8B38-E16A1E780819}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractTextByRegion", "Text\ExtractTextByRegion\ExtractTextByRegion.csproj", "{4E8C26AF-67B3-48CF-9A5F-E83E5EFD3498}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractTextByPatternMatch", "Text\ExtractTextByPatternMatch\ExtractTextByPatternMatch.csproj", "{7F947745-7A22-4CCB-8B38-E16A1E780819}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractTextFromAnnotations", "Text\ExtractTextFromAnnotations\ExtractTextFromAnnotations.csproj", "{05B2CC4F-FCF5-46B2-89FC-0B5ECCD061DF}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractTextFromMultiRegions", "Text\ExtractTextFromMultiRegions\ExtractTextFromMultiRegions.csproj", "{301D53BD-5506-4040-8E77-6C260A4AB0A2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractAcroFormFieldData", "Text\ExtractAcroFormFieldData\ExtractAcroFormFieldData.csproj", "{AFDE3185-80DA-4EF9-8DE5-7E6E80F396A7}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractTextPreservingStyleAndPositionInfo", "Text\ExtractTextPreservingStyleAndPositionInfo\ExtractTextPreservingStyleAndPositionInfo.csproj", "{6D01CAFD-C868-4F75-9B88-6EC1074F7AE3}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractCJKTextByPatternMatch", "Text\ExtractCJKTextByPatternMatch\ExtractCJKTextByPatternMatch.csproj", "{990A5B2F-B22D-49AA-840F-712CAFBEDC71}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ListWords", "Text\ListWords\ListWords.csproj", "{7801882E-1CF5-49C4-A4FE-34ED5F4901E5}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtractTextPreservingStyleAndPositionInfo", "Text\ExtractTextPreservingStyleAndPositionInfo\ExtractTextPreservingStyleAndPositionInfo.csproj", "{6D01CAFD-C868-4F75-9B88-6EC1074F7AE3}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RegexExtractText", "Text\RegexExtractText\RegexExtractText.csproj", "{6712DB77-75AB-4E71-BF38-05BD698A1A2C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Factur-XConverter", "DocumentConversion\Factur-XConverter\Factur-XConverter.csproj", "{D5F40E4D-BDEF-4472-909A-C6441B594750}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RegexTextSearch", "Text\RegexTextSearch\RegexTextSearch.csproj", "{FA30AB74-525F-42BC-BF43-B07AD7C94BC1}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConvertToOffice", "DocumentConversion\ConvertToOffice\ConvertToOffice.csproj", "{AECC2C27-D343-4E42-9097-121AFAA4B386}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextExtract", "Text\TextExtract\TextExtract.csproj", "{11C4A647-3DDA-41A5-855C-E14EDF1BFFDE}" EndProject + Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 @@ -200,6 +223,10 @@ Global {157F72BC-DCD4-496B-A5EE-FC50AADAFA3F}.Debug|x64.Build.0 = Debug|x64 {157F72BC-DCD4-496B-A5EE-FC50AADAFA3F}.Release|x64.ActiveCfg = Release|x64 {157F72BC-DCD4-496B-A5EE-FC50AADAFA3F}.Release|x64.Build.0 = Release|x64 + {64dbb1f8-8ccf-40ec-8eb1-dde0b3586595}.Debug|x64.ActiveCfg = Debug|x64 + {64dbb1f8-8ccf-40ec-8eb1-dde0b3586595}.Debug|x64.Build.0 = Debug|x64 + {64dbb1f8-8ccf-40ec-8eb1-dde0b3586595}.Release|x64.ActiveCfg = Release|x64 + {64dbb1f8-8ccf-40ec-8eb1-dde0b3586595}.Release|x64.Build.0 = Release|x64 {6D9CDBE3-17B7-4337-BD9D-DAA378791244}.Debug|x64.ActiveCfg = Debug|x64 {6D9CDBE3-17B7-4337-BD9D-DAA378791244}.Debug|x64.Build.0 = Debug|x64 {6D9CDBE3-17B7-4337-BD9D-DAA378791244}.Release|x64.ActiveCfg = Release|x64 @@ -248,6 +275,10 @@ Global {3A7670C4-BE60-4AE8-8E79-8281206BB4DA}.Debug|x64.Build.0 = Debug|x64 {3A7670C4-BE60-4AE8-8E79-8281206BB4DA}.Release|x64.ActiveCfg = Release|x64 {3A7670C4-BE60-4AE8-8E79-8281206BB4DA}.Release|x64.Build.0 = Release|x64 + {C5493EAE-45F6-4502-9D26-5BFEC574729F}.Debug|x64.ActiveCfg = Debug|x64 + {C5493EAE-45F6-4502-9D26-5BFEC574729F}.Debug|x64.Build.0 = Debug|x64 + {C5493EAE-45F6-4502-9D26-5BFEC574729F}.Release|x64.ActiveCfg = Release|x64 + {C5493EAE-45F6-4502-9D26-5BFEC574729F}.Release|x64.Build.0 = Release|x64 {BEC20051-FF71-42FA-B46A-0909ECE10765}.Debug|x64.ActiveCfg = Debug|x64 {BEC20051-FF71-42FA-B46A-0909ECE10765}.Debug|x64.Build.0 = Debug|x64 {BEC20051-FF71-42FA-B46A-0909ECE10765}.Release|x64.ActiveCfg = Release|x64 @@ -296,6 +327,22 @@ Global {FA83DE47-3771-47EE-8EA8-EB202F5241A0}.Debug|x64.Build.0 = Debug|x64 {FA83DE47-3771-47EE-8EA8-EB202F5241A0}.Release|x64.ActiveCfg = Release|x64 {FA83DE47-3771-47EE-8EA8-EB202F5241A0}.Release|x64.Build.0 = Release|x64 + {02A72B29-33C8-4BE7-A577-9688439A710D}.Debug|x64.ActiveCfg = Debug|x64 + {02A72B29-33C8-4BE7-A577-9688439A710D}.Debug|x64.Build.0 = Debug|x64 + {02A72B29-33C8-4BE7-A577-9688439A710D}.Release|x64.ActiveCfg = Release|x64 + {02A72B29-33C8-4BE7-A577-9688439A710D}.Release|x64.Build.0 = Release|x64 + {66238892-38C6-40CF-B50C-3B9F8D449B80}.Debug|x64.ActiveCfg = Debug|x64 + {66238892-38C6-40CF-B50C-3B9F8D449B80}.Debug|x64.Build.0 = Debug|x64 + {66238892-38C6-40CF-B50C-3B9F8D449B80}.Release|x64.ActiveCfg = Release|x64 + {66238892-38C6-40CF-B50C-3B9F8D449B80}.Release|x64.Build.0 = Release|x64 + {4820C609-0261-4D9D-93AA-A231FA70151D}.Debug|x64.ActiveCfg = Debug|x64 + {4820C609-0261-4D9D-93AA-A231FA70151D}.Debug|x64.Build.0 = Debug|x64 + {4820C609-0261-4D9D-93AA-A231FA70151D}.Release|x64.ActiveCfg = Release|x64 + {4820C609-0261-4D9D-93AA-A231FA70151D}.Release|x64.Build.0 = Release|x64 + {B4F2E320-7125-4D31-8AB8-302CC4D82E79}.Debug|x64.ActiveCfg = Debug|x64 + {B4F2E320-7125-4D31-8AB8-302CC4D82E79}.Debug|x64.Build.0 = Debug|x64 + {B4F2E320-7125-4D31-8AB8-302CC4D82E79}.Release|x64.ActiveCfg = Release|x64 + {B4F2E320-7125-4D31-8AB8-302CC4D82E79}.Release|x64.Build.0 = Release|x64 {D0E85D80-0332-40F2-A9DB-43C02F4544BC}.Debug|x64.ActiveCfg = Debug|x64 {D0E85D80-0332-40F2-A9DB-43C02F4544BC}.Debug|x64.Build.0 = Debug|x64 {D0E85D80-0332-40F2-A9DB-43C02F4544BC}.Release|x64.ActiveCfg = Release|x64 @@ -312,6 +359,10 @@ Global {AC0B6462-750A-4DF6-BB63-29878969670D}.Debug|x64.Build.0 = Debug|x64 {AC0B6462-750A-4DF6-BB63-29878969670D}.Release|x64.ActiveCfg = Release|x64 {AC0B6462-750A-4DF6-BB63-29878969670D}.Release|x64.Build.0 = Release|x64 + {7e090b4f-0db4-4c40-a48a-40c0111019d5}.Debug|x64.ActiveCfg = Debug|x64 + {7e090b4f-0db4-4c40-a48a-40c0111019d5}.Debug|x64.Build.0 = Debug|x64 + {7e090b4f-0db4-4c40-a48a-40c0111019d5}.Release|x64.ActiveCfg = Release|x64 + {7e090b4f-0db4-4c40-a48a-40c0111019d5}.Release|x64.Build.0 = Release|x64 {05B2CC4F-FCF5-46B2-89FC-0B5ECCD061DF}.Debug|x64.ActiveCfg = Debug|x64 {05B2CC4F-FCF5-46B2-89FC-0B5ECCD061DF}.Debug|x64.Build.0 = Debug|x64 {05B2CC4F-FCF5-46B2-89FC-0B5ECCD061DF}.Release|x64.ActiveCfg = Release|x64 @@ -392,6 +443,18 @@ Global {61313430-5B85-4600-A2AE-5B61C138D70D}.Debug|x64.Build.0 = Debug|x64 {61313430-5B85-4600-A2AE-5B61C138D70D}.Release|x64.ActiveCfg = Release|x64 {61313430-5B85-4600-A2AE-5B61C138D70D}.Release|x64.Build.0 = Release|x64 + {F69F3E92-2388-4702-813C-CE25CCB3FAEC}.Debug|x64.ActiveCfg = Debug|x64 + {F69F3E92-2388-4702-813C-CE25CCB3FAEC}.Debug|x64.Build.0 = Debug|x64 + {F69F3E92-2388-4702-813C-CE25CCB3FAEC}.Release|x64.ActiveCfg = Release|x64 + {F69F3E92-2388-4702-813C-CE25CCB3FAEC}.Release|x64.Build.0 = Release|x64 + {a1a2f184-6250-4843-8d6b-3a72776dd27d}.Debug|x64.ActiveCfg = Debug|x64 + {a1a2f184-6250-4843-8d6b-3a72776dd27d}.Debug|x64.Build.0 = Debug|x64 + {a1a2f184-6250-4843-8d6b-3a72776dd27d}.Release|x64.ActiveCfg = Release|x64 + {a1a2f184-6250-4843-8d6b-3a72776dd27d}.Release|x64.Build.0 = Release|x64 + {C9DD37F3-545F-4346-8EF2-FAE2DD20FDCF}.Debug|x64.ActiveCfg = Debug|x64 + {C9DD37F3-545F-4346-8EF2-FAE2DD20FDCF}.Debug|x64.Build.0 = Debug|x64 + {C9DD37F3-545F-4346-8EF2-FAE2DD20FDCF}.Release|x64.ActiveCfg = Release|x64 + {C9DD37F3-545F-4346-8EF2-FAE2DD20FDCF}.Release|x64.Build.0 = Release|x64 {81EFB00E-32B7-48F1-9BFC-D17253D52148}.Debug|x64.ActiveCfg = Debug|x64 {81EFB00E-32B7-48F1-9BFC-D17253D52148}.Debug|x64.Build.0 = Debug|x64 {81EFB00E-32B7-48F1-9BFC-D17253D52148}.Release|x64.ActiveCfg = Release|x64 @@ -452,6 +515,10 @@ Global {7F947745-7A22-4CCB-8B38-E16A1E780819}.Debug|x64.Build.0 = Debug|x64 {7F947745-7A22-4CCB-8B38-E16A1E780819}.Release|x64.ActiveCfg = Release|x64 {7F947745-7A22-4CCB-8B38-E16A1E780819}.Release|x64.Build.0 = Release|x64 + {05B2CC4F-FCF5-46B2-89FC-0B5ECCD061DF}.Debug|x64.ActiveCfg = Debug|x64 + {05B2CC4F-FCF5-46B2-89FC-0B5ECCD061DF}.Debug|x64.Build.0 = Debug|x64 + {05B2CC4F-FCF5-46B2-89FC-0B5ECCD061DF}.Release|x64.ActiveCfg = Release|x64 + {05B2CC4F-FCF5-46B2-89FC-0B5ECCD061DF}.Release|x64.Build.0 = Release|x64 {301D53BD-5506-4040-8E77-6C260A4AB0A2}.Debug|x64.ActiveCfg = Debug|x64 {301D53BD-5506-4040-8E77-6C260A4AB0A2}.Debug|x64.Build.0 = Debug|x64 {301D53BD-5506-4040-8E77-6C260A4AB0A2}.Release|x64.ActiveCfg = Release|x64