MSDN示例中缺少用于GDI打印的文件
Missing file from MSDN example for GDI printing
我正在尝试学习使用GDI
打印。
我已经在MSDN
中搜索了资源,并找到了这个例子。
我喜欢把打印放在单独的线程中的想法,使用GDI
比使用XPS API
更容易学习,所以我下载了这个例子。
在尝试编译它之后(我使用Visual Studio 2008
),我得到了这个错误:
fatal error C1083: Cannot open include file: 't2embapi.h': No such file or directory
根据这一点,我发现我并不是唯一一个面临这个问题的人。
尽管如此,我还是尝试过Google
上面的错误,发现这表明我没有最新的SDK
。
我在C:Program FilesMicrosoft SDKsWindows
中进行了搜索,发现了一个文件夹v6.0A
,这表明我没有安装最新的SDK
。
然而,在这里我发现了一篇帖子,有同样问题的人没有通过下载最新的SDK
来解决这个问题(尽管该帖子发布的年份是2006年,但当时文件也不见了,下载SDK也无济于事,为什么现在要做任何改变?)。
我的问题是:
-
有办法获得这个文件吗(如果我下载最新的
SDK
有错,请纠正我)? -
我认为这个文件必须与字体有关。有没有办法修改这个例子,这样我就不必使用那个文件了?
感谢您能够查看此线程并提供帮助。
致以最良好的问候。
T2Embapi.h由Windows SDK提供,它包含字体嵌入服务库的声明,用于处理嵌入的OpenType字体。很明显,你使用的SDK版本太旧了,没有。不确定需要哪个版本,我知道v6.0没有,但v7.1有。
由于该项目最初是一个XPS样本,因此存在一些草率之处。构建GDI样本实际上并不需要T2Embapi。您可以简单地从stdafx.h中删除#include。此外,在项目的Release配置设置中,还可以从链接器的Additional Dependencies设置中删除T2embed.lib和XpsPrint.lib。
您的问题是:
1。有没有办法获得这个文件(如果我下载最新SDK的错误,请纠正我)
- 最新版本的Windows SDK适用于Windows 8.1。适用于Windows 8.1的Windows软件开发工具包(SDK)。但是,我认为"t2embapi.h"已经包含了适用于Windows 7的Windows SDK,因为我在"C:\Program Files(x86)\Microsoft SDKs\Windows\v7.0A\Include"中找到了头文件
2。我认为这个文件必须与字体有关。有没有办法修改这个例子,这样我就不必使用那个文件了
- @Hans Passant已经回答了这个问题
- 如何循环打印顶点结构
- 为什么在popback()操作之后,它仍然打印完整的矢量
- 如何在c++中打印目录
- 有一个打印语句的函数是一种糟糕的编程实践吗
- 在线编译器中的分段C++没有打印消息
- 在C++中打印指向不同基元数据类型的指针的内存地址
- 这个指针和内存代码打印是什么?我不知道是打印垃圾还是如何打印我需要的值
- 如何将结构插入到集合中并打印集合的成员
- 在循环C++中指定字符串之后,不会打印该字符串
- 以螺旋方式打印矩阵的程序.(工作不好)
- 从控制台中删除最后打印的元素
- 如何使用Crypto++并为RSA返回可打印的字节/字符数组
- 如何仅使用对象名称打印特定于对象的成员
- 回溯C++不打印函数,因此文件
- 在一定长度后从数组中打印时缺少整数
- c++ GDI 打印导致系统冻结
- GDI打印API StartDoc函数给出的结果不一致
- 使用 GDI+ Graphics.DrawString 打印会产生垃圾字符
- MSDN示例中缺少用于GDI打印的文件
- 设置用于打印C++的 GDI 页面设置