Recent Releases of https://github.com/arklumpus/mupdfcore
https://github.com/arklumpus/mupdfcore - Version 2.0.1
Bugfixes
- Outline items should now work correctly for EPUB (and other) documents (#41).
- C#
Published by arklumpus over 1 year ago
https://github.com/arklumpus/mupdfcore - Version 2.0.0
New features
- Updated to MuPDF 1.25.2.
- I am now using a fork of MuPDF, in order to better maintain my changes to the upstream library.
- New API for document creation/conversion.
- Instead of invoking
MuPDFDocument.CreateDocument, the static classMuPDFDocument.Createhas a number of static methods that can be used to create specific document formats, providing format-specific options.MuPDFDocument.Create.Documentoverloads are mostly equivalent to theMuPDFDocument.CreateDocument; here, thefileTypeparameter is used to specify the output format, and the default options for that format are used.- Each of the other methods can be used to create a specific kind of document, providing format-specific options:
MuPDFDocument.Create.PDFDocumentto create PDF documents.MuPDFDocument.Create.SVGDocumentto create SVG files (single-page).MuPDFDocument.Create.CBZDocumentto create CBZ documents.MuPDFDocument.Create.TextDocumentto create a text document.MuPDFDocument.Create.StructuredTextDocumentto create a structured text XML document.MuPDFDocument.Create.HTMLDocumentto create an HTML document.MuPDFDocument.Create.XHTMLDocumentto create an XHTML document.
- As a result,
MuPDFDocument.CreateDocumentis now deprecated, which is somewhat of a breaking change.
- Instead of invoking
- New methods and properties to work with optional content groups (OCGs, also known as layers) in PDF documents.
- The
MuPDFDocumentclass now has anOptionalContentGroupDataproperty, which can be used to access the OCG information, if any. This provides access to the default and alternative configurations, as well as the individual OCGs (layers). - Individual
MuPDFOptionalContentGroupcan be enabled or disabled programmatically, while theUIproperty of theMuPDFOptionalContentGroupConfigurationclass provides access to a tree-like structure of UI elements (labels, check boxes, radio buttons) that should be presented to the end-user for manual toggling.
- The
- New methods and properties to access links in documents.
- The
Linksproperty of theMuPDFPageclass provides a list of all the links contained on the page; eachMuPDFLinkhas anActiveAreaand aDestination(which can be internal or external). TheIsVisibleproperty can be used to determine whether the link is visible (based on the current OCG/layer configuration).
- The
- New
GetBoundingBoxmethod to get the various kinds of bounding boxes from aMuPDFPage(#38). - Changes to how structured text representations are handled, to allow for new types of structured text blocks:
MuPDFGridStructuredTextBlock, representing "grid" lines.MuPDFStructureStructuredTextBlock, representing structural elements.MuPDFVectorStructuredTextBlock, representing blocks of vector art.
The kind of structured text blocks produced is determined by the new optional StructuredTextFlags flags parameter of the GetStructuredTextPage method, which replaces the previous bool preserveImages (this is also a breaking change). Multiple flags can be combined with the | operator (e.g., StructuredTextFlags.PreserveImages | StructuredTextFlags.Dehyphenate will both preserve images and dehyphenate the document).
- C#
Published by arklumpus over 1 year ago
https://github.com/arklumpus/mupdfcore - Version 1.10.2
- In cases where things are disposed out of order, a new kind of exception is now thrown (
LifetimeManagementException), in order to prevent nastierAccessViolationExceptions down the line (#35).
- C#
Published by arklumpus almost 2 years ago
https://github.com/arklumpus/mupdfcore - Version 1.10.1
New features
- Updated to MuPDF 1.24.3.
- Added support for retrieving images and font information from structured text pages (#31).
- It is now possible to save individual images or to get access to their pixel values.
- For fonts, the font name and style are reported. Two methods provide access to the native font handles (but these won't be particularly useful without bindings for the FreeType library or the internal Type3 font renderer).
Bugfixes
- MuPDFCore.MuPDFRenderer: fixed issue with selection not clearing after the page is updated (#32).
- C#
Published by arklumpus about 2 years ago
https://github.com/arklumpus/mupdfcore - Version 1.9.0
New features
- Updated MuPDF to 1.24.0
- Support for new input formats: TXT (text files), DOCX (Microsoft Word), PPTX (Microsoft Powerpoint), XLSX (Microsoft Excel). Note that only plain text is extracted from Office documents and the layout is not fully respected.
- The
MuPDFDocumentclass now has anOutlineproperty, which makes it possible to access the document's outline (table of contents), if one is defined (#29). The PDF viewer demo shows document outlines.
Bugfixes
- The background of the
MuPDFRenderercontrol now works correctly when the control has a non-zero offset.
- C#
Published by arklumpus over 2 years ago
https://github.com/arklumpus/mupdfcore - Version 1.8.0
New features
- Updated MuPDF to 1.23.6.
- Added API to get/set the anti-aliasing level (#27).
- The
MuPDFContext.GraphicsAntiAliasingproperty can be used to get and set the graphics anti-aliasing. - The
MuPDFContext.TextAntiAliasingproperty can be used to get and set the text anti-aliasing. - The
MuPDFContext.AntiAliasingproperty (write-only) can be used to set both the graphics and text anti-aliasing to the same level.
- The
- Added support for JPEG output format.
- Added support for MOBI and HTML input format. This is both integrated within the general
MuPDFDocument.SaveImageandMuPDFDocument.WriteImagemethods, as well as in two dedicated methods (MuPDFDocument.SaveImageAsJPEGandMuPDFDocument.WriteImageAsJPEG) that allow specifying the JPEG quality level. - Added API to layout reflowable document types (e.g., MOBI and HTML):
MuPDFDocument.Layout(float width, float height, float em)can be used to layout the document using a fixed page size.MuPDFDocument.LayoutSinglePage(float width, float em)can be used to layout the document to a single page of the specified width. After these methods have been called, thePagesof the MuPDFDocument will be recreated with the specified layout.
- Enabled strong name signing (#23).
- Native assets are now in separate NuGet packages (the right packages should be picked automatically).
linux-musl-x64andlinux-musl-arm64no longer require manually copying the native asset (but see the note forlinux-musl-arm64).- MuPDFCore.MuPDFRenderer now targets Avalonia 11 (#26).
- C#
Published by arklumpus over 2 years ago
https://github.com/arklumpus/mupdfcore - Version 1.7.0
New features
- Updated MuPDF to 1.21.1.
- Added support form
linux-musl-x64andlinux-musl-arm64platforms.- To get this to work, download the asset you need from this page, and use it to replace the default glibc-based
libMuPDFWrapper.sofile that gets created when you build your app.
- To get this to work, download the asset you need from this page, and use it to replace the default glibc-based
- C#
Published by arklumpus over 3 years ago
https://github.com/arklumpus/mupdfcore - Version 1.6.0
New features
- Updated MuPDF to version 1.20.0.
- Added a wiki with some information and examples (that used to be in the homepage of the repository).
- Added methods to support encrypted and restricted (password-protected) documents (#17), see the page in the wiki.
Notable changes
- Attempting to render an encrypted document without first unlocking it with the user password now results in an exception, rather than producing blank pages as in previous versions.
- C#
Published by arklumpus almost 4 years ago
https://github.com/arklumpus/mupdfcore - Version 1.5.0
New features
- Updated MuPDF to version 1.19.1.
- Added methods to suppress and redirect the standard output and standard error from the native MuPDF library to managed events.
- Added parameters to report OCR progress and to allow cancellation (not supported on Windows x86).
- Added overloads that return
Span<byte>(#16). - New constructor for
DisposableIntPtr, which adds and removes GC memory pressure when it is created/disposed. - Added support for Tesseract OCR on Mac-arm64.
Bugfixes
- Fixed platform target for Linux-arm64 and Mac-arm64 tests.
- Added missing build options for Linux-arm64.
- C#
Published by arklumpus about 4 years ago
https://github.com/arklumpus/mupdfcore - Version 1.4.1
Bugfixes
- Fixed a bug occurring when input or output file names contain characters outside the ASCII range (#14).
- C#
Published by arklumpus over 4 years ago
https://github.com/arklumpus/mupdfcore - Version 1.4.0
New features
- Updated MuPDF to 1.19.0.
- Added tests.
- Added support and native assets for additional platforms:
- 32-bit Windows (x86)
- Native support for Windows on ARM (arm64)
- Native support Linux on ARM (arm64)
- Native support for macOS on Apple silicon (arm64)
Bugfixes
- Fixed a bug in the multithreaded renderer when the requested number of threads contains factors other than 2, 3, 5, or 7.
- Fixed a bug occurring when a Tesseract trained data file is specified directly.
- Updated the URL for the tesseract trained data repositories.
- Fixed a bug causing crashes when using the OCR functions within a program published with
/p:PublishSingleFile=true.
- C#
Published by arklumpus over 4 years ago
https://github.com/arklumpus/mupdfcore - Version 1.3.1
- C#
Published by arklumpus about 5 years ago
https://github.com/arklumpus/mupdfcore - Version 1.2.8
Added method to extract all text from a MuPDFDocument.
- C#
Published by arklumpus about 5 years ago
https://github.com/arklumpus/mupdfcore - Version 1.2.7
- C#
Published by arklumpus about 5 years ago
https://github.com/arklumpus/mupdfcore - v1.1.0
Added option to render page annotations.
- C#
Published by arklumpus over 5 years ago