高质量完整屏幕截图 VB.Net

2023-11-29

我正在尝试向我的程序添加一项功能,以便在用户单击按钮时获取用户屏幕的完整屏幕截图。我让程序截取屏幕截图并打开文件对话框来保存它,保存有效。问题是,无论我如何保存屏幕截图,保存的图像都会出现显着的质量损失,并且文本和内容周围会出现像素化。这是一个大问题,因为我需要将图像保存为与用户屏幕上看到的完全一样,我根本不能有任何质量损失。我尝试将图像另存为 jpg 和 png,但两者都给我带来了质量损失。我想知道是否有人可以向我指出一些代码或方法,使我能够以与用户屏幕相同的质量保存屏幕截图。如果可能的话,我想将图像保存为 JPG 或 PNG 格式。任何帮助将不胜感激!


获取 Bitmap 格式的图像并将其另存为 bmp。

Private Function TakeScreenShot() As Bitmap

    Dim screenSize As Size = New Size(My.Computer.Screen.Bounds.Width, My.Computer.Screen.Bounds.Height)

    Dim screenGrab As New Bitmap(My.Computer.Screen.Bounds.Width, My.Computer.Screen.Bounds.Height)

    Dim g As Graphics = Graphics.FromImage(screenGrab)

    g.CopyFromScreen(New Point(0, 0), New Point(0, 0), screenSize)

    Return screenGrab

End Function
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

高质量完整屏幕截图 VB.Net 的相关文章

  • Outlook 加载项,无法读取未定义的属性“BeginRequestEventArgs”

    我使用 Visual Studio 开发了 Outlook 插件 我的插件有一个按钮 用于填充会议邀请正文中的详细信息并添加所需的与会者 这在 99 的情况下都有效 但是 时不时地它会给我下面的 JavaScript 错误 Uncaught
  • 有没有更简单的方法来处理复选框?

    在 vb net 中 我有一个包含一组四个复选框的表单 每个复选框都表示 选中时 用户想要向其订单添加特殊指令 代码如下所示 If SpecialInstruction1CheckBox Checked Then AddSpecialIns
  • 选项卡索引不适用于面板中的控件?

    我有一个 vb net Windows 窗体 其中包含大约 15 个组合框和 15 个文本框 以及其他几个控件 所有这些TextBoxes and ComboBoxes位于面板中 原因是我需要根据用户选择 输入的内容来调整控件的可见属性 因
  • 如何在VB函数中添加可选参数/默认值参数?

    如何在 Visual Basic 中创建一个包含可选参数的方法 Use the Optional关键字并提供默认值 可选参数必须是最后定义的参数 以避免创建不明确的函数签名 Sub MyMethod ByVal Param1 As Stri
  • vb6 中双精度计算的值不正确

    当在 vb6 中添加 2 个值时 我得到一些奇怪的行为 当在立即窗口中针对不同情况打印变量 sum 双精度型 时 如下所示 我得到的结果为 sum 0 sum 0 sum 0 sum 74 46 0 41 sum 74 87 sum 97
  • 使用 JSON.net 反序列化

    我对 json JSON net 等都很陌生 在这里阅读类似的问题后 我无法让我的代码工作 我的错误到底是什么 我监督了什么 出于测试目的是否可以跳过 链接 和 元 类 或者我是否必须定义每个属性 我得到以下 REST 输出 codes h
  • VB.NET - 有没有办法在委托中使用可选参数? (或者计划允许这样做?)

    据我了解 在 VS2008 附带的 VB 版本中 委托中不可能有可选参数 但是 我想知道将来是否有任何解决方法或计划将此功能合并到 VB NET 中 我想做的事 Public Delegate Function Deserializer O
  • 从 VB.NET 应用程序填写 PDF 表单

    我的任务是在 VB Net 中创建一个 Windows 应用程序 要求之一是从 MSSQL 数据库读取数据 并将某些值放入 PDF 表单中 如何使用 VB Net 将数据放入预先存在的 PDF 文件中 另外 是否可以将PDF文件作为资源放入
  • ArrayList 搜索 .net

    以下是存储在我的数组列表中的数据的格式 A Amsterdam B Brussels C Canada 如此等等 我想通过仅传递前几个字符直到 来搜索我的数组列表 因此 如果我有类似 AA Test 的东西 那么我只想通过 AA 来检查它是
  • 如何在 vb.Net 中设置默认表单?

    如何将第四个表单设置为在 Visual Studio 2008 中按 f5 时将运行的默认表单 因为表单 1 始终是第一个启动的 在解决方案资源管理器中右键单击您的项目 选择属性 选择应用程序选项卡 从 启动表单 下的下拉列表中选择您的表单
  • 在VB.net中动态添加用户控件

    我在 Vb net Windows 应用程序 中制作了自定义 UserControl 如何将其动态添加到表单中 UserControl 本质上只是另一个类 它继承自 Control 因此您可以使用控件执行各种操作 但除此之外它只是一个类 因
  • 您是否必须在 VB.NET 中显式创建表单实例? [复制]

    这个问题在这里已经有答案了 如果一个项目包含Form类 形式可以通过以下方式显示 Form1 Show 或者是否需要首先创建表单的实例 Dim frm As New Form1 frm Show 正如所建议的 使用表单名称使用默认实例 而第
  • WPF DataGrid 排序后滚动到顶部

    我有一个使用数据网格的 Net 4 0 WPF 应用程序 目前 按列排序后 网格的滚动位置保持在排序前的位置 对于此应用程序 我需要在任何排序后滚动到网格顶部 我尝试过像这样处理排序事件 Private Sub myDataGrid Sor
  • VB.net 应用程序保留以前的版本

    我有一个正在发布的 Visual Basic 项目 并且每次都会增加版本号 当我安装新版本时 它会打开 但一旦应用程序重新启动 它似乎就会恢复到以前的版本 我不知道为什么 尝试更新发布应用程序时所需的最低版本 转到应用程序属性 gt 发布
  • 装配和产品版本不匹配

    我正在尝试在 asp net 网站中使用 Ajax 控件工具包 我从之前的一个示例项目中复制了 dll 它有以下详细信息 Assembly Version 3 5 40412 0 File Version 3 5 40412 2 Inter
  • 查看 Excel 是否处于 .NET 中的单元格编辑模式的解决方法

    我有一个用 VB NET 编写的应用程序 它通过互操作与 Excel 进行交互 我最终遇到了单元格编辑模式的已知问题 请参阅 and 堆栈溢出 https stackoverflow com questions 221984 how to
  • 有没有办法使值只能由嵌套类 VB.NET 的父级访问?

    总的来说 根据OOP范式 我对封装的理解基本上是这样的 如果成员是私有的 则只能由类访问 如果成员受保护 则只能由基类和任何派生类访问它 如果成员是公开的 则任何人都可以访问 如果我有一个嵌套类 我可以声明一个属性只能由该类及其嵌套的父类访
  • 尝试添加注册表项时出现未处理的异常

    当我使用以下代码时 My Computer Registry LocalMachine OpenSubKey SOFTWARE Microsoft Windows CurrentVersion Run True SetValue Appli
  • 将应用程序从 Microsoft Access 迁移到 VB 或 C#.NET

    我目前正试图说服管理层需要将我们的应用程序之一移植到 NET 该应用程序已经发展成为 Access 中的一个庞然大物 SQL 后端 拥有 700 个链接表 650 个表单 子表单 130 个模块和 850 个查询 我几乎知道这样做的所有主要
  • 如何在 XAML/WPF 中存储和检索多个形状?

    使用 XAML WPF 做一些简单的事情似乎遇到了很多问题 我已经使用矩形和椭圆形等形状创建了一些基于 XAML 的图像来创建我需要应用程序的其他部分使用的图标 但我不能似乎找到了如何做到这一点 我似乎能够在资源字典中存储画布 但无法在任何

随机推荐

  • 基于 redshift 中的自表查找更新表

    我有下表 id email mgr email mgr id 1 email1 email2 2 email2 email3 3 email3 email4 我想通过将 mgr email 与电子邮件匹配来填充 id 列中的 mgr id
  • Android OutOfMemoryError 大图像

    对于尺寸较大的图像 不是按分辨率 该方法会抛出 OutOfMemoryError 我有 12 MP 照片 所有照片的大小都不同 1 5MB 2 5MB 3 2MB 4 1MB 等 所有照片的分辨率都是相同的 4000 x 3000 像素 r
  • 当传递给另一个对象时,谁应该对 IDisposable 对象调用 Dispose?

    是否有关于谁应该致电的指导或最佳实践Dispose 当一次性对象被传递到另一个对象的方法或构造函数时 这里有几个例子来说明我的意思 IDisposable 对象被传递到一个方法中 完成后是否应该释放它 public void DoStuff
  • 使用 AWK 打印 XML 元素

    如何使用 AWK 打印 XML 元素的内容 从开始标记到结束标记 例如 考虑以下 XML
  • 追溯性地向方法添加Java注释?

    有没有办法修改 class 文件以便向某些方法添加 Java 注释 基本上我想遍历 jar 文件中每个类文件的方法并注释某些方法 请注意 这不是在使用 jar 文件时的运行时 相反 完成后我想用注释修改类文件 我确实可以访问源代码 所以如果
  • 测试 JButton 时,我的 lambda 表达式有效,但 actionPerformed 无效

    我正在按照以下步骤第一次学习如何使用 Java Swingtutorial在YouTube上 我已经到达涵盖按钮的部分 并且一直按照代码进行操作 但是 在尝试测试按钮时 当我使用actionPerformed方法 我的按钮不会打印出这个词
  • Ruby on Rails:将 javascript 数据发送到 ruby​​ 控制器

    我想发送一个 javascript 数组以由我的控制器中的方法处理 我认为我这样做是错误的 我是一个彻底的 RoR jquery 和 ajax 菜鸟 这是我所拥有的 请给我一些指导 div class dataTable style wid
  • HTML5画布的大小和分辨率有什么关系

    有没有一种方法可以创建大尺寸但低分辨率的画布 我用语法声明画布
  • Android:fastScrollEnabled 起初不起作用

    OK I am working on an App that has a page with a listview and a edittext box at top As you type things into the edittext
  • 通过字符串名称动态实例化子组件 - ReactJs

    我有一个包含 React 组件字符串名称的数组 SampleWidget1 它由外部机制填充 在我的 DashboardInterface 组件中 我想使用该数组 渲染其中包含的组件 并将其显示在 DashboardInterface re
  • 分段错误 11 链接 os x 32 位汇编器

    更新 果然 这是最新版本的 nasm 中的一个错误 我 降级 并按照我接受的答案所示修复我的代码后 一切正常 感谢大家 我在 OS X 上的 32 位汇编程序中遇到了一个非常简单的程序的问题 首先 代码 section data hello
  • 未获取所需的 SOAP 请求 XML

    我正在开发一个使用 OCPP 开放充电点协议 的简单 php 客户端 我已经创建了客户端 这是来自我的代码的请求 XML
  • nodejs将gridFS中存储的图像显示为html

    嗨 我是 Nodejs 和 gridFS 的新手 我正在尝试将 gridFS 中存储的图像显示到我的 html 页面 目前 我正在使用这段代码 gfs exist options function err found if err retu
  • 返回一个空的 Observable

    功能more 应该返回一个Observable来自获取请求 export class Collection public more Observable
  • 如何将 QLineEdit 中的文本居中? [复制]

    这个问题在这里已经有答案了 我搜索过但找不到将 QLineEdit 内的文本居中对齐的解决方案 Example https i stack imgur com eps2z png 对齐 Qt 对齐 该属性保存行编辑的对齐方式 这里允许水平和
  • 带 *args 和 **kwargs 的默认参数

    In Python 2 x 我使用 2 7 这是使用默认参数的正确方法 args and kwargs 我发现了一个与该主题相关的问题 但那是为了Python 3 使用 args kwargs 和可选 默认参数调用 Python 函数 在那
  • 当应用程序停用时如何关闭BackgroundWorker线程?

    我创建线程BackgroundWorker 并且在循环中我每次都会检查是否CancellationPending是真是假 就像这样 public MainPage InitializeComponent bw new BackgroundW
  • 支持通配符 (*) 的 System.StringComparer

    我正在寻找一个快速的 NET 类 库 它有一个支持通配符 和区分大小写的 StringComparer 有任何想法吗 您可以将 Regex 与 RegexOptions IgnoreCase 结合使用 然后与 IsMatch 方法进行比较
  • Java的swing print()用法

    java的swing print 是否必须在EDT 事件调度线程 上调用 众所周知 执行需要花费很长的时间 而且在 EDT 上长时间运行的事情是很痛苦的 简短的回答是 不 打印不需要在 EDT 上进行 官方教程中对此进行了介绍 如何打印文本
  • 高质量完整屏幕截图 VB.Net

    我正在尝试向我的程序添加一项功能 以便在用户单击按钮时获取用户屏幕的完整屏幕截图 我让程序截取屏幕截图并打开文件对话框来保存它 保存有效 问题是 无论我如何保存屏幕截图 保存的图像都会出现显着的质量损失 并且文本和内容周围会出现像素化 这是