Comments (22)
I expanded the experiment by installing fedora 37 in a VM and producing screenshots from the vm and then mounting the qcow2 image, chrooting into it and producing new screenshots. As far as I know, the only thing from alpine 3.17 being used in the chroot case is the wayland compositor (sway) and the kernel.
The 4 images are attached.
from openhantek6022.
Just for reference - Fedora 36 (64 bit), KDE, Wayland. Attached are demo mode screenshot, hardcopy and the whole window captured with spectacle.
from openhantek6022.
I was able to hack it locally by multiplying the width and heighth by 2, but I am not sure what the proper fix is.
@espindola
Which screen resolution do you use?
Where did you multiply by 2?
Please give me a chance to understand the issue - I do not see this behaviour on my laptops (1280x800 and 1920x1080).
from openhantek6022.
I also have HiDPI monitor 3840x2112 and the same problem.
I think we need option to set waveform line width.
from openhantek6022.
set waveform line width
I already tried this long ago. Unfortunately this is not possible with the OpenGL graphics. The option for line width doesn't work - the width stays always "1".
The OpenGL implementation is more than 10 years old when hi dpi was not common. :(
from openhantek6022.
I was able to hack it locally by multiplying the width and heighth by 2, but I am not sure what the proper fix is.
@espindola Which screen resolution do you use? Where did you multiply by 2? Please give me a chance to understand the issue - I do not see this behaviour on my laptops (1280x800 and 1920x1080).
My laptop resolution is 3200x1800, but sway is configured to scale it by 2 (" scale 2" in the config file). I did the hack of multiplying by 2 by adding
int sw = screenshot.width();
int sh = screenshot.height();
+
+ screenshot = screenshot.scaled( sw *= 2, sh *= 2 );
+
I should probably try a KDE or Gnome session to compare. Will hopefully have that tonight.
from openhantek6022.
Thinks look OK on my desktop, which has a 4K display (but is running arch, which has a newer version of sway).
from openhantek6022.
I also have HiDPI monitor 3840x2112 and the same problem. I think we need option to set waveform line width.
Are you using Wayland or X? Which compositor?
from openhantek6022.
I also have HiDPI monitor 3840x2112 and the same problem. I think we need option to set waveform line width.
Are you using Wayland or X? Which compositor?
Currently X11, Kwin.
from openhantek6022.
I got the same issue with gnome instead of sway. Note that the take a regular screenshot (not via the OpenHantek menu) works just fine. One captured with grim is attached.
Looks like QT knows to do something different when outputting directly to the screen instead of to a QPixmap.
from openhantek6022.
One possible workaround is to disable the hdpi scaling just to produce the screenshot/hardcopy. This is what I got when I did that:
from openhantek6022.
@espindola What are your values of sw and sh before you scale them? About 3200x1800 or 1600x900 (scale2)?
int sw = screenshot.width();
int sh = screenshot.height();
+ qDebug() << "screenshot size:" << sw << "x" << sh;
screenshot = screenshot.scaled( sw *= 2, sh *= 2 );
from openhantek6022.
@espindola What are your values of sw and sh before you scale them? About 3200x1800 or 1600x900 (scale2)?
int sw = screenshot.width(); int sh = screenshot.height(); + qDebug() << "screenshot size:" << sw << "x" << sh; screenshot = screenshot.scaled( sw *= 2, sh *= 2 );
I got:
screenshot size: 1596 x 841
from openhantek6022.
Ok, you get the downscaled size and upscale it to the correct 1:1 size.
Now the question, how to know if you're downscaling by 2 (or even by 4)?
A quick solution would be to make it a persistent config option that defaults to 1 and can be changed in the range of e.g. 1..8 - dunno if you have a better idea to detect it automatically.
from openhantek6022.
Ok, you get the downscaled size and upscale it to the correct 1:1 size. Now the question, how to know if you're downscaling by 2 (or even by 4)? A quick solution would be to make it a persistent config option that defaults to 1 and can be changed in the range of e.g. 1..8 - dunno if you have a better idea to detect it automatically.
Given that the image looks OK when drawing directly (not writing to the QPixmap), Qt must know this somehow (see #353 (comment)) , but I don't know where to look.
from openhantek6022.
Please try the latest unstable - set scale factor in menu Oscilloscope/Settings/Scope/Upscale exported images
from openhantek6022.
Please try the latest unstable - set scale factor in menu
Oscilloscope/Settings/Scope/Upscale exported images
The resolution is fixed, but some lines are still broken. Compare with #353 (comment)
from openhantek6022.
Which value did you set? 2?
from openhantek6022.
Which value did you set? 2?
Yes, 2.
from openhantek6022.
strange, then it should give the same result as your
+
+ screenshot = screenshot.scaled( sw *= 2, sh *= 2 );
+
But now another shot in the dark -> new unstable (1e7788b)
from openhantek6022.
But now another shot in the dark -> new unstable
from openhantek6022.
@Vascom @iss000 Please double check also with your HiDPI setup.
from openhantek6022.
Related Issues (20)
- Improve versioning releases
- Building on Apple M1 silicon HOT 4
- Hantek 6254BD support HOT 1
- No graphics output - windows 10 3.3.2.2 HOT 7
- Program stops on Windows 11 when changing horizontal time base (In demo mode and connected with 6022BE) HOT 14
- MacOS Monterey Firmware Upload Error HOT 5
- QObject::setParent: Cannot set parent, new parent is in a different thread HOT 3
- Failed to open main window with error. QOpenGLFunctions created with non-current context HOT 2
- unable to install HOT 2
- Changing timebase crashes HOT 3
- Pausing roll mode HOT 1
- 32bit version
- [Q] Calibration HOT 5
- Add a new device: Hantek 1070 HOT 1
- No traces seen under v3.3.3 HOT 4
- 'Version' field value 'devdrop-3.3.3-22-g1c3a681-dirty': version number does not start with digit HOT 2
- I want to print 1 or 0 on the bottom of each wave form HOT 2
- Build doesn't work on macOS 13 HOT 1
- Horizontal greyed out HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openhantek6022.