问题标签 [metafile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2052 浏览

.net - 有没有像 Rammap 这样的开源软件?

我有一个一直在运行的服务器,系统制作元文件然后保存在内存中,这增加了我的 RAM 的使用率,所以我需要使用软件Rammap清空系统工作集,这是一个非常忙碌的例程。我必须每天做两次。我希望会有一个应用程序在给定时间段后自动清空系统工作集。经过漫长而深入的研究,我没有发现任何类似 Rammap 的东西,甚至没有一个库。

因此,任何人都知道通过使用我们将能够使应用程序自动清空系统工作集的任何方式。

0 投票
3 回答
4633 浏览

ms-word - 如何使“Windows 图元文件”成为 Word 2007 中的默认粘贴特殊选项?

我正在从 Visio 复制到 Word 2007 的大量内容。我发现 Windows 图元文件是可用的选择性粘贴选项中最节省空间的选择。如何使“Windows 图元文件”成为 Word 中的默认粘贴特殊选项?

0 投票
0 回答
974 浏览

c# - 从 Excel OLE 对象 C# 获取图像(元文件)

我正在处理对 OLE 对象执行一些操作的 Add in To Excel。它需要从工作表中以编程方式嵌入的 OLE 对象中获取一些数据(从数学类型转换为 TeX 语言)。到目前为止,我已经处理了大部分问题,例如将其添加到 Excel 工作表、从 Math Type OLE 对象中获取方程并设置方程。但还有最后一件事要做。

我需要提取带有由数学类型 OLE 对象设置的方程的图像的元文件。我想提取图像并将其保存为内存位图,然后在某种控件中显示它。问题是 - 我有从 OLE 对象获取元文件的代码:

我不知道我是否在做正确的事情来获取元文件,最重要的是(假设可以通过这种方式获取元文件):如何管理元文件以将图像数据作为位图保存在加载项的内存中.

我会非常感谢你的回答。

0 投票
1 回答
745 浏览

.net - 未绘制内存中的元文件

我需要创建一些内存中(不是基于文件的)元文件并显示它们。在OnPaint我的表单面板的处理程序中,我调用此代码:

但是,没有显示任何内容,无论我尝试在 中绘制什么metafile,它PhysicalDimension总是像 35x35 一样,考虑到单位是百分之一毫米,这太小了!

注意:当然这是一个人为的例子,我不会创建一个元文件只是为了用相同的方法绘制一些图形。我需要在我的应用程序中传递元文件。这只是一个简单的测试,以确保我能够使用该DrawImage方法绘制它。

0 投票
0 回答
618 浏览

c# - 将元文件或位图放入所需的图片框中

好吧,我有两个图片框。第一个用于元文件图像,第二个用于位图图像。当按下按钮后图片在剪贴板中时,我需要检查图片的格式并将其放入适当的图片框中。我做了下一步,但由于某种原因它不起作用。请帮帮我。

0 投票
1 回答
591 浏览

c++ - 绘制图元文件时如何覆盖它的钢笔和画笔?

在带有 GDI+ 的 C++ 中,我想绘制一个元文件,但要对其进行修改,使画笔和钢笔替换为我在程序中创建的。我希望使用这个画笔和这支笔来代替图元文件本身中指定的任何其他东西。

我怎么能做到这一点?

我尝试使用 EnumerateMetafile 和 PlayRecord,但我不知道如何控制正在使用的笔和画笔。我尝试了下面的代码来选择底层 HDC 的当前 Pen 和 Brush,但正如我所期望的那样它不起作用......

请问有什么建议吗?(我想避免重写对所有 EMF 记录类型的完整处理)

提前致谢。

暂定代码(按预期不做任何事情):

0 投票
1 回答
1392 浏览

delphi - 元文件剪裁矩形

以下代码会带来一些麻烦:

问题是剪切矩形绑定到显示分辨率,例如,如果您的屏幕有 1920 像素宽度,剪切矩形绑定到此值。

请注意,完全删除剪辑并将线条事件绘制到完整的底部矩形角不是问题。如果设置了剪切区域(例如,示例中显示的完整图元文件宽度/高度)然后绘制线条 -> 将其剪切到屏幕宽度/高度,则会出现问题。

我知道我可以使用例如打印机 dc 作为参考,这基本上可以解决问题,但有一些副作用(例如 gdi+ 使用这种 dc 绘制图元文件根本不起作用)。

任何人都知道如何“欺骗”系统以使这种奇怪的剪辑行为不再存在?

0 投票
1 回答
800 浏览

graphics - 来自 cgm 的网络图像

我正在尝试在我的网页中使用计算机图形元文件 (cgm)。我正在使用 PHP 和 Javascript。所以我试图找到文件的结构以便能够读取它并绘制它的图像。我也在寻找可以嵌入网页的开源软件,而不是独立的应用程序。我已经阅读了 Webcgm 上的所有论文,但我找不到我需要的东西。如果有人对如何实施 cgm 有任何建议或建议,那就太好了。提前致谢!

0 投票
1 回答
1915 浏览

delphi - 在 Delphi XE2 中将 Windows 图元文件转换为位图时文本模糊

我正在开发一个 Delphi XE2 中的程序,该程序需要能够将 Windows 增强的元文件转换为位图。以下代码用于执行转换:

对于某些图像文件,在原始图元文件中非常清晰的文本在最终位图中显得有些模糊。不幸的是,我无法在此处发布示例图像,因为我没有足够的声誉点,但是如果您比较以下问题中的两个图像,您可以看到我正在谈论的事情:

渲染图元文件时,文本太大

我已经在两台机器上进行了测试(都是 Windows 7;一台 32 位,另一台 64 位)。该问题仅出现在 64 位机器上;在 32 位机器上转换完全相同的图像文件会生成具有正常文本的位图。

到目前为止我尝试过的事情:

  • 将 32 位机器上存在但 64 位机器上不存在的所有字体安装到 64 位机器上。生成的位图中的文本仍然模糊。

  • 尝试使用 SynGdiPlus 库而不是上述代码执行转换。生成的位图中的文本仍然模糊。

  • 尝试在 EMF Explorer 中打开原始图像文件。无论 GDI+ 是否启用,那里显示的文本都是不模糊的。

有人对我如何解决这个问题有任何建议吗?

这是两张图片:

在 64 位机器上制作的版本:

在此处输入图像描述

在 32 位机器上制作的版本:

在此处输入图像描述

对于我正在处理的场景,我更喜欢在 32 位机器上制作的第二张图像。

0 投票
2 回答
1722 浏览

delphi - 将 TBitmap 存储在 TMetaFile 中以在 RTF 中平滑缩放会使图像大小翻倍

RTF 图像支持非常有限(Windows 支持,不仅在 Delphi 中),位图和元文件以外的其他格式也可以工作,但 RichEdit 控件不能正确显示。

我注意到的一件事是,当 Microsoft Word 图像被复制并粘贴到 RTF 中时,它可以平滑地缩放,而不是手动粘贴图像(作为位图)。原因是 Word 在内部保留 Metafile 格式的图像的缩放预览(以及原始图像),并且此缩放版本被复制并粘贴到 RTF 中,显然 RTF 在 RichText 编辑器中缩放时可以平滑地呈现 MetaFile 图像。

似乎是一个很好的解决方法,在 WPF 函数中实现嵌入 BMP 后,我注意到一个我无法解决的问题:生成的 WMF 是位图大小的两倍。看起来 WMF 存储了绘制缓冲区或图像的第二个副本。

编码:

我使用 TBitmap 作为 TGraphic 来调用它:

有人可以找到这种行为的解释吗?WMF 是否将绘画缓冲区与位图一起存储?如何预防?