Releases: GleamTech/DocumentUltimate
DocumentUltimate v5.3.2
Version 5.3.2 - June 23, 2020
-
Fixed: In mobile viewer, "Cannot delete annotations..." error occured when pressing backspace or del keys inside search field.
-
Improved: Perfected paddings in left side pane and no more unnessary horizontal scrollbar on IE and Edge.
-
Fixed: When using PhysicalLocation with AuthenticatedUser=Windows, intermittent "the handle is invalid" error occured while
trying to impersonate before accessing PhysicalFileSystem. This happened because the access token retrieved from WindowsIdentity
was not duplicated and when owner WindowsIdentity went out of scope (garbage collected), its access token was also being disposed.
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+
DocumentUltimate v5.3.0
Version 5.3.0 - June 15, 2020
-
Fixed: DocumentViewer.LayoutMode did not work for LayoutMode.Single and LayoutMode.FacingCoverContinuous.
-
Added: DocumentViewer.ToolbarAtBottom property which specifies whether the top toolbar should be placed at the bottom instead.
-
Added: DocumentViewer.SidePaneTabsAtBottom property which specifies whether the top tabs of the left side pane should be placed
at the bottom instead. -
Improved: Removed unnecessary paddings and borders in left side pane and when notes panel is hidden, on the right side 20px
placeholder should not be visible. -
Improved: Increased the default timeout for component actions (both client and server side) to 1 hour.
Note that ASP.NET Core hosted on an Azure App Service (or on any out-of-process hosting model) has by default 2 minutes timeout
and you get "HTTP 502 Bad Gateway" error if a request takes longer than this to complete.
It's not possible to override this setting from code but you can manually override it by adding
a Web.config file with "<aspNetCore requestTimeout="00:20:00" .../>" setting (doesn't apply to or needed for in-process hosting model). -
Improved: DocumentCache will now use locks for Azure file system like physical file system by making use of blob leasing for better concurrency.
-
Fixed: Still happening intermittent AccessViolationException when converting image files to PDF in multi-threads (e.g. Parallel.ForEach).
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+
DocumentUltimate v5.2.8
Version 5.2.8 - June 3, 2020
-
Fixed: Intermittent AccessViolationException when converting image files to PDF in multi-threads (e.g. Parallel.ForEach).
-
Fixed: Auto exif orientation for multi-page TIFFs, only first frame was being rotated.
-
Improved: Stability, performance for conversion of raster image files to Portable formats.
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+
DocumentUltimate v5.2.5
Version 5.2.5 - May 22, 2020
-
Improved: Used GleamTech.Util namespace for a few remaining JS functions related to DocumentViewer (e.g. executeFunctionByName)
and used GleamTech namespace for JS loaderReady and loaderQueue variables to prevent conflicts and global namespace pollution. -
Fixed: RenderHead and RenderBody were not available in ASP.NET Core 3.0's new Razor Pages (cshtml with @page directive).
Changed base class for ASP.NET Core extension methods from RazorPage to RazorPageBase to fix it. -
Improved: Stability, accuracy for Portable and Spreadsheet formats.
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+
DocumentUltimate v5.2.2
Version 5.2.2 - January 24, 2020
-
Fixed: Viewing some files (or converting when hosted on IIS) caused StackOverflowException. The viewer would only show "Status: error"
message without details as it was not possible to catch this exception. This was expecially reproducable for PDFs with signed certificates.
IIS (also IIS Express) reduces the regular 1 MB stacksize to 512KB (and to 256 KB on 32-bit w3wp.exe) and this caused some conversions to
fail with this exception.
This is now prevented. If current thread's stack size is lower than the required stack size, a new thread will be created with the required
stack size and the conversion will be done inside this thread to prevent StackOverflowException. -
Changed: LicenseKey property will now throw error also for null values (in addition to empty string (whitespace) values in v5.2.0).
TrialExtensionKey property will now throw for null and empty string (whitespace) values.
This is useful to prevent silently falling back to trial mode when you are not aware you are passing invalid values (e.g. setting values
retrieved from an external source). -
Improved: DocumentCache will from now on consider zero-sized cached files as not existing because they are usually left overs from failed
old cache attempts. For example some exceptions are not catch-able like StackOverflowException so sometimes it may not be possible to cleanup
a newly created zero-sized cache file before the process exists.
This will prevent "Downloading file part error occured and could not get the reason." error when a conversion was not working before but
it was fixed later (a zero-sized cached file will trigger a re-conversion).
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+
DocumentUltimate v5.2.0
Version 5.2.0 - January 9, 2020
-
Added: Support for viewing and converting STL File Format (3D Printing).
-
Added: New GleamTechConfiguration.EnsureAssemblies method which ensures GleamTech's assemblies are loaded and initialized.
You may need to call this method in entry point/startup of your application, if you receive "Could not load file or assembly ..." errors.Some DLLs are embedded inside GleamTech's DLLs and they are resolved automatically when they are requested however
internal AssemblyResolver should be initialized first and internal AssemblyResolver of each GleamTech DLL can be initialized
only when a type inside that DLL is accessed first. So in some cases, even a GleamTech DLL is loaded, its AssemblyResolver
may not be initialized yet (because none of its types is accessed yet). You can observe this behaviour if your application
calls some methods which scans assemblies for reflection purpose (reflection-only type access does not trigger DLL's module initializer),
for example ASP.NET Core's endpoints.MapControllers method and SimpleInjector?s RegisterMvcControllers method.
So to prevent errors on those methods, you can call this method before such methods.Note that you should not need to call this method usually for web applications, because it is handled automatically
as we can know when the application is started by hooking up (automatically in ASP.NET Classic and when you call AddGleamTech and
UseGleamTech methods in ASP.NET Core). -
Changed: In previous versions, invalid values for GleamTech related configuration keys (e.g in Web.config or appsettings.json) was
silently ignored (exceptions were swallowed). From now on, invalid property values in config files will throw exceptions just like when
they are set in code. This is especially useful for "DocumentUltimate:LicenseKey" property, i.e you should instantly know if you put an invalid license
key (empty string for "DocumentUltimate:LicenseKey" property will also throw) without silently falling back to trial mode.
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+
DocumentUltimate v5.1.7
Version 5.1.7 - December 6, 2019
-
Fixed: Updated nuget dependencies such as "System.Drawing.Common" package (packages part of Windows Compatibility Pack) to the
latest 4.7.0 for stability. For instance 4.5.1 seems to have a bug;
Intermittent error when converting images to PDF (especially when multi-threads are used):
"Attempted to read or write protected memory." -
Improved: New product icon for nuget package and docs.
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+
DocumentUltimate v5.1.6
Version 5.1.6 - November 27, 2019
-
Fixed: Some PDFs with annotations failed to load, i.e appeared loading indefinitely, but actually an error was thrown in the console:
"Unsupported XPZ document element type" -
Added: New property WordProcessingInputOptions.Encoding that will be used to load an Html or Txt document if the encoding is not
specified in the file.
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+
DocumentUltimate v5.1.5
Version 5.1.5 - November 20, 2019
-
Changed: Renamed nuget package to "GleamTech.DocumentUltimate".
From now on, same package names will be used for both get.gleamtech.com feed and nuget.org feed (no .NuGetOrg suffix).
Please uninstall all GleamTech packages with old names and install the ones with the new names.
In Visual Studio: Go to Tools -> NuGet Package Manager -> Package Manager Console and run these commands one by one in order:Uninstall-Package DocumentUltimate -RemoveDependencies
Uninstall-Package DocumentUltimate.NuGetOrg -RemoveDependencies
Install-Package GleamTech.DocumentUltimateIf you are using direct DLL references, note that the dependency assembly "GleamTech.Core" is renamed to "GleamTech.Common".
So in this case, first clean your project, remove references to old assembly, add references to new assembly and build your project. -
Fixed: When viewing or converting Spreadsheet formats, the original headers and footers were being emptied even if
SpreadsheetInputOptions.RenderHeader and SpreadsheetInputOptions.RenderFooter properties were not set to any value.
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+
DocumentUltimate v5.1.2
Version 5.1.2 - November 18, 2019
- Fixed: For net40 DLL, conversion from diagram formats failed when loading from stream, so also viewer could not open diagram formats.
Included example projects:
- ASP.NET Core (C#) - Visual Studio 2017+
- ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
- ASP.NET MVC (C#) - Visual Studio 2010+
- ASP.NET MVC (VB) - Visual Studio 2010+
- ASP.NET WebForms (C#) - Visual Studio 2010+
- ASP.NET WebForms (VB) - Visual Studio 2010+