-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Copy PDF annotations keep the same size on the Windows and macOS #9068
Comments
emmm,核心想法不是为了相对实际大小设置的,而是相对目前显示大小设置的,因为canvas渲染的效果在相同像素下明显比思源中查看要好,所以需要调大截取的比例,保证两者的显示效果差不多。如果使用其他的图片查看器,比如直接使用window的照片,增加0.5的系数就很足够了。 不过移除后为什么是两倍大小?这个结论是怎么来的,能发来测试的pdf吗? |
那我明白了,这个scale获取的是全局或应用的缩放,也就是windows的这个设置: v姐你应该用的是4k屏加全局2倍缩放,才会有这个scale。 但是,在思源或者说web应用中,canvas使用的是实际像素,应用中的图片使用的是被全局缩放影响过的放大像素。因此,虽然从canvas中截取的就是真实的图片大小,但是在思源中显示是会放大的。 如果要保证两者的目测大小一致,那应该取scale的倒数,这样会导致显示效果更加的模糊,在v姐你的设备上相当于原始图片放大4倍的清晰度,我认为这才是不可接受的。 因此,这虽然与用户的第一直觉不符,但是才是合理的做法。 另外,截取这么少的面积对于矩形标注来说才是少见的用法,大面积的框选才是更为常见的,为了这方面的用途,还是需要增加放大系数。 |
另外,使用显示的大小作为基准是很有必要的,因为pdf的大小和形式都是不确定的,有分屏的、纵向的、还有大小经过缩放的,我们没办法使用pdf上的参数确定这个图片截取到什么缩放才是合理清晰的,只能以用户在查看时使用的是什么缩放作为参考。 所以我的想法就是在用户目前查看的缩放等级上增加一个固定值,这样才能更好的以不变应万变。 |
我的是 Mac,应该没有进行过缩放。 是否可以把导出的图片的大小设置为实际大小下的像素值,这样不仅可以兼容中小图,还可以保持任何情况下复制后的图片大小。 |
我调整了一下,你看看这个效果是否可以? |
但是清晰度下降真的很严重啊……明显是变大且模糊了。 而且v姐你不应该截取小区域进行测试吗? |
* commit 'a63e1fda2e203917ae7f72cb359155f4094c4f3e': (217 commits) ⚡ Improve block loading performance on Windows/Linux/macOS amd64 arch siyuan-note#9084 💄 ⚡ Improve block loading performance on Windows/Linux/macOS amd64 arch siyuan-note#9084 🐛 Block hyperlinks do not point to regenerated block IDs when importing .sy.zip siyuan-note#9083 🎨 Reduce the memory usage of PDF asset file content parsing on the mobile siyuan-note#9079 🎨 HTTPS certificate is no longer verified when `Convert network images to local images` siyuan-note#9080 🐛 fix siyuan-note#9076 🐛 fix siyuan-note#9076 🐛 🎨 siyuan-note#9068 🎨 Improve the response status code of kernel API `/api/file/getFile` siyuan-note#9075 Improve the response status code of kernel API `/api/file/getFile` (siyuan-note#9075) ✨ siyuan-note#9032 ✨ siyuan-note#9032 🐛 The update button is not displayed after the marketplace package version is updated Fix siyuan-note#9074 ✨ siyuan-note#9032 🎨 Improve asset file content search preview escaping siyuan-note#9073 🎨 Improve asset file content search preview escaping siyuan-note#9073 🎨 Improve EPUB asset file content parsing siyuan-note#9072 ♻️ siyuan-note#9032 ... # Conflicts: # README.md
这应该属于比较特殊的情况,可以用 QQ 截图代替一下。 |
不能这么说,如果这个还需要使用其他的截图功能来代替,那这个功能还不如不改进呢,至少以前只是有边框,现在是完全用不了了。 |
而且,特殊情况也并不特殊,从我的图片版pdf里,一半都会出现这种情况。文本还能直接划选,那图片版该怎么办? |
我提交这个pr是为了能根据需要获取高清的截图,痛点是之前总是有边框,截的图片不够清晰,但是这越改越难用……我是真的很难受。 |
v姐你也可以自己用这个pdf试试。 |
再来一个过大的 |
好像也有道理,可能平常 pdf 用的比较少。 |
那v姐可以重新考虑一下这个吗? |
嗯嗯,这个版本会改的,要晚一点,还在改其他的 issue。 |
设置为 1.5 倍,麻烦再帮忙看看是否可行? |
v姐,你拿我发的两个测试文件测试一下不就知道了……固定缩放的适用面太小了。 |
能同时满足这两个文件的只能是动态缩放。 |
昨天已经改成动态的了 |
画质什么没问题的话,这个 issue 就这样吧,今天要打包发布了。 |
在左右分屏的情况下,分栏的pdf图像略微模糊……v姐你要不还是用我这个提交 cc2cc04 吧,目前这个在小缩放的时候还是会有点模糊。
|
这个模式在不使用分栏的pdf的情况下是能接受了。 |
版本已经发布了。 按照用户缩放后的比例进行截图,左右分屏和不分屏的情况下如果缩放比一样,大小应该也是一样的。 |
确实如此,只是我希望能适当提高放大系数,目前的放大获取方案不能良好保证任何缩放都能获取足够清晰的图片。 按乘法来的话,在缩放小、比较模糊的时候只能有限改善模糊,在缩放大的时候,又会获取到过大的图片。 所以我的想法是使用加法方案。 更精确的动态缩放系数也有,但是不如加法方案在效果可接受的情况下实现简单。 |
这个pdf是一个矢量化的pdf,实际上的分辨率是无限的。显示较不清晰只是受到分屏时屏幕大小的限制。
我认为这一点是不太正确的,实际上用户自然是希望无限清晰的,只是受到了图片体积的制约。如果说用户最终选择了较为有限的清晰度,那也只是出于图片体积和图片清晰度的综合考量。 但无论如何,用户肯定是希望图片在查看的时候是清晰的,只是不要求无限放大也能保持清晰。因为思源图片总是相较于pdf中相同的像素放大显示,因此增加放大系数来获取截图是符合用户意愿的。
因此,这里的说法只能有限的成立,正确的说法是需要根据缩放的大小,来使用某个算法来使其最终截图在清晰度可接受范围内、体积不会过大。 在我观察了各种算法的效果后,我觉得还是直接使用加法来增加放大系数比较简单且效果可接受,更强的算法是获取截取面积和屏幕面积,然后再使用非线性算法进行计算,但这个就比较麻烦一点。我pr的哪个原始版本直接修改getCaptureScale就行,在v姐你改成现在的代码后,我觉得是有点难以下手了。 |
如果v姐你觉得可以的话,我觉得可以到ld社区进行一下投票,来一个小规模的抽样调查。 |
搜索 1.5 这个,目前是写死的,修改为需要的算法应该就可以了。 |
In what scenarios do you need this feature?
在左右分屏情况下,pdf矩形标注获得的图片比较模糊,不能满足使用,导致实际使用时必须放大pdf区的比例来获得更清晰的图片,但对于左右分栏的pdf还是不够。
如果能给pdf矩形标注复制增加一个可设置的固定系数,就能提高这样的体验,增强pdf分屏模式下矩形标注的实用性。
Describe the optimal solution
将固定系数的调节加入到思源的设置中,固定系数的实现参看
cc2cc04
Describe the candidate solution
如果实在不行,那我也希望能设置一个恒定的固定系数,我认为可以是1
Other information
No response
The text was updated successfully, but these errors were encountered: