在swt的canvas中,加载的图片大于窗口,并且在图片上画了一些图形,怎么在canvas中才能够获得完整的图片(目前只能获得当前窗口显示的区域的图片)

问题描述

如果按照加载进去的图片的大小来获得图片,会把canvas窗口外的区域也获得。而不是完整的加载进来的图片。

解决方案

解决方案二:
我对canvas也不明白,聆听专家指教。。期待中。。。。
解决方案三:
加载图片的代码是什么?那里返回的是个啥东西?应该从它获得一些资料。
解决方案四:
顶下,
解决方案五:
不知道
解决方案六:
路过
解决方案七:
再顶下
解决方案八:
引用楼主dalu2290的帖子:

如果按照加载进去的图片的大小来获得图片,会把canvas窗口外的区域也获得。而不是完整的加载进来的图片。

不好意思,这个还真不清楚呢楼主可以参考一下这个帖子“http://group.gimoo.net/review/34390”希望对你有帮助
解决方案九:
dddddddddd
解决方案十:
没帮助,自己再顶,期待高手!!
解决方案十一:
建议你画图时实时获取canvas的尺寸,再将图片化成canvas那么大,就OK了
解决方案十二:
使用Graphics2D类对图片进行缩小。abstractvoidscale(doublesx,doublesy)将当前Graphics2DTransform与缩放转换连接。
解决方案十三:
首先,需要了解一下层次结构。呵呵。我做过类似的东西是这样。获取图片信息后,取图片宽度和当前画布的宽度较大值,高度也一样。然后按照较大的尺寸重新设置画布的尺寸。这样还不够。因为超出显示区域范围的还是无法看到。所以将画布加入到滚动视图中。当图片很大,也就是说设置后的画布很大,可以通过滚动条来浏览到全部内容。其实思路很简单,建议lz看一些深入的资料,比如理解一些滚动视图内部层次等的相关资料。呵呵,不要小瞧jscrollpane,里面默认就是三个层次啊。滚动条和中间层次平级。
解决方案十四:
我说的获得是可以将在图片上画的图形和文字连同图片一起保存成图片文件,如果缩小的话,怎么体现图片上的图形或文字呢?
解决方案十五:
引用13楼dalu2290的回复:

我说的获得是可以将在图片上画的图形和文字连同图片一起保存成图片文件,如果缩小的话,怎么体现图片上的图形或文字呢?

真是让我越来越糊涂。你图片缩小了,上面你画的那些东西不随之按比例缩小?不变化?若是这样,我也是头一遭见到……就算是这样,你取得最大的值啊。只要是在canvas上的东西全部都可以保存,不管是不是当前可见的,不管是你load的图片还是你用代码加上去的东西。当然,保存的时候也许需要设置一下保存的图片大小。
解决方案:
从一楼看下来看的我都迷糊了如果是想获得组合图片并保存的话可以这几步走:1.drawimage的时候保存此图片的widthheight2.绘制完文字和图形后保存此canvas的的图像资源BufferedImagebufimg=newBufferedImage(width,height,BufferedImage.TYPE_INT_RGB);canvas.print(bugimg.getGraphics());ImageIO.write(bugimg)这样保存完后在把图片缩放到以前的大小不知道这样行不
解决方案:
路过,顶
解决方案:
其实我是在开发一个swt的画图工具,如果缩小后再保存,会造成界面上刷新效果的。现在画图功能都已实现,就是不能获取到在画图工具中,滚动条里没有显示的区域的图片。

时间: 2024-09-16 04:33:42

在swt的canvas中,加载的图片大于窗口,并且在图片上画了一些图形,怎么在canvas中才能够获得完整的图片(目前只能获得当前窗口显示的区域的图片)的相关文章

仿微信中加载网页时带线行进度条的WebView的实现

finddreams:http://blog.csdn.net/finddreams/article/details/44172639  为了仿微信中加载网页时带进度条的WebView的实现,首先我们来看一下微信中的效果是什么样的:  明确需求之后,我们来开始动手做,首先我们来自定义一个带进度条的WebView,名字为ProgressWebView: <code class="hljs java has-numbering" style="display: block;

java基础-Java基础 canvas中加载图片问题

问题描述 Java基础 canvas中加载图片问题 public class GameCanvas extends Canvas implements Runnable{ boolean PaintState=true; Image soccerImage; public GameCanvas(){ try { soccerImage=ImageIO.read(new File(""/image/soccer.jpg""));} catch (IOException

winform的webbrowser显示的网页中加载flash会导致内存飙升怎么解决

问题描述 winform的webbrowser显示的网页中加载flash会导致内存飙升怎么解决 5C winform的webbrowser显示的网页中加载flash会导致内存飙升,报错如下: 问题签名: 问题事件名称: APPCRASH 应用程序名: iexplore.exe 应用程序版本: 9.0.8112.16421 应用程序时间戳: 4d76255d 故障模块名称: Flash32_11_2_202_235.ocx 故障模块版本: 11.2.202.235 故障模块时间戳: 4f9af5a

webview-在WebView中加载HTML页面时怎么显示进度对话框

问题描述 在WebView中加载HTML页面时怎么显示进度对话框 在程序中使用webview视图显示html页面.我想在页面加载时显示一个进度对话框.但是我加载页面后,没有显示进度对话框.我使用AsyncTask,进度对话框还是没有显示.我使用的以下代码: class DownloadAysnc extends AsyncTask<String String Void> { ProgressDialog progressDialog; @Override protected void onPr

MFC在登陆页面中 加一个显示验证码的控件应该加哪个?图片从一个网页中加载出来的

问题描述 MFC在登陆页面中 加一个显示验证码的控件应该加哪个?图片从一个网页中加载出来的 http://202.200.144.63/(gac14yvwcsjrzj45cx1fq4ed)/CheckCode.aspx 我想把这网页里的图片显示在登陆界面作为验证码,请问我该在对话框中加什么控件,我用的是下边的方法 CHtmlView* pView= (CHtmlView*)m_wndSplit.GetPane(0,1); pView->Navigate("http://hao.201201

c# winfrom项目,webbrower控件中加载页面过程中导致timer控件显示时间会停一小会

问题描述 c# winfrom项目,webbrower控件中加载页面过程中导致timer控件显示时间会停一小会 在C# Winfrom项目中,from窗体中,有一个webbrower控件用于加载网页,在webbrower控件内放了一个label控件(用于显示当前时间),还有一个timer控件(用于控制label显示时间,显示格式为:hh:mm:ss,). 目前遇到个问题,当webbrower控件用于加载数据量较大的网页时,在网页加载的过程中,会导致label控件显示时间中的秒时, 会停顿两至三秒

Windows7中加载Virtual PC映像技巧

笔者在Windows7中使用了Virtual PC来生成Windows XP的虚拟机,在使用过程中一直非常稳定.不过 ,每次需要使用到虚拟机中的文件的时候却都要开启Virtual PC通过网络共享来获得,显得极其不方便和 占用系统资源. 那么,有没有更加简化的方法来轻松取得虚拟机中的文件呢?其实,Windows7已经为我们提供了一种快 捷方法.我们只需在计算机中加载虚拟机的VPC映像就可以达到目的了. 首先,我们点击"开始-所有程序-管理工具-计算机管理"命令打开"计算机管理

Excel中加载宏动画教程

<Excel2003入门动画教程54.Excel中加载宏>. 演示动画 操作步骤 先将加载宏文档保存到相应的文件夹中,然后在Excel加载使用. 执行"工具加载宏"命令,打开"加载宏"对话框,点击"浏览"按钮,打开"浏览"对话框,选中需要加载的宏,依次确定返回. 注意:①如果是系统自身的加载,直接在"加载宏"窗口中选择相应的宏,确定即可.②如果你找不到加载宏文件夹,不能复制文件到其中,可以这样操

Android自带的webview中加载支付宝成功后没有回调,只停留在了支付宝支付成功页面

问题描述 Android自带的webview中加载支付宝成功后没有回调,只停留在了支付宝支付成功页面 我用Android自带的webview中加载支付宝页面去支付,在js里也配置了回调的return_url,为啥收不着回调呢?只是返回支付宝支付成功的链接,然后就停在支付宝支付完成的页面了. 程序里也设置了这个setJavaScriptEnabled(true); public boolean shouldOverrideUrlLoading(WebView view, String url),在