I need to show a large image (or pdf) that the user can then scroll around and pinch & zoom.
In iOS / Android, I'd just show it in a WebView.
Note: the file to display is from the filesystem (an asset), not from the internet.
Is there a way of doing this in Flutter?
Actually the only thing that you can do is to use this plugin:
https://github.com/dart-flitter/flutter_webview_plugin
It is not very customizable, but it should work for simple use cases.
PS. The zoom actually doesn't work and there is also another similar library:
https://pub.dartlang.org/packages/flutter_web_view
Related
I can see that most apps use Rounded Texture Button for Toolbar commands on macOS. However I can't make those buttons look fully native if I use a custom image (vector or bitmap). The problem is that if the window is inactive, image is still painted the same and not semi-transparent. This works fine if I use the system provided images, so my guess is that it has something to do with the image definition, but I have tried various things (like using Assets or Resources, using vector and bitmap images) and still no success. As said I guess it is something simple, but hard enough that I can't find it, can anyone help?
You need to set the image as template image. Only then AppKit is able to render the image correctly in every circumstance.
I develop a image browser to show image series with QSlider. I connncet valueChanged(int) of QSlider to a self-defined function:
QObject::connect(ui.imgIndexSlider, SIGNAL(valueChanged(int)), this,SLOT(onimgIndexSliderValueChanged(int)));
when I drag the slider, the image that QLabel shows will changed by the QSlider value.It works.But there is a problem that if you drag fast,the Application will not run acceptably.
Could you tell me how to slove this problem.
Thank you very much.
It is not clear much from your question, but I am assuming that you are showing images like a slideshow using the slider. When you slide it fast your application is getting choked i.e. freezes?
Qt is rendering the image in your GUI thread.
If the images are all high resolution then it will take much more time in rendering each image.
When you slide faster than Qt can render a single image you will experience problems.
So here is what I would ideally do if I were in your place:
Implement a custom algorithm which will read the image file and
create a preview image of much smaller size. Since you are only
generating a pixmap in memory, you can do this by multi threading.
You can do this when your application is launched.
Show all the preview's as scrollable tiles on left pane similar to
Powerpoint. You can reduce some coding here by letting Qt render
these preview's by using QLabel.
Have a central widget which occupies the major chunk of the window
which will render the images using your custom algorithm. Your
algorithm will be such that it will read the actual image if the
slider is not running. If slider is running fast enough then you simply need to
scale your preview images and display in the widget.
Feel free to ask questions if you find anything difficult to understand. :)
I have a site at present built using magento and using magic zoom for product images, the plugin works fine for desktop versions and on most responsive designs, however on some screens, most iphone4s, the image takes up the whole top half of the screen and I can't scroll using my finger if I press on the image.
Is there a way to conditionally add CSS and js files based on screen size?
Any help would be appreciated.
I think the easiest way is to put some check if it is mobile in that script.
for example:
if (jQuery(window).width() > 767) {
// here should be the code from magic zoom
}
That means it will show the code from Magic zoom only if window width is bigger then 767
I am new to J2ME. I just want to know how to put a textfield over a background image. I tried canvas but I can only set the background image and don't know how to add a textfield above the background image. Please help me.
APPROACH I: Using high level api's like Screen, Item, etc
It is NOT feasible in Java ME (CLDC) using high level api's like screens, items, etc are laid out on the display with default device styling and without the extensive layout support like Swing.
APPROACH II: Using low level api's like Canvas
To use the low level api's you need to create custom components like in J4ME. In their you layout the Canvas and paint the components on the top. So in your case you can render the image of the size of Canvas and then render the components on top of it.
NOTE: Please keep in mind this a very tedious and not so rewarding process.
APPROACH III: Use third party library
High Rated UI libraries: LWUIT and J2ME-Polish
SO: JavaME UI Libraries
with windows phone 7 i am using teh bing map control. i have it working just fine. however, the zoom buttons (+,-) are at the bottom of the page and difficult to see.
The buttons have black border with black text. They are easy to see on a light map background, but with black background they are in essence hidden.
Does anyone have an idea on how to make them easier to see?
As invalidusername said you can use the pinching to zoom in and out and it is probably a better way to do it. But in my case I haven't a device or touch screen so needed to use buttons in this way to test my map.
Rather than using the built-in zoom buttons I looked at the sample code from this tutorial which has icons for zoom in/out and data bound them to the zooming of the map. Adapting it to my needs. It works pretty well:
http://msdn.microsoft.com/en-us/wp7trainingcourse_usingbingmapslab_topic2
You can change the positioning/images etc.
As per DanielBallinger's comment the link above seems to no longer work. The following does:
Bing Maps Tutorial