Alexander Sviridenkov
Members-
Content Count
280 -
Joined
-
Last visited
-
Days Won
28
Everything posted by Alexander Sviridenkov
-
Which library for "Small" Graphics Application, GR32, GDI+, Skia, ...
Alexander Sviridenkov replied to cltom's topic in VCL
IMHO such tasks should not depend on graphic library and should not require low-level graphics knowlege. What you need is object manipulation library, like vector diagram editor. Here is simple implementation using HTML Component Library (compiled and project source). 20 minutes, 50 lines of code. You can drag images from lbrary at right side, select it, resize, rotate, delete (Del key): https://delphihtmlcomponents.com/ImageMove.zip It can use Direct2d or GDI+ or FMX canvas on any platform - doesn't matter. -
A tool to simplify source code search. Find where class or function is declared, where class descendants are declared, search only in comments or in strings, etc. Build for Delphi and written in Delphi from scratch. Detailed description: https://delphihtmlcomponents.com/codefinder.html
-
Invalid pointer operation when try to replace object in list
Alexander Sviridenkov replied to RaelB's topic in VCL
By default TObjectList owns contained objects. So create it with False parameter in constructor or use Extract to remove object from list. -
It is better to use HTML parser for this.
-
how can i create pdf report or picture report for android device
Alexander Sviridenkov replied to saeedbay's topic in FMX
Use any FMX reporting library that works on Android. -
Conversion between Markdown and HTML
Alexander Sviridenkov replied to John Kouraklis's topic in General Help
No, it general case this is not possible, only for very limited set of tags,. -
Conversion between Markdown and HTML
Alexander Sviridenkov replied to John Kouraklis's topic in General Help
Your HCL version has MD to HTML converter in htmarkdown unit, please use MD := TMDParser.Create(..); s := MD.Render; There is also THtMardown panel which displays MD placed to HTML property. IDE from version 11.2 uses this component for MD files and code hints. -
HTML Library & Office Library sale: 25% discount on new orders
Alexander Sviridenkov posted a topic in Delphi Third-Party
Please use coupon code CS2022 (valid until end of the week). https://delphihtmlcomponents.com/order.html -
Choice of Windows text rendering engines
Alexander Sviridenkov replied to pyscripter's topic in Windows API
Code is not simple, you shoud implement IDWriteFontCollectionLoader, IDWriteFontFileEnumerator, IDWriteFontFileStream, IDWriteFontFileLoader interfaces and use Factory.CreateCustomFontCollection. -
DirectWrite has own methods for loading custom fonts from memory.
-
1 day 50% discount on HTML Office Library
Alexander Sviridenkov posted a topic in Delphi Third-Party
https://delphihtmlcomponents.com/office.html Please use coupon code BFO2022 HTML Office Library is a cross platform and 100% native solution for reading and displaying MS Office files (RTF, XLS, XLSX, XLSB, DOC. DOCX, PPT, PPTX), PDF, EPUB, MD, FB2, WMF, EMF, PICT, MSG, EML, OutLook (PST and OST) and The Bat mailboxes. For Word formats (DOC, DOCX, RTF) it supports both paged and web layout. Converted document can be displayed in VCL or FMX application (using included part of HTML Component Library) or browser. Conversion is threadsafe and do not use system API so can be used in Web serverrs. Embedded WMF/EMF/PICT vector images are converted to SVG. Library also contains full text search engine (also 100% written in Delphi) which is faster and requires less memory than other well-know solutions. Test on 8000 EPUB documents, 3.5 Gb. Application Indexing Time Index Size Mem used DocFetcher 3 min 476Mb 600Mb dtSearch 8 min 727Mb 1000Mb X1 Search 59 min 1260 Mb 600Mb Copernic 13 min 1150 Mb 500Mb Office Demo 1m 30s 145 Mb 300 Mb There are two compiled demos available: Simple document viewer: allows to view any document on hard drive using file tree on left side and HtPanel on right. https://delphihtmlcomponents.com/FileBrowser.zip Search Engine demo: create full text search index for documents located in selected folders and find any document from application or Web. https://delphihtmlcomponents.com/SearchEngine.zip No installation required. How to use: Run application (SearchEngine.exe). Click Add folder and select folder containing office documents or Outlook PST/OST databases. Click Start indexing, wait until it is completed. Search for documents using one of the following: a) Go to Search tab and enter search query (any words). b) Click Web interface icon and enter search query. -
1 day 50% discount on HTML Office Library
Alexander Sviridenkov replied to Alexander Sviridenkov's topic in Delphi Third-Party
Sorry, currently only Site license is available. -
TZipFile has RegisterCompressionHandler method so you can register custom compression class that will call libdeflate for compression. Delphi headers for Libdeflate can be found on this forum.
-
You can register own ZCompression stream implementation based on libdeflate, it will be much faster than default implementation.
-
Adding (CORS) Headers for simple fileserving THttpServer
Alexander Sviridenkov replied to omnibrain's topic in ICS - Internet Component Suite
You can add it in OnCommang* event handler AResponseInfo.CustomHeaders.Add('Access-Control-Allow-Origin: *'); AResponseInfo.CustomHeaders.Add('Access-Control-Allow-Methods: GET, POST, PUT, DELETE'); AResponseInfo.CustomHeaders.Add('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept'); -
Percent Calculations
Alexander Sviridenkov replied to andyf2022's topic in Algorithms, Data Structures and Class Design
round(pos/2.55) -
Text overlapped in Delphi Html Component Library
Alexander Sviridenkov replied to Edwin Yip's topic in Delphi Third-Party
This may be related to incorrect font information returned by WinAPI for new fonts in W10/11. AFIR latest HCL versions contains workaround for this. Whole rendering in one control is performed using single canvas class. You can set canvas class separately for each control but they cannot be mixed. -
Text overlapped in Delphi Html Component Library
Alexander Sviridenkov replied to Edwin Yip's topic in Delphi Third-Party
Default is THtCanvasGP (GDI+). Current version works fine on Windows10/11, so I don't know what may cause this issue in 3.7. Have you tried different fonts (Arial, Tahoma, etc)? -
Text overlapped in Delphi Html Component Library
Alexander Sviridenkov replied to Edwin Yip's topic in Delphi Third-Party
Is it present when using all canvas classes (THtCanvasGDI, THtCanvasDX, THtCanvasGP)? Also does simple test project (form and HtPanel created at design time) has the same issue? -
Made QP of replacing Delphi ZLib implementation with faster one.
Alexander Sviridenkov replied to Tommi Prami's topic in RTL and Delphi Object Pascal
I made a simple wrapper for libdeflate and test its speed compared to default Delphi Zip library. Test performs compression and decompression of 1Mb XML file. Libdeflate is 3.4 times faster than Delphi ZLib (Delphi 11, Win64). -
FireDac cannot load Firebird 3.0 client library on Linux
Alexander Sviridenkov posted a topic in Databases
Application is compiled with Delphi 11.1. I'm trying to connect to Firebird 3.0 on Linux, but getting error " [FireDAC][Phys][FB]-314. Cannot load vendor library ..." libfbclient,so (symbolic link) and libfbclient.so.3.0.10 are in the same directory as application. Even explicit setting of VendorLib with full path (tried both libfbclient,so and libfbclient.so.3.0.10) doesn't help. Libraries are from this archive: https://github.com/FirebirdSQL/firebird/releases/download/v3.0.10/Firebird-3.0.10.33601-0.amd64.tar.gz Interesting that when client library is replaced with one from Firebird 2.5 it is loaded succesfully, but 2.5 client cannot connect to 3.0 server. -
FireDac cannot load Firebird 3.0 client library on Linux
Alexander Sviridenkov replied to Alexander Sviridenkov's topic in Databases
Thanks, there was unresolved dependencies on libtommath and libncurses -
HTML Component Library can display SVG on all platforms.
-
I also got this error (MessageID was definitely present in returned email). Found this discussion https://support.google.com/mail/thread/167914967/inbound-replies-to-my-gmail-not-appearing?hl=en-au
-
I'm glad to announce a new release of the HTML Office Library: 100% native and cross-platform Delphi library for conversion and displaying documents of the following types: Rich Text Format (RTF) MS Word 6-2007 binary format (DOC) MS Word XML document (DOCX) MS Power Point binary format (PPT) MS Power Point XML format (PPTX) MS Excel binary format (XLS) MS Excel XML format (XLSX) MS Excel XML binary format (XLSB) Adobe PDF format (PDF) Supercalc format (SXC) EPUB (electronic books). FB2 (electronic books). Markdown. Outlook Message (MSG) MIME message (.EML) Outlook databases (.OST, .PST) The Bat! database (.TBB) RAR archives ZIP archives Whats's new 1. Improved conversion quality for all document types. 2. Significantly improved conversion speed and memory consumption for all document types. 3. Reduced size of converted document for all document types. 4. Document to text conversion is now much faster (direct text extraction and use of SAX parser for XML). 5. Added support for MIME mail messages .EML (including attachments). 6. Classes for reading Outlook databases (.PST, .OST). 7. Classes for reading RAR archives. 8. Classes for reading The Bat message folders (.TBB). 9. New THtOfficeDocument.AsThumbnail function for creating document thumbnail. 10. Added support for password protected office files (OnPasswordRequest callback in converion methods) 11. New THtOfficeDocument.ConvertStreamtoText for converting to text with support for callback function which get next portion of text during conversion. 12. New MaxLines and MaxPages properties to limit size of converted document. 13. Converted Word/RTF documents can have paged and web layout. 14. Direct PDF export for all platforms (no OS or third party library used). 15. Fully functional text search engine (can index documents from any souce: file, archive, database, etc. using implementation of IHtVirtualFolder interface). Conversion speed measurements: There are two compiled demos available (source code of both applications is included): 1. Simple document viewer: allows to view any document on hard drive using file tree on left side and HtPanel on right. https://delphihtmlcomponents.com/FileBrowser.zip 2. Search Engine demo: create full text search index for documents located in selected folders and find any document from application or Web. https://delphihtmlcomponents.com/SearchEngine.zip This demo also shows the following features of THtSearchEngine: Date map - found document number by year Type Map - found documents by category Completion Test on sample database: Note that search time depends only on amout of found/shown documents and do not depend on total document count. https://delphihtmlcomponents.com/office.html