Jump to content

vfbb

Members
  • Content Count

    278
  • Joined

  • Last visited

  • Days Won

    30

Everything posted by vfbb

  1. vfbb

    Exception logging/reporting on MacOS?

    @Alexander Halser A few years ago I made a tutorial on how to explore iOS app crash, but the same applies to macOS as well. Take a look especially at Step 4 - Symbolizing the crash file.
  2. vfbb

    SwipeTransitionEffect Right2Left broken?

    @Riku23 Can you attach a demo? Are you using Skia? I’m asking this because Skia is rendering its own filters on RAD 12+, so you can get different results when Skia is enabled. Let me know if this is the case.
  3. vfbb

    Listbox with images scrolls not smoothly

    @John van de Waeter The performance with Skia was improved on RAD Studio 12.2. Also, the property Form.Quality affects the performance when Skia is enabled. Note: I recommend delete your project dcu output folder as it may contain old versions of Skia4Delphi from the open-source installation.
  4. vfbb

    White screen on iPhoneX

    Seems related to “Display zoom” option of iOS. Issue reported here: https://github.com/skia4delphi/skia4delphi/issues/315
  5. vfbb

    Loading and Saving PNG into TBitmap changes the image

    @XylemFlow are you using GlobalUseSkia := True;?
  6. vfbb

    New to Delphi 12, can't turn off adaptive icons

    Also, the adaptive icon files, and all artwork generated files, are available at your project folder, in the subpath “.\<ProjectName>.Artwork\”. It is important to note that the adaptive icon and the vectorized splash are only generated when you use and SVG on the input of icon fields of the artwork generator. That is, if you use PNG image, it will generate all icons and splashs but not the android adaptive icon and android vectorized splash. If you found a real issue in the IDE and you have the steps to reproduce, please create a Jira for it, to improve future versions.
  7. vfbb

    Delphi 12.1 X simulator IOS 17.5 Error

    Try add GlobalUseMetal := True; on your dpr. iOSSim has one know issue related to OpenGL.
  8. vfbb

    Slow rendering with SKIA on Windows

    @Hans♫ I think that could be a Google Skia limitation or issue, so the right place to report bugs is on https://issues.skia.org/, instead on QP. However, I have already opened a new conversation in the Skia group to obtain more information about this: Poor quality of anti-aliasing on NVidia GPU (google.com)
  9. vfbb

    Slow rendering with SKIA on Windows

    @Hans♫ I used the same code you provided and got satisfactory results. Look: <No Skia> | <Skia + Vulkan> (Scale 100%) It is difficult to deduce what is happening if the same code is producing different results. That's why I think it would be interesting if we could test it on more machines. The project I used is attached: testVulkan.7z
  10. vfbb

    Slow rendering with SKIA on Windows

    @Hans♫ Do you have a blank project simulating this? I drew directly in the form's OnPaint using your example on a blank project and got the same result for all renders, except for the FMX GPU without Skia which seems to be bugged. scale 1x: scale 2.25x:
  11. vfbb

    Slow rendering with SKIA on Windows

    @Hans♫ Is this an image or a path? (we have to understand if the arrow is being drawn or resized) Can you share the source of this icon?
  12. vfbb

    Slow rendering with SKIA on Windows

    @Hans♫ Please check your Form.Quality because the AntiAlias is direct related to the current form quality: https://github.com/skia4delphi/skia4delphi/blob/093ec41b1b951c68cbccaa885a84c19242e09fb7/Source/FMX/FMX.Skia.Canvas.pas#L1571 The AntiAlias of raster is forced to be always true because some preliminar tests proved to be apparently faster.
  13. @Stefan Glienke Could you add a version constant to Spring.pas? Something like: const Spring4DVersion = 2.0; to help us maintain code compatible with 1.x and 2.0 at the same time, as it would allow: {$IFNDEF DELPHI_12_UP} constructor THashSet<T>.Create(ACapacity: NativeInt); begin {$IF defined(Spring4DVersion) and (Spring4DVersion >= 2)} inherited Create(ACapacity, nil); {$ELSE} inherited Create; {$ENDIF} end; {$ENDIF} This is especially important for large teams/projects that share common code, where some projects and people use version 1.x while others use version 2.x, and the common code should support both.
  14. vfbb

    Skia4Delphi

    Website: github.com/viniciusfbb/skia4delphi Skia4Delphi is a cross-platform 2D graphics API for Delphi based on Google's Skia Graphics Library (skia.org). Google's Skia Graphics Library serves as the graphics engine for Google Chrome and Chrome OS, Android, Flutter, Xamarin, Mozilla Firefox and Firefox OS, and many other products. Skia provides a more robust Canvas, being very fast and very stable, with hundreds of features for drawing 2D graphics, in addition to a text shaping engine designed to render texts in the most diverse languages with right-to-left support (such as the Persian language), full support for loading SVG files, support for creating PDF files, support for rendering Lottie files (verotized animations created in Adobe After Effects), integration with the GPU, among countless other cool features. Skia's idea is similar to Firemonkey's, the same codebase used in an OS will work the same on other platforms. It is also possible to design using the CPU in independent background threads. Skia also has native codecs, of course if you don't use the SKCodec class, when loading an encoded image it will give priority to using the platform's native codec, but it is possible to use its codec, for example for jpeg files it uses libjpeg-turbo and for png files libpng which maybe in certain environments may perform better than native. See some examples: Advanced shapes Advanced text rendering / shaping Svg Lottie files And much more...
  15. vfbb

    Copy from a LSKSurface to a TSKPaintBox

    Hi @martincg! I answered you on another topic with the same issue. To preserve the old content of the bitmap when starts draw with skia, you should call Bitmap.SkiaDraw(..., False);
  16. vfbb

    Skia4Delphi

    @martincg Bitmap.SkiaDraw have a second optional argument, AStartClean: Boolean, and when False you will not lost its content.
  17. vfbb

    delphi12 skia vulkan

    1) Enable Skia on your project (right click on project > Enable Skia; 2) GlobalUseVulkan on FMX.Types is default True on Android, so it will use Skia Vulkan on Android by default;
  18. The current design of Vcl's TCanvas makes it unfeasible to create a wrapper that uses different libraries / different outputs. There is already a request to try to improve this and you can vote: [RSP-43149] Remodel TCanvas to allow injection of a different drawing backend - Embarcadero Technologies So currently, what can be done is to draw using the APIs directly from Skia, that is, using the document's SkCanvas, or you can draw in a TBitmap in the conventional Vcl way and in the end use: SkCanvas.DrawImage(Bitmap.ToSkImage, 0, 0); but I don't recommend this because you wouldn't have a vectorized PDF, and the texts couldn't even be selected/copied, as the PDF would be an image in fact.
  19. From what I saw here, the bad quality seems to be only in the preview control. The output images are in good quality.
  20. @PeterPanettone Please, report that on Quality Portal, it is an issue and should be fixed. As a "workaround", I strongly recommend using SVG: Radioactive SVGs which is working perfectly.
  21. When you Run the app by the IDE, it will share the PATHs of the IDE with your program. IOW, in a project without Skia enabled, using skia controls, if you click on Run on the IDE, it will work fine (because the IDE have on it own PATHs the path to the sk4d.dll), but if you run the Project1.exe on the Windows Explorer, it will crash on startup due the lack of the sk4d.dll.
  22. Additional info: On RAD 12 it is possible to encode animated WebP (better format than GIF). See DocWiki.
  23. vfbb

    Loading .webp images into tbitmap?

    Maybe you have the "Webp Image Extensions" installed: https://apps.microsoft.com/detail/9PG2DK419DRG
  24. Yes, this is relevant only for the .aab generation. Note: you can’t change the ‘condition’ on IDE side, you should open the dproj and add it manually. See one dproj with that: https://github.com/skia4delphi/skia4delphi/blob/eed4afbf8a34137a9bfa308bcb5ef87cee84abcb/Samples/Demo/FMX/Projects/RAD%20Studio%2011%20Alexandria/Skia4Delphi.dproj#L1182
  25. vfbb

    No Android Platform in Delphi 11.3

    Did you configure the paths in Tools > Options > Deployment > SDK Manager?
×