Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 07/22/23 in Posts

  1. Alexander Sviridenkov

    ANN HTML Library 4.7 released

    What's new video: Demos used in video: Map Viewer (OpenGL canvas., SVG, PDF, etc) https://delphihtmlcomponents.com/MapView.zip Fast blur: https://delphihtmlcomponents.com/blur.zip HTML Editor (VCL), print preview window https://delphihtmlcomponents.com/htedit.zip Office file viewer and print preview window https://delphihtmlcomponents.com/FileBrowser.zip What's new: Core Precise text rendering and measurement for all windows canvases: now text has the same layouot in GDI, GDI+, DX and Skia canvases on screen and printer and doesn't depend on scaling. Skia canvas for VCL. PDF export using Skia canvas - works from any canvas, not only Skia OpenGL canvas - useful for fast rendering of very large SVG (don't use as default canvas - it requires window handle). GDI canvas: improved graphics rendering speed. CSS var() support. function htmlpars.GetHTMLEncoding - determine codepage of HTML (TBytes). function for converting stylesheet to dark theme - TCSSStyleSheet.LighttoDark Support for UTF8 encoded inline SVG images. Optimized SVG paths seialization (smaller size) Optimized drawing of large SVG Support for individual glyph positioning in SVG text (DX attribute). THtCustomPath: CurveTo record now do not have initial point, all curves are defined by 3 points. HtPanel/Editor: support for horizontal mouse wheel HtPanel/Editor: Smooth scrolling in both direction HtPanel/Editor: Fast zoom in / zoom out in OpenGL canvas. Library now contains fastest native blur implementation (10-50 times faster than other). See htcanvas.FastBlur() Fast Base64Encode function (5-10 times faster than standard): htutils.Base64EncodeNoLF() THtBitmapData bitness conversion and masking methods are optimized using SIMD, f.e. Convert24to32. TSVGElement has GetStats methods for retrieving number of primitives, points, etc. Added support for system colors from CSS 4 color module: canvas, canvastext, field, fieldtext, etc. Bitmap images are now supported in GDI+, DX and Skia canvases. FontAwesome is upgraded to version 6.4. Now it contains regular (fa) and solid (fa-solid) icons. Support for CSS variables. Optimized displaying of documents containing many SVG images - like converted PDF documents (2000+ pages). Support for outlined and filled text (SVG). Support for relative image paths ('.\..') Improved flexbox layout. THtImageConverter now have CanvasClass propery - used in HTMLtoPNG conversion. HtPanel: OnScroll event New core classes documentation - /docs/HTML Library.chm/pdf https://delphihtmlcomponents.com/help/ New demos - MapView, Blur, Skia Editor Words suggestions/prediction while typing - see Words prediction section in Editor manual. New icons in context toolbar. Context and selection toolbars has acrylic background. All toolbars (selection, spellcheck) can be closed by pressing Esc. Add/edit image button in context toolbar Copy image button in selection toolbar Print preview button in context toolbar Add Symbol button in context toolbar. Spellcheck button in context toolbar. Windows ISpell implementation - htspellwin unit. Simply add it to uses list for spellcheking and word correction. Inline word correction - click on misspelled word to see suggestions. Windows spellecher is also used for autocorrection, suggection selection is based on Levenshtein distance. Cancelled autocorrections are remembered - words are added to exceptions list. Inline image cropping - use shift + resize handles Reports and Scripts New preview window for VCL and FMX (OSX, Linux) - float toolbar, smooth scroll and zoom, page selection and reorder, text search, text editing and moving. Preview window store its maximized/normal state and position for normal state even when maximized. Support for var parameters of all types. Fixed repeat - until bug. Default indexed properties now workind for object proprties, f.e. property Strings: TStringList; Obj.Strings := 'test'; Script can have own debugger instance
  2. I tend to stay away from those functions since they use Variant, which is usually unnecessary overhead. But it depends on your particular needs. Integral properties are handled by GetOrdProp() and SetOrdProp() (as in, Ordinal)
  3. You can't take a pointer to a property, like you are trying to do. You should look into using RTTI instead. Someone else was asking a similar question on StackOverflow just yesterday: https://stackoverflow.com/questions/76729720/how-do-i-get-a-pointer-to-a-property-in-delphi
  4. David Schwartz

    Delphi job req I just got

    Thankfully, my days of working for large corporations with their policies aimed at micromanaging programmer activities are over. I don't have an issue with Traceability. What i have an issue with is when you're working for a company and they put you through a few days of formal training in something like Agile that goes through things in detail, then you get back to your project and are told things aren't really the way you were taught. Such as, while Development owns the Backlog, Developers aren't allowed to write up Change Tickets or submit anything into the Backlog, only the Client is, and that requires a detailed documentation of the errors and how to reproduce them. Which is fine unless the errors are not reproducible because of existing bugs that the Client won't ever see, but Devs can and do find them. We're hired as "experts" and then managed like monkeys. I'm done with it. Got my own stuff to play with now. 🙂
×