Search Results

Search results 161-180 of 430.

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Hi, with your code, the bitmap should be drawn into the IMAGE widget. Quote from anuj.tanksali: “GUI_DrawBitmap(&image1, 50, 260); ” What are the dimensions of the IMAGE widget? Note that when drawing inside the WM_PAINT case of a window/widget, relative coordinates have to be used instead of screen coordinates. So for example the top-left position of a window in its relative coordinates is (0,0). Is x: 50, y: 260 still in the visible area of the IMAGE widget? Best regards, Florian

  • Hi, creating a QR code allocates memory, although they aren't very memory intensive. Basically, the function allocates memory to create a 1bpp bitmap which is the QR code. A 1bpp bitmap would have to be about 400x400px big to require 20kB of memory. Can you send me some code to reproduce this issue? Best regards, Florian

  • Hi, you can check when a version was released via the "Manual versions" table in the emWin manual. V5.44 was released November 15th, 2017. The latest version is V6.16. Best regards, Florian

  • Hi, which version of STemWin are you using? GUI_QR_CreateFramed() was added to emWin with V6.12, while GUI_BARCODE_Draw() has been released since V6.10. Best regards, Florian

  • Hi, The sample you are using hasn't been updated and would only work with the old ABGR color format. One of the differences between the ABGR and ARGB formats is that the alpha values are inverted. You are using the new ARGB format since you defined GUI_USE_ARGB to be 1. The sample creates a memory device using the GUICC_8888 color conversion, but it should be GUICC_M8888I when using the ARGB format. You can easily fix this by creating the data device as follows: C Source Code (1 line)The routine…

  • Hi, Using the latest AppWizard version (V1.10) you can move and resize a window requiring only a few interactions. To animate the window position, you can use the ANIMCOORD job. The size of a window can be animated using a variable. Basically you are "animating" the value of the variable using ANIMVALUE and reacting on VALUE_CHANGED to execute the job SETSIZE on the window. For the "Value" in the SETSIZE interaction parameters you can then use the size variable by clicking "Set variable". Attach…

  • Hi, If Century Gothic does not include Chinese characters, you would have to use a third-party tool to create your own custom font. As said above, the Font Converter is only able of merging font files of the same font, type and size. Best regards, Florian

  • Hi, animated sprites take up more memory while GIF files require less memory, but are heavier on performance because the file needs to be read and decompressed first. An easy way would be displaying an animated sprite using an animation that only runs a single time. If you prefer to use the GIF file, you can read the delay of a single frame using the routine GUI_GIF_GetImageInfo() or GUI_GIF_GetImageInfoEx(). You could hide the IMAGE widget when the total delay of all frames is over. Best regard…

  • Hi, Virtual screens are an obsolete feature. What you want to do can be achieved by creating a large window (e.g. two times the horizontal size of your display) and using motion support for scrolling through the window. The Window Manager is a requirement for this, though. Our wiki provides an example that demonstrates how this can be done. Best regards, Florian

  • Hi, Which version of AppWizard are you currently using? If you are using an older version, the error might have been fixed already. You can download the current version of AppWizard Trial V1.10_6.14g on our website. The main purpose of variables is to be used from outside of AppWizard. Using variables and interactions, you can change the visibility of an object by setting a variable using APPW_SetVarData(). Best regards, Florian

  • Hi, the functions needed to run AppWizard projects are already included in the AppWizard. You can evaluate the tool by downloading the trial version that you can find on our website. However, the trial version does not include BSPs, therefore you only be able to run the project in the simulation, but not on a hardware target. To run AppWizard projects on a target, the full version is required which is included in an emWin PRO shipment. Best regards, Florian

  • Multiple language support

    SEGGER - Florian - - emWin related

    Post

    Hi, you can save a font as an XBF file to store it on external memory. If the external memory is inaccessible, you will need a file system to access and read the files. Quote from anuj.tanksali: “Also is there a way to generate a single font file with all the sizes and fonts. ” The output font file always contains characters that are of the same font, the same size and of the same font face (bold, italic, etc.). For example if you had "Roboto, 30, bold" and "Roboto, italic, 22", it would not be …

  • Hi, It is hard to say what is causing this behavior without any reference points. Could you provide an example to reproduce the behavior you are describing? Thanks in advance! Best regards, Florian

  • Hi, the GUI_Edit...() functions are old functions that do not give any visual feedback on the screen. It's better to use an EDIT widget that is in decimal mode. You can create an EDIT and call EDIT_SetDecMode() to activate decimal mode. The EDIT also provides equivalent functions for binary mode, float mode, etc. Best regards, Florian

  • Create chinese font

    SEGGER - Florian - - emWin related

    Post

    Hi, I noticed a few things: 1. You must not comment out the super-loop in your main-task when using the Window Manager. This will only work when only using GUI_... functions in the MainTask. Otherwise emWin isn't kept alive and no more routines will be called after the MainTask finished. 2. You also have to initialize emFile and mount the external volume. Once again, have a closer look at the XBF font sample, the file is read exactly the same way. Best regards, Florian

  • Hi, widgets are essentially windows, but each with specific "widget properties" (like button color etc.). For the GIF animation it would normally make sense to use an IMAGE widget. But since you mentioned that the performance of the animation wasn't too good, it might make sense to use a normal window instead and display the animation by drawing each frame as a bitmap, like I mentioned above. See the attached example to see how this can be done. For 2D-drawings it would make sense to create a wi…

  • Hi, when calling WM_InvalidateRect() with the area specified to one of your drawings, only the parts in the area should be redrawed, as mentioned above. Is it possible to create a separate window for each of the three drawings you want to do? That way, you could redraw each drawing as you would like by invalidating the respective window. Best regards, Florian

  • Hi, a WM_PAINT case handles all the drawing operations that are done in a window. So you don't have to consider in the WM_PAINT case, which parts of the window you want to redraw. If you want to redraw a certain part of a window, you can use WM_InvalidateRect(). WM_InvalidateArea() redraws the specified area, but for all windows that are within the given area. When you're invalidating a rectangle/an area, the WM_PAINT case of the affected window (or windows) is executed as normal, except that th…

  • Hi, drawing of GIF images can become quite slow, depending on the GIF image. The more colors differ in a horizontal line, the longer it takes to draw the image. An animated gradient for example would have a big impact on performance. Also, the higher the index of one image to be drawn is, the longer it could take as well, since the search for the sub-image takes longer. To increase performance, I would suggest to convert and save the sub-images as C bitmaps or external XBF files, if your target …

  • Hi, unfortunately, the AppWizard does not currently offer the possibility to draw rounded rectangles via the Box object. But such a feature definitely makes sense and we will consider adding it with a future release. As for now, you can create a window in your application that draws a rounded rectangle. Add an interaction for your screen on INITDIALOG and set NULL as the job (e.g. ID_SCREEN_0 -> INITDIALOG -> NULL). This will generate a slot routine in the slot file of the screen, where you can …